A WireGuard egyszerre tud friss kézfogást és címet nem tartani, és ez az állapot koherens, nem ellentmondásos. A kézfogás a partner eseménye, a cím az interfészé, és az útvonal dönti el, melyik felső csatornán hagyja el a csomag a gépet. Három réteg, három tulajdonos, és bármelyik meghibásodhat, miközben a másik kettő egészségesnek látszik.

Egyetlen állapotként olvasni őket az, ami a kétperces diagnózist egy egész délutáni szolgáltatás-újraindításba fordítja.

A kézfogás a partner eseménye, nem címzési esemény

A WireGuard kézfogása azt bizonyítja, hogy a beállított partner érvényes kulccsal válaszolt, és hogy a munkamenet-kulcsok aktuálisak. Semmit nem mond az interfész helyi címéről, és arról sem, hogy mutat-e oda bármilyen útvonal. A címet egy segéd vagy hálózatkezelő osztja ki, míg a protokoll konfigurációja csak partnereket és kulcsokat nevez meg. A kettő összekeverése az, ahogy egy egészséges kézfogást működő alagútként olvasnak.

Ezért tud a wg show másodperces kézfogást jelenteni olyan interfészen, amely egyetlen alkalmazáscsomagot sem képes fogadni.

Az interfészt újra létrehozó kezelő eldobhatja a címet anélkül, hogy a partner konfigurációjához nyúlna, és a következő kézfogás azonnal sikerül, mert a kulcsok soha nem változtak. A sikeres kézfogásról szóló naplósor pontos és a hibára nézve irreleváns.

ObservationWhich layer it belongs toWrong conclusion it invites
Handshake a few seconds oldPeer and keysThe tunnel is usable for application traffic
Address present on wg0Interface configurationTraffic actually egresses through it
Route points at wg0Forwarding tableThe outer packet uses the intended uplink

Az interfész címének saját tulajdonosa van

Az alagúteszközön lévő cím jöhet egy segéd Address sorából, az interfészen futó DHCP-kliensből, vagy egy kezelő démontól, amely a csatlakozáskor hozza létre. Bármelyik is, az a komponens birtokolja a címet, és a saját logikája szerint állítja vissza vagy nem. A cím olvasása a tulajdonos megnevezése nélkül magára hagy azzal a kérdéssel, miért tűnt el.

Két tulajdonos egy interfészen a klasszikus hiba. Egy segéd és egy asztali hálózatkezelő indítása ugyanazon az eszközön versenyt okoz, amelyben az egyik eltávolítja azt, amit a másik épp beállított, a végpont pedig végig válaszol.

Válasszon egy tulajdonost, és hagyja a másik eszközt inkább megfigyelni, mint kezelni. Ezt a döntést érdemes leírni, mert a tünet hetekkel később jelenik meg, és véletlen címvesztésnek látszik.

Az útvonal választ felső csatornát, nem az interfész

Egy belső útvonal, amely a wg0 címre mutat, eldönti, hogy a forgalom belép az alagútba. Egy külön döntés küldi a titkosított külső csomagokat a partner felé, és egy több felső csatornával rendelkező gazdagépen ez a döntés a továbbítási táblából és a házirend-szabályokból jön. Egy Wi-Fi-roaming megváltoztathatja a külső útvonalat anélkül, hogy a belső címhez nyúlna.

Tehát egy működő alagút és egy elérhetetlen partner összeegyeztethető állapotok, akárcsak egy helyes partner és egy törött belső útvonal. A három megfigyelést együtt, ugyanabban a pillanatban kell venni, különben az összehasonlítás értelmetlen.

Hasonlítsa össze a három állapotot egyetlen menetben

Három csak olvasó parancs válaszol a három kérdésre abban a sorrendben, amely a leggyorsabban izolálja a hibát. Futtassa őket anélkül, hogy bármit változtatna köztük.

ip address show dev wg0
ip route get 10.80.0.1
wg show wg0 latest-handshakes transfer

Az első megmutatja, hogy az interfésznek egyáltalán van-e címe, a második pedig azt, hogy egy adott cél jelenleg melyik eszközt használná. A harmadik a legutóbbi kézfogás idejét és a bájtszámlálókat jelenti, és ez az egyetlen a háromból, amely a partnert írja le, nem a helyi gazdagépet.

Olvassa a számlálókat és az időbélyeget is. Az a kézfogás, amely folyamatosan megújul, miközben az átvitel lapos marad, azt jelenti, hogy a partner válaszol, de semmi hasznos nem halad át, ami az útvonalválasztásra vagy egy ACL-re utal, nem a kulcsokra. Az az időbélyeg, amely a cím jelenléte mellett leáll, inkább felfelé mutat. Mindkét olvasat ugyanabból a kimeneti sorból származik, és egyik sem látható, ha csak azt ellenőrzi, hogy létezik-e kézfogás.

Javítsa ki azt a konkrét állapotot, amely rossz, majd tesztelje újra az alkalmazást, ne az alagutat. A friss kézfogás a partnerről szóló bizonyíték, és a partnerről szóló bizonyíték nem bizonyítja, hogy a böngészője következő kérése címet, útvonalat és működő felső csatornát talál. A wg-quick kézikönyv egyértelműen megmondja, melyiket állítja be a segéd, és melyik tartozik a protokollhoz.

Kapcsolódó cikkek