Trakti tun0 kaj VPN-protokolon kiel unu aferon sendas homojn al la malĝusta registro. La interfaco estas loka limo, kie programo en uzantspaco interŝanĝas IP-paketojn kun la kerno. La protokolo estas tio, kion tiu programo faras kun la paketoj post kiam ĝi havas ilin: transporto, aŭtentikigo, ĉifrado kaj kunulo. Krei la aparaton elektas neniun el tiuj.

Du komponantoj, unu paketa vojo

La kerno skribas IP-paketon en la aparaton, kaj la programo legas ĝin el dosiera priskribilo. En la alia direkto la programo skribas paketon reen kaj la kerno enkursigas ĝin kvazaŭ ĝi alvenus sur reala interfaco. TUN portas IP, dum TAP portas Ethernet-kadrojn. Legi paketon ĉe tiu limo montras la kadrigon, kaj ĝuste por tio la aparato ekzistas.

Ĉio preter tiu limo estas afero de la programo. Du programoj povas uzi la saman interfacan koncepton kaj fari tute malsamajn aferojn kun la paketoj. La aparato mem havas neniun opinion pri tio, kio okazos poste. La dosiera priskribilo estas la sola tenilo, kiun la programo havas ĉe la kerno-flanko.

Kreu la aparaton, poste observu la limon

Kreu aparaton intence, kiam vi testas la limon. Daŭra aparato postvivas la procezon, kiu kreis ĝin, kio utilas por eksperimentoj kaj poste estas ofta fonto de konfuzo. Kontrolu la flagojn kaj la posedanton antaŭ ol kulpigi la VPN-on.

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

La detaloj de la ligilo montras la tipon de la aparato kaj la ligitan posedanton. Se neniu procezo tenas ĝin malfermita, la paketoj skribitaj en ĝin iras nenie. Aparato sen ligita procezo povas aspekti sana en ligila listo dum ĝi trapasigas nenion.

Kion la interfaca nomo ne povas promesi

La interfaca nomo diras nenion pri ĉifrado aŭ aŭtentikigo. Programo povas envolvi la paketojn en TLS, en propran protokolon, en IPsec aŭ en nenion entute. Elekti TUN anstataŭ TAP ŝanĝas la kadrigon ĉe la limo, ne la sekurecan dezajnon. La elekto de kadrigo estas reala, kaj ĝi estas multe pli malgranda ol la sekureca demando.

Detektado funkcias same: observanto vidas la eksteran protokolon sur la drato, ne etikedon dirantan, kiu loka aparato produktis ĝin. Tunelo, kiu aspektas kiel io alia, faras tion pro sia ekstera protokolo, ne pro sia interfaca nomo. Observanto ne povas vidi, kiu loka aparato produktis paketon, nur kiel la paketo aspektas. Tenu tiujn du demandojn aparte, kiam vi komparas produktojn, ĉar unu respondo neniam implicas la alian.

Adaptu la ripardon al la malsukcesa etapo

Apartigu la etapojn de malsukceso, kiam io rompiĝas. Mankanta aparato, permesseraro kaj rifuzita ensaluto donas malsamajn pruvojn kaj malsamajn ripardojn. Legu unue la lokan staton, poste la propran registron de la programo, poste la vidpunkton de la kunulo. Legu ĉiujn tri antaŭ ol ŝanĝi ion.

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

Se la aparato ekzistas kaj procezo tenas ĝin, la loka limo funkcias kaj la problemo estas pli fore. Se la aparato mankas, neniu kvanto da legitimila kontrolado helpos. Etapo, kiun vi povas nomi, estas etapo, kiun vi povas testi. La dokumentaro pri TUN/TAP priskribas la limon kaj la aparatan modelon.

Rilataj artikoloj