Einhver segir að VPN-ið „blokki UDP“, og sú setning felur tvær gjörólíkar fullyrðingar. Önnur snýr að flutningnum sem aðgangsnetið getur séð, hin að pökkum forrits eftir að þau hafa verið afkóðuð inni í göngunni. Hægt er að sía dulkóðaða göngu utan frá án nokkurs lykils, og innra UDP-forrit getur mistekist af ástæðum sem hafa ekkert með síun að gera. Ákveddu hvaða fullyrðingu þú ert að prófa áður en þú safnar sönnunargögnum.

Tveir hausar, eitt orð

Í IPsec-uppsetningu með NAT-traversal er ytri pakkinn UDP, með vistfang á milli tveggja VPN-endapunkta, venjulega á porti 4500. Inni í honum ber dulkóðaða hleðslan allt sem göngin senda áfram, og það getur sjálft verið TCP eða UDP. Orðið UDP kemur því fyrir tvisvar, með ólíkri merkingu og ólíkri sýnileika.

Milliliggjandi net sér ytri hausinn og ekkert af þeim innri. Það getur leyft, mótað eða hent ytri straumnum, og þarf ekki að afkóða neitt til þess. Þessi ósamhverfa er öll ástæðan fyrir því að fullyrðingarnar tvær ruglast saman: sama orðið lýsir því sem netið síar og því sem forritið sendir. Skrifaðu lagið við hlið orðsins í hvert sinn sem þú skráir niðurstöðu, og ruglingurinn hverfur að mestu.

Innri hausinn verður aðeins sýnilegur við móttökuendapunktinn, eftir afkóðun. Frá þeim punkti er pakkanum sent áfram eins og hver öðrum, háð leiðum, stefnu og eigin síun endapunktsins. Þetta eru aðskildar ákvarðanir sem ólík tæki taka.

Hvað netið getur enn séð

Dulkóðun felur hleðsluna og innri flutningshausinn, ekki þá staðreynd að straumur er til. Vistföng endapunkta, port, pakkastærðir og tímasetning verða sýnileg, og það nægir til að flokka umferð með reiknireglum eða loka á tiltekinn áfangastað.

sudo tcpdump -ni eth0 'udp port 4500'
sudo tcpdump -ni tun0 'udp port 5201'

Fyrsta upptakan sýnir ytri strauminn á líkamlega viðmótinu, og sú önnur sýnir innri strauminn á viðmóti ganganna. Að keyra báðar samtímis svarar spurningunni beint: ef ytri straumurinn er til og sá innri ekki, sendi forritið aldrei neitt inn í göngin. Ef báðir eru til og ekkert kemur til baka, er vandamálið handan ganganna, á áfangastaðnum eða á leiðinni til baka.

RFC 3948 skilgreinir ytri UDP-hjúpunina, og ESP-forskriftin skilgreinir hina vernduðu uppsetningu inni í henni. Hvorugt skjalið lofar því að aðgangsnet láti ytri strauminn í gegn, og þess vegna er þess virði að keyra aðgengispróf á ytri fjórlingnum áður en nokkur kenning um þann innri er mótuð. Lokaður ytri fjórlingur framleiðir göngu sem myndast aldrei, ekki göngu sem myndast og missir síðan eitt forrit.

Hvers vegna eitt UDP-forrit mistekst inni í vinnandi göngu

Ganga sem flytur vefforrit en ekki UDP-forrit hefur nokkrar trúverðugar skýringar, og síun netveitunnar á innri samskiptareglunni er ekki sú fyrsta. Algengast er þekja: forritin tvö fara ekki bæði inn í sömu gönguna, því leiðin að UDP-áfangastaðnum vantar eða reglur um skipta göngu hjá biðlarans útiloka hana.

Sú önnur er endapunkturinn. VPN-þjónn sem leyfir samskiptareglulista, eldveggur á áfangastað, eða þjónusta sem hlustar aldrei á væntu porti munu öll framleiða tímanotkun sem lítur nákvæmlega eins út og netloka.

Sú þriðja er pakkastærð. UDP-forrit senda oft stærri dagagröm en vefbeiðni, og hjúpunin minnkar nothæfa MTU, svo eftir árangursríka handabandi getur kyrrð fylgt á fyrstu hleðslu í fullri stærð. Auðvelt er að lesa þetta mynstur rangt sem loku, því litlu pakkarnir komast í gegn og þeir stóru hverfa. Fljótleg MTU-prófun leysir málið á undir mínútu, og svarið er yfirleitt minni hleðsla eða leiðrétt MSS frekar en netsía.

ping -M do -s 1400 -c 2 10.60.0.20
iperf3 -u -c 10.60.0.20 -p 5201 -b 1M -t 5

Fyrsta skipunin prófar hvort stór pakki komist leiðina með sundrun slökkt, sem afhjúpar MTU-vandamál fljótt. Sú önnur sendir litla, takmarkaða UDP-strauma og greinir frá tapi og jitter. Straumur sem byrjar og stöðvast síðan bendir á stærð frekar en loku.

Tilkynntu lagið, ekki samskiptaregluna

Skrifaðu niðurstöðuna í einni af þremur myndum: ytri afhending mistókst, innri framsending mistókst, eða forritið mistókst. Hver þeirra hefur annan eiganda, og að blanda þeim sendir miðann til rangs teymis.

Að breyta staðbundnu porti getur ekki búið til samsvarandi hlustanda hinum megin, svo lausn á biðlarahlið sem virðist hjálpa er yfirleitt sönnun þess að upprunalegi áfangastaðurinn hafi verið rangur. Á sama hátt sannar uppgefið varasnið eitthvað um aðgengi og ekkert um hvort forritið sé rétt stillt.

Haltu ályktun aðskilinni frá athugun. Umferðargreining getur bent á hvað straumur er án þess að afkóða hann, og það er gagnleg niðurstaða, en það er ekki sama fullyrðing og að lesa innri hausinn. Segðu hvoru þú hefur í raun.

Tengdir greinar