OpenVPN Connect atmeta fragment: sutvarkykite profilio šaltinį
OpenVPN Connect nepalaiko fragment, todėl profilis, kuris išanalizuojamas, vis tiek gali nepavykti. Gaukite skirtą tam klientui arba sąmoningai pakeiskite serverio pusę.
Klaida pasirodo importuojant, prieš bet kokias derybas, ir nurodo direktyvą, kurios klientas atsisako priimti. OpenVPN Connect vykdo OpenVPN 3 bibliotekos kodą, kuris visai neįgyvendina bendruomenės kliento fragment parinkties. Tai paverčia tai dviejų galinių taškų suderinamumo klausimu, o ne paketo dydžio derinimo klausimu.
Ištrynus eilutę gaunamas failas, kurį klientas išanalizuos, ir serveris, kuris galbūt vis dar tikisi eilutės aprašyto formato. Pereikite tai nuo importavimo ekrano į išorę prieš ką nors keisdami.
Kur importavimas sustoja
Importuotojas analizuoja direktyvas prieš susisiekdamas su serveriu, todėl atmetimas ten yra vietinis sprendimas dėl sintaksės, o ne tinklo rezultatas, ir OpenVPN nepalaikomų direktyvų sąrašas fiksuoja tą patį apribojimą. Tai paaiškina, kaip vienas failas gali veikti bendruomenės kliente ir nepavykti Connect tame pačiame kompiuteryje. Perskaitykite pranešime direktyvos pavadinimą ir išsaugokite originalų failą, nes tas tekstas yra vienintelis įrodymas, kam klientas prieštaravo. Importavimo klaida ir ryšio laiko limitas kyla iš skirtingų etapų ir nusipelno skirtingų atsakymų.
Jei pranešimas įvardija fragment, lieka klausimas, ar serveris taip pat nuo jo priklauso. Atsakykite į tai prieš liesdami gautą profilį.
Ką fragment keičia bendruomenės kliente
Bendruomenės kliente direktyva įjungia pačios OpenVPN datagramų fragmentaciją, kuri padalija naudingąją apkrovą prieš jai pasiekiant išorinį IP sluoksnį. Ji egzistuoja tam, kad atlaikytų kelius, kuriuose metami dideli UDP datagramai, ir kad tunelis liktų naudingas ten, kur maršruto MTU aptikimu pasitikėti negalima. Tai ne sinonimas, reiškiantis sąsajos MTU sumažinimą, ir tai ne operacinės sistemos atliekama IP lygio fragmentacija. Klientas be šio mechanizmo jo neįgyja sumažindamas skaičių.
Kadangi nustatymas gyvena ir serverio konfigūracijoje, jo pašalinimas iš jūsų kopijos keičia tik jūsų pusę. Serveris galbūt vis dar tikisi partnerio, kuris supranta parinktį, o išanalizuotas profilis dar nėra sesija, kuri užmezgama. Šie du faktai paaiškina painią tarpinę būseną, kai pakeistas failas prisijungia ir tada užstringa.
Paprašykite šiam klientui skirto profilio
Švarus kelias yra antras profilis, dokumentuotas OpenVPN Connect, jei paslauga tokį skelbia. Daugelis tiekėjų taip daro, o skirtumas paprastai yra direktyvos, kurių jie neįtraukia, o ne galinis taškas, į kurį jie nukreipia. Paprašykite jo kliento pavadinimu, o ne aprašinėkite klaidą, nes pagalbos tarnyba gali daug greičiau priskirti profilį klientui, nei diagnozuoti nuluptą failą.
Jei serverį administruojate jūs, sprendimas platesnis už jūsų klientą. Išjungus fragmentaciją, tai paliečia kiekvieną partnerį, įskaitant tuos, kuriems jos reikėjo, kad išliktų prisijungę blogu keliu. Antro klausytojo ar antros konfigūracijos paskelbimas paveiktam klientui išlaiko esamus naudotojus veikiančius, kol naujesnis klientas gauna kažką, ką gali išanalizuoti. Kad ir kaip darytumėte, užrašykite, kuri konfigūracija aptarnauja kurį klientą, nes ta atitiktis kitaip greitai išnyksta.
Patikrinkite ryšį, ne tik importavimą
Sėkmingas importavimas įrodo tik tai, kad analizatorius priėmė failą. Nustatykite tunelį bendruomenės klientu valdomame kompiuteryje, naudodami tą patį profilį, ir skaitykite žurnalą apie transporto ir šifravimo derybas. Žemiau esančios komandos tai daro, kai darbalaukio programa netrukdo.
openvpn --config client.ovpn --verb 3
ip -4 addr show tun0
curl -sS --interface tun0 -o /dev/null -w '%{http_code}\n' --max-time 8 https://example.com/
Žurnalas parodo, kur bandymas sustojo: parinkties klaida pasirodo prieš bet kokius TLS mainus, o autentifikavimo ar šifravimo klaida – po jų. Jei tunelis pakyla, o užklausa vis tiek nepavyksta, problema persikėlė nuo suderinamumo prie maršrutizavimo. Palyginkite tai su Connect elgsena tame pačiame tinkle, prieš darydami kokias nors išvadas apie serverį.
Laikykite veikiantį profilį ir kliento versiją šalia pastabos. Būsima kliento versija gali pridėti direktyvos palaikymą, ir tai pakeičia atsakymą niekam neliečiant serverio.