Ang pagtrato sa tun0 at sa protocol ng VPN bilang isang bagay ay nagdadala ng mga tao sa maling log. Ang interface ay isang lokal na hangganan kung saan ang isang programa sa espasyo ng gumagamit ay nagpapalitan ng mga packet ng IP sa kernel. Ang protocol ay ang ginagawa ng programang iyon sa mga packet kapag mayroon na ito: transport, pagpapatotoo, pag-encrypt at isang kapares. Ang paglikha ng aparato ay hindi pumipili ng alinman sa mga iyon.

Dalawang bahagi, isang landas ng packet

Nagsusulat ang kernel ng packet ng IP sa aparato, at binabasa ito ng programa mula sa isang deskriptor ng file. Sa kabilang direksyon nagsusulat pabalik ang programa ng packet at ang kernel ay nagruruta nito na parang dumating ito sa isang tunay na interface. Ang TUN ay nagdadala ng IP, samantalang ang TAP ay nagdadala ng mga frame ng Ethernet. Ang pagbasa ng packet sa hangganang iyon ay nagpapakita ng pag-frame, at iyon mismo ang layunin ng aparato.

Ang lahat ng lampas sa hangganang iyon ay gawain ng programa. Dalawang programa ay maaaring gumamit ng parehong konsepto ng interface at gumawa ng lubos na magkaibang bagay sa mga packet. Ang aparato mismo ay walang opinyon sa susunod na mangyayari. Ang deskriptor ng file ang tanging hawakan ng programa sa panig ng kernel.

Lumikha ng aparato, pagkatapos ay pagmasdan ang hangganan

Lumikha ng aparato nang sinasadya kapag sinusubukan mo ang hangganan. Ang isang matatag na aparato ay nananatili pagkatapos ng prosesong lumikha nito, na kapaki-pakinabang para sa mga eksperimento at karaniwang pinagmumulan ng kalituhan mamaya. Suriin ang mga flag at ang may-ari bago sisihin ang VPN.

sudo ip tuntap add dev tun9 mode tun user alice
ip -d link show tun9

Ipinapakita ng detalye ng link ang uri ng aparato at ang nakaugnay na may-ari. Kung walang prosesong nagbubukas nito, ang mga packet na isinusulat dito ay hindi napupunta kahit saan. Ang aparatong walang nakaugnay na proseso ay maaaring magmukhang maayos sa listahan ng link habang wala itong pinapadaan.

Ano ang hindi maipapangako ng pangalan ng interface

Walang sinasabi ang pangalan ng interface tungkol sa pag-encrypt o pagpapatotoo. Ang isang programa ay maaaring magbalot ng mga packet sa TLS, sa sariling protocol, sa IPsec o sa wala. Ang pagpili ng TUN sa halip na TAP ay nagbabago ng pag-frame sa hangganan, hindi ang disenyo ng seguridad. Ang pagpili ng pag-frame ay totoo, at mas maliit ito nang malaki kaysa sa tanong ng seguridad.

Gumagana rin nang pareho ang pagtuklas: nakikita ng tagamasid ang panlabas na protocol sa kawad, hindi isang tatak na nagsasabi kung aling lokal na aparato ang gumawa nito. Ang isang tunel na mukhang ibang bagay ay ginagawa iyon dahil sa panlabas nitong protocol, hindi dahil sa pangalan ng interface nito. Hindi makikita ng tagamasid kung aling lokal na aparato ang gumawa ng packet, kung paano lamang mukha ang packet. Paghiwalayin ang dalawang tanong na iyon kapag naghahambing ng mga produkto, dahil ang isang sagot ay hindi kailanman nagpapahiwatig ng isa pa.

Itugma ang pagwawasto sa yugtong nabibigo

Paghiwalayin ang mga yugto ng pagkabigo kapag may nasira. Ang nawawalang aparato, error sa pahintulot at tinanggihang pag-login ay nagbibigay ng magkaibang ebidensiya at magkaibang pagwawasto. Basahin muna ang lokal na kalagayan, pagkatapos ang log ng programa mismo, pagkatapos ang pananaw ng kapares. Basahin ang tatlo bago magbago ng kahit ano.

ip -d link show tun0
journalctl -u openvpn-client@corp --since '10 min ago'

Kung umiiral ang aparato at may prosesong humahawak dito, gumagana ang lokal na hangganan at ang problema ay mas malayo pa. Kung nawawala ang aparato, walang anumang pagsusuri ng kredensyal ang makakatulong. Ang yugtong kaya mong pangalanan ay yugtong kaya mong subukan. Ang dokumentasyon ng TUN/TAP ay naglalarawan ng hangganan at ng modelo ng aparato.

Kaugnay na mga artikulo