Защо тунелът Azure OpenVPN пада приблизително на всеки шестдесет секунди
Тунел, който пада на всеки шестдесет секунди, е завършил ръкостискането си, така че нищо не го блокира. Прочетете първо причината за прекъсването, после сравнете двата таймера keepalive.
Тунелът завършва ръкостискането си, пренася трафик около минута и след това се свързва отново. Тази последователност изключва обичайния заподозрян, защото защитна стена, която блокира порта, щеше да спре ръкостискането, а не сесията. Това, което имате, е разногласие за жизнеността: едната страна е решила, че другата е замлъкнала, и е съборила работещ тунел. Редът в журнала казва коя страна, и той определя поправката.
Прочетете този ред, преди да пипате какъвто и да е таймер.
Мити: нещо по пътя блокира тунела
Ако портът беше блокиран, връзката щеше да се провали в началото и да остане провалена. Повтарящият се цикъл означава, че контролните съобщения текат, сесиите се установяват и нещо по-късно в разговора постоянно изтича. Блокирането създава тишина, а това създава ритъм.
Ритъмът е полезната следа. Таймерите го създават; загубата на пакети рядко.
Прочетете причината за прекъсването преди таймера
OpenVPN назовава причината си и всяко име сочи към различна подсистема. Session invalidated: KEEPALIVE_TIMEOUT е изтичащ таймер, затова сравнете стойностите ping и ping-restart от двете страни. AUTH_FAILED са идентификационни данни или състояние на сертификат и никаква промяна на таймера няма да помогне. TLS грешка означава, че страните изобщо не са достигнали етапа keepalive.
Запишете часа на свързване, часа на прекъсване и дали интервалът е стабилен до секундата. Това единствено измерване отделя конфигуриран график от съвпадение.
Стабилният интервал е таймер. Плаващият по-скоро е проблем по пътя или изместена сесия.
Два таймера keepalive, които така и не се разбраха
Профили, експортирани от портала, понякога все още носят редове keepalive или ping-restart, копирани от шаблон на общностен сървър. Шлюзът води собствено откриване на мъртъв партньор и налага свои очаквания, а двата графика не са длъжни да съвпадат. Когато се разминават, клиентът се рестартира по график, с който шлюзът никога не се е съгласявал.
Двете стойности не са едно и също управление. ping е колко често клиентът изпраща ехо, а ping-restart е колко дълго чака, без да чува нищо, преди да събори тунела. Профил с кратък ping-restart и шлюз, който отговаря бавно, ще се рестартират при всеки тих период, което е точно формата на едноминутен цикъл.
Минималната промяна от страна на клиента е да неутрализирате таймерите на най-горното ниво на профила, извън всеки вграден блок:
keepalive 0 0Запазете, презаредете профила, свържете се отново. Сесия, която вече е в паметта, запазва старите стойности, затова редакцията понякога изглежда, че не е направила нищо.
Името на сертификата може да се измести под вас
Удостоверяването със сертификат в Azure зависи от това клиентът да се доверява на името, което шлюзът представя днес. Ред verify-x509-name в по-старo изтегляне може да закрепи име, което преустройство на шлюза или подновяване на сертификата вече е променило, и несъответствието се проявява като цикъл на повторно свързване, а не като ясна грешка. Изтриването на реда възстановява свързаността, което го прави добър диагностичен инструмент и лоша постоянна поправка, защото премахва и проверката. След като тунелът се задържи, възстановете реда с името, което шлюзът действително представя.
Тествайте второ поколение клиент на същата машина, преди да редактирате шлюза. Ако един клиент цикли, а другият се задържа, проблемът не е в профила.
Какво да се промени и в какъв ред
След това проверете за изместена сесия. Две устройства, споделящи един сертификат, могат да се изтласкват взаимно, и резултатът изглежда периодичен, защото и двете страни продължават да се свързват отново. Сравнете записите на сесиите точка към сайт за една и съща самоличност, появяваща се отново и отново.
После тествайте пътя на празен ход, като пуснете непрекъснат трафик за няколко минути. Ако паданията спрат, докато трафикът тече, важният таймер принадлежи на NAT устройство или балансиращ товар по пътя, а не на OpenVPN.
Настройките на шлюза трябва да се променят само след тези четири теста.