Notandi segir innra forritið virka af einni vél og mistakast af annarri, á meðan ping sem þú keyrir frá gáttinni heppnast í báðum tilvikum. Með nokkrum göngum með sama kostnað er þetta ekki mótsögn. Hvert flæði er sett á sitt næsta stökk, svo prófið þitt og lota notandans gætu einfaldlega notað ólíkar leiðir. Ferillinn hér að neðan endurgerir þetta val áður en nokkuð er breytt.

Eitt ping, nokkrar mögulegar leiðir

Þegar leið hefur fleira en eitt næsta stökk á sama kostnaði verður beininn að velja eitt fyrir hverja pakkann. Flest útfærslur hasha reitum úr pakkanum, venjulega uppruni og ákvörðunarstaður ásamt samskiptareglunni og portunum, svo svör haldist á sömu leið. Ólík forrit, jafnvel ólíkar tengingar frá einu forriti, framleiða ólík hösh.

Þess vegna sannar greining frá gáttinni svo litlu. Próf gáttarinnar sjálfrar hefur sín eigin netföng og port, og þar með sitt eigið hash. Það getur lent á heilbrigðu göngunni á meðan notandinn lendir ávallt á þeirri skemmtu.

Hvernig kerfið velur næsta stökk

Endurgerðu valið í stað þess að giska á það. Spurðu kjarnann hvaða leið hann myndi nota fyrir sama uppruna og ákvörðunarstað og lotan sem mistekst. Sú leit inniheldur reiti sem venjuleg leit að ákvörðunarstað hunsar. Keyrðu hana líka frá virkum biðlara og berðu saman svörin tvö:

ip route get 10.20.5.7 from 10.20.0.14

Nýrri útgáfur af iproute2 taka einnig við samskiptareglunni og ákvörðunarportinu, sem skiptir máli þegar hashið inniheldur þau. Berðu þann úttak saman við sömu leit frá virkum biðlara, og munurinn er sönnunin sem þig vantaði.

ObservationLikely causeFirst check
Ping works, application failsA different flow hash selects another tunnelPer-flow lookup from the client's address
Some users fail, others do notOne tunnel lacks a prefix or selectorCompare both tunnels' installed routes
Fails only at larger sizesTunnels have different effective MTUProbe the same size over each path
Fails after a reconnectStateful asymmetry between pathsSession state on both gateways

Fylgdu flæðinu sem mistekst, ekki leiðatöflunni

Leiðataflan listar bæði göngin og virðist rétt samkvæmt skilgreiningu. Spurningin er hvað hvert gang gerir við pakkann eftir að hann er valinn. Staðfestu að bæði beri sömu varðveittu forskeytin, sama framsendingarheimild og afturleið sem nær til sama biðlara.

Veittu athygli stöðutækjum í miðjunni. Ef beiðni fer út um eitt gang og svarið kemur til baka um hitt, mun eldveggur eða NAT sem sá upprunalega flæðið aldrei henda henni. Bæði göngin senda umferð rétt áfram, og tengingin mistekst samt.

Athugaðu einnig MTU á hverri leið. Leið með aukinni innpakningu minnkar nothæfa stærð, og flutningur sem heppnast um eitt gang stöðvast á hinu nákvæmlega við þá stærð þar sem minna gangið brotnar.

Berðu saman eina leið í einu

Þar sem hönnunin leyfir viðhald skaltu taka eitt gang úr notkun og endurtaka verkefni notandans. Ef gallinn hverfur tilheyrir vandamálið leiðinni sem þú fjarlægðir, og næsta skref er að bera saman uppsetningu hennar við nágrannann í stað þess að skoða leiðatöfluna aftur.

Berðu saman raunverulega forritið, ekki endurtekin ping. Skráðu hvort gallinn fylgir tilteknu næsta stökki, pakkastærð eða umskiptum eftir endurtengingu, því þessi þrjú mynstur benda á ólíkar viðgerðir.

Að lokum skaltu skrifa niður hvers vegna leiðirnar eru taldar jafngildar og hvernig galli eigi að taka eina þeirra úr notkun. Fjölleið er aðeins örugg þegar leiðirnar eru í raun skiptanlegar, og það er hönnunarfullyrðing sem er þess virði að staðfesta frekar en að gera ráð fyrir.

Tengdir greinar