Pievienojiet noklusējuma maršrutu caur tuneli, un paša tuneļa paketes to sekos. Tad tabulā būs noteikums, kas pats sevi uzveic. Šifrētais savienojums ar serveri mēģina ceļot tā savienojuma iekšienē, kuru tas mēģina izveidot.

Divi mehānismi novērš šo cilpu. Viens ir redzams maršrutēšanas tabulā, otrs dzīvo lietojumprogrammas iekšienē.

Iekšējā un ārējā plūsma ir atšķirīgi lēmumi

Lietojumprogrammas pakete iekļūst virtuālajā saskarnē un tiek iekapsulēta. Rezultāts ir jauna pakete, kas adresēta servera publiskajai adresei. Šai paketei ir vajadzīgs maršruts fiziskajā tīklā, jo nekas no tās nedrīkst iekļūt tunelī.

Abi ir maršrutēšanas lēmumi, un tikai pirmais pieder tunelim. Kad klients instalē noklusējuma maršrutu, kas aptver arī serveri, arī ārējā pakete tiek notverta.

Simptomi ir tūlītēji un pilnīgi. Rokasspiediens pabeidzas un pēc tam nekas neplūst, vai arī savienojums pārtrūkst tajā mirklī, kad maršruts tiek instalēts. Abos gadījumos keepalive vairs nevar izkļūt.

Pirmais variants: resursdatora maršruts galapunktam

Tiešā pieeja pievieno maršrutu servera adresei caur sākotnējo vārteju. Tas aizņem vienu rindu. To redz ikviens, kas lasa tabulu. To ir arī viegli izskaidrot izmaiņu ierakstā.

Tā vājums parādās, kad mainās pamatā esošais ceļš. Saglabātais maršruts nosauc vārteju un saskarni no vecā tīkla. Pēc Wi-Fi maiņas šī vārteja var nebūt, un maršruts paliek, izskatās pareizi un neko nedara.

# before the tunnel: which path reaches the endpoint?
ip route get 198.51.100.7

# pin it through the current gateway
ip route add 198.51.100.7/32 via 192.168.1.1 dev wlan0

# after the tunnel is up, confirm the pin survived
ip route get 198.51.100.7

Resursdatora nosaukums to padara grūtāku. Ja galapunkts ir nosaukums, kas atrisinās uz vairākām adresēm, izņēmumam jāaptver faktiski izmantotā adrese. Vēlāks vaicājums var atgriezt kaut ko tādu, ko maršruts nekad nav aptvēris.

Otrais variants: aizsargāt ligzdu

Otra pieeja nekad neaiztiek maršrutēšanas tabulu. Klients atzīmē vai aizsargā ligzdu, kas pārnēsā tuneli, tāpēc operētājsistēma saskaņā ar politiku sūta šīs ligzdas plūsmu ārpus tuneļa. Android šo mehānismu nodrošina tieši VPN lietojumprogrammām. Darbvirsmas klienti realizē ekvivalentus ar ugunsmūra atzīmēm vai piesaistes ierīcei izsaukumiem.

Priekšrocība ir tā, ka izņēmums seko savienojumam, nevis saglabātai vārtejai. Tīkla maiņa pārraksta pamatā esošo ceļu, un aizsargātā ligzda pārvietojas līdzi, jo tā nekad nav bijusi piesaistīta adresei. Maršrutēšanas tabula paliek tīra.

Cena ir redzamība. Nekas maršrutēšanas tabulā nerāda izņēmumu, tāpēc recenzents, kurš meklē resursdatora maršrutu, neko neatrod un var secināt, ka dizains nav drošs. Aizsardzība dzīvo klienta kodā un politikas noteikumos, ko šis kods instalē.

Izvēle starp abiem

Izvēlieties ligzdas līmeņa mehānismu, ja klients to atbalsta, jo tas pārdzīvo tīkla izmaiņas, kas salauž piesaistīto maršrutu. Izvēlieties resursdatora maršrutu, ja izņēmumam jābūt redzamam citiem rīkiem, vai ja klients nepiedāvā neko labāku.

Neviens mehānisms neatceļ vajadzību, lai servera adrese vispār būtu sasniedzama. Privātai vārtejai ir publiska klausīšanās adrese, un tieši šai adresei jāpaliek ārpus tuneļa. Iekšējie tīkli aiz tās kļūst sasniedzami tikai pēc tam, kad tunelis pastāv.

Lai ko jūs izvēlētos, turiet to pie komponenta, kuram pieder tunelis. Ar roku pievienots klejojošs resursdatora maršruts darbojas līdz nākamajam tīklam, un tad tas kļūst par rītdienas noslēpumaino pārtraukumu.

Saistītie raksti