Dvipusiškumo neatitikimas VPN šliuzo prievade: skaitykite abu galus
10/100 prievadas, kuris derasi dėl greičio, bet ne dėl dvipusiškumo, sukelia klaidas esant apkrovai. Perskaitykite veikimo režimą abiejuose galuose, tada palyginkite laiku pagrįstus skaitiklius.
Failo kopijavimas per tunelį sustoja sekundei, tęsiasi, o VPN žurnalai nieko nerodo. Programėlė kaltina tinklą, tinklas kaltina programėlę, o komutatoriaus prievadas įjungtas jau vienuolika mėnesių. Šis vadovas prasideda nuo sustojimo ir juda į išorę link fizinės jungties: ką prievadas iš tikrųjų daro, ką daro tolimas galas ir ką skaitikliai darė, kol stebėjote. Verta tai padaryti prieš kam nors palietus dvipusiškumo nuostatą.
Pradėkite nuo sustojimo, o ne nuo prievado
Apibūdinkite simptomą taip, kad būtų galima patikrinti. Maždaug sekundės sustojimas masinio perdavimo metu yra kita problema nei jungtis, kuri atsistato, o pauzė kartą per valandą skiriasi nuo pasikartojančios kas kelias sekundes. Užsirašykite apkrovą, kryptį ir apytikslį intervalą.
Tada atkurkite tai stebėdami sąsają. Fizinė problema pasireiškia skaitiklių judėjimu paveiktos apkrovos metu, o problema, kuri visiškai nejudina skaitiklių, greičiausiai yra aukščiau jungties sluoksnio. Stebėkite minutę, o ne sekundę, nes šie defektai dažnai reikalauja nuolatinio srauto, kol pasireiškia. Stebėjimas tuščiosios eigos metu nieko neįrodo apie jungtį, kuri blogai elgiasi tik esant apkrovai.
Tai svarbu, nes dvipusiškumo neatitikimas turi parašą: klaidos atsiranda tik esant apkrovai, srauto kryptimi, o maži ping ir interaktyvios sesijos lieka nepriekaištingi. Jei tuščiosios eigos srautas irgi nepavyksta, pirmiausia ieškokite kitur.
Perskaitykite veikimo režimą abiejuose galuose
Išsaugota konfigūracija nėra veikimo būsena. Prievadas gali būti sukonfigūruotas automatinėms deryboms ir atsidurti pusiniame dvipusiškume, arba sukonfigūruotas fiksuotam greičiui, kuriam kitas galas niekada nebuvo pritaręs. Perskaitykite, ką jungtis šiuo metu daro abiejose pusėse.
ethtool eth0 ethtool -S eth0 | grep -iE 'error|drop|collision|fcs' ip -s link show eth0
Užrašykite greitį, dvipusiškumą ir ar įjungtos automatinės derybos, tada gaukite tuos pačius tris faktus iš gretimo komutatoriaus arba paslaugų teikėjo prievado. Vienas galas pats savaime nieko nesako, nes neatitikimas yra santykis, o ne nuostata. Sudėkite abi eilutes greta biliete, su laiku, kai jas skaitėte. Pusė šio pratimo vertės yra turėti abu rodmenis vienoje vietoje.
Jei negalite perskaityti tolimo galo, negalite to diagnozuoti. Paprašykite savininko veikimo režimo ir skaitiklių arba susitarkite dėl prieigos prieš pradėdami keisti savo pusę.
Kaip atrodo 10/100 pusinio dvipusiškumo atvejis
10/100 varinėse jungtyse automatiškai besiderantis galas gali aptikti priverstinai nustatyto partnerio greitį, neišsiaiškinęs jo dvipusiškumo nuostatos. Lygiagretus aptikimas nustato greitį iš signalo, o dvipusiškumas laikomas prielaida, o ne deramasi, todėl viena pusė gali likti pusiniame dvipusiškume, kol kita dirba visu.
Cisco automatinių derybų gairės paaiškina būtent tą atvejį. Tai nėra argumentas išjungti derybas visur, ir jis nieko naudingo nesako apie gigabitį varį, kur dvipusiškumas fiksuotas ir automatinių derybų reikia, kad jungtis apskritai atsirastų.
Stebimi įrodymai yra klaidų mišinys, egzistuojantis tik viena kryptimi: FCS arba CRC klaidos viso dvipusiškumo pusėje, susidūrimai arba vėlyvi susidūrimai pusinio dvipusiškumo pusėje, ir pralaidumas, kuris sugriūva esant apkrovai, o delsa tuščiosios eigos metu lieka normali. Ta asimetrija ir yra parašas. Tiesiog per daug apkrauta jungtis blogėja abiem kryptimis ir visą laiką.
Keiskite abu galus kartu, su keliu atgal
Dvipusiškumo pataisa yra suderintas pakeitimas, o ne vietinis. Savo pusės vertimas be tolimo galo sutikimo yra būdas, kuriuo veikianti jungtis tampa sugedusia, o tai, kad CLI priima komandą, įrodo tik tai, kad sintaksė buvo teisinga.
sudo ethtool -s eth0 speed 100 duplex full autoneg off ethtool eth0
Prieš paleisdami ką nors panašaus, patvirtinkite, kad platforma palaiko šį derinį ir kad tolimas galas bus pakeistas tame pačiame lange. Išsaugokite nepriklausomą būdą administruoti įrenginį, nes prievadas, kurį ruošiatės keisti, gali būti tas, kuriuo eina jūsų valdymo sesija.
Daugelyje šiuolaikinių jungčių teisingas atsakymas yra palikti automatines derybas įjungtas abiejuose galuose, o ne ką nors versti. Vertimas yra konkrečios technologijos konkretaus neatitikimo vaistas, o ne bendras pagerinimas. Būtent gigabitiam variui reikia automatinių derybų, kad jungtis atsirastų, todėl 10/100 patarimas nepersikelia.
Patvirtinkite, kad skaitikliai pajudėjo į gerąją pusę
Po pakeitimo dar kartą perskaitykite veikimo būseną abiejuose galuose ir patvirtinkite, kad jos sutampa. Tada paleiskite tą pačią apkrovą, kuri sukėlė sustojimą, ir palyginkite skaitiklių skirtumus, o ne viso gyvavimo sumas, nes suma, kaupiama metus, negali pasakyti, kas įvyko per paskutines dešimt minučių.
ethtool -S eth0 | grep -iE 'error|drop|collision|fcs' ip -s link show eth0 ping -f -c 200 10.90.0.1
Jungtis be naujų klaidų esant tokiai pačiai apkrovai yra įrodymas, kurio jums trūko. Jungtis, kuri vis dar klysta, arba ta, kurioje skaitikliai apskritai nejudėjo, nukreipia jus prie kitos ribos, o ne giliau į dvipusiškumo ginčą. Abu rezultatai yra pažanga, ir tai daugiau, nei konfigūracijos failas gali duoti. Nepraleiskite antrojo rodmens vien todėl, kad pirmasis atrodė teisingas.
Įrašykite skaičius prieš ir po į bilietą su laiko žymomis. Būtent šis įrašas paverčia «VPN jaučiasi geriau» kažkuo, kuo gali remtis kitas inžinierius.