OpenVPN ради код куће али не на једној мрежи: UDP или TCP?
Једна мрежа блокира тунел а друга не. Упоредите UDP филтрирање, заштиту од флуда на свичу, резервни TCP 443 и судар адресног плана.
Исти профил се повезује од куће и застаје на хотелској, кампус или филијалној мрежи. Акредитиви се нису променили, па је занимљива променљива пут: OpenVPN шта се дешава са пакетима пре него што их прочита. Упоредити четири могућа узрока редом којим могу да се тестирају боље је него нагађати о сертификатима. Сваки оставља другачији траг, а траг је оно што их раздваја.
Која фаза је пала говори које поређење је важно
Дневник клијента већ бележи докле сте стигли. Ред који каже да TLS размена кључева није наступила у року значи да је први пакет отишао и да ништа употребљиво није вратило се, што указује на пут. Одбијање сертификата изгледа сасвим другачије: стиже одговор, а затим конкретна грешка верификације именује разлог. Забележите последњи ред пре циклуса поновног покушаја, јер је то вредност коју поредите између мрежа.
Снимите током поновног покушаја, а не после. На клијенту tcpdump -ni any udp port 1194 показује да ли се уопште враћа икакав одговор. Поновите то на WAN интерфејсу сервера који контролишете, што открива да ли ти пакети уопште стижу до удаљеног краја.
Једносмерни саобраћај је најкориснији резултат доступан овде, јер претвара повремену жалбу у правац за истрагу. Сачувајте датотеке снимка, јер се следећи извештај о истом проблему лакше затвара доказима него описом.
UDP филтрирање наспрам затвореног порта
Многе приступне мреже сматрају трајни UDP сумњивим, а неки ISP се слажу. Затворен порт производи исту тишину са стране клијента. Разлика је селективност: филтер је обично избирљив око тога које дестинације или портове одбацује, док затворен порт одбија све што је усмерено ка том порту.
TCP профил на порту 443 је уобичајено решење, јер личи на обичан HTTPS ток и пролази кроз већину captive портала и излазних филтера. Морају да важе два услова. Сервер мора да слуша са proto tcp-server а клијент мора да се поклопи са proto tcp-client, и оператер мора да објави ту алтернативну крајњу тачку. Преписивање радног UDP профила да тврди TCP 443 не води никамо када на другој страни ништа не слуша.
Затворен порт је проблем конфигурације, а не цензуре. Сервер иза кућног рутера треба прослеђивање UDP порта, а заштитни зид рутера мора то да дозволи. Када порт никада није био дозвољен, сваки клијент пада на преговорима без обзира на акредитиве, а квар прати сервер, а не мрежу.
Старији протоколи се лоше држе на овој оси. PPTP захтева TCP 1723 плус GRE, а GRE је IP протокол 47, а не порт, па никакво обично прослеђивање порта то не изражава.
Када свич испушта пакете
Управљани свич може намерно да испусти тунел. Неки HPE и Aruba модели излажу контролу заштите од UDP флуда, понекад означену Prevent UDP Blat Attack, у одељку напредне безбедности. Када је та контрола активна, сервер иза свича не одговара ни на шта и сваки клијент истиче на исти начин. Њено брисање и чување текуће конфигурације је цела поправка, али тек након што утврдите да је свич заиста на путу.
Противдокази су оно што раздваја испуштање на свичу од блокаде провајдера. Прочитајте бројаче интерфејса и дневник заштите од флуда пре него што отворите тикет код ISP-а. Потрошачки рутери са DoS или flood заштитом падају у истом облику, као и сваки посредник са кратким UDP мировањем. Руковање које се никада не завршава указује на испуштање, док тунел који умре после неколико минута тишине указује на временско ограничење.
Запишите сваки уређај између клијента и сервера пре него што промените профил. Поправка примењена на погрешном слоју изгледа исправно до следеће мреже. Та листа такође говори следећем инжењеру где да гледа без понављања целе истраге.
Преклапање адреса које изгледа као DNS квар
Приступна мрежа нумерисана унутар 10.0.0.0/8 може да се преклопи са базеном тунела, а resolver обично живи унутар тог базена. Када лаптоп добије адресу попут 10.184.178.50 са /8 маском на Wi-Fi-ју, свака дестинација 10.x је по дефиницији локална. Пакети за 10.4.0.1 тада иду у LAN, тунел остаје активан, а разрешавање имена пада.
ip addr открива преклапање на први поглед, а ip route get 10.4.0.1 показује где би пакет заиста био достављен. Пошто је видљив симптом квар resolver-а, ово често преживи неколико кругова DNS промена.
Пренумеришите базен или држите ту приступну мрежу ван обухвата. Никакво подешавање на страни клијента не опоравља од преклапања.
Избор између резервног TCP-а и поправке пута
Изаберите резервни TCP када не контролишете пут и корисницима треба да раде данас, и прихватите његове трошкове: TCP унутар TCP-а лоше се понаша на линковима са губицима, а резерва захтева listener који ви водите. Изаберите поправку пута када блокада лежи на инфраструктури коју поседујете, јер је правило заштитног зида јефтиније од другог listener-а. Како год, прођите кроз слојеве редом: линк, спољни транспорт, преговори, унутрашње рутирање. Фаза која је пала на тој мрежи је једина важна чињеница.
Бележите резултат по мрежи, а не по кориснику. Следећи извештај о истом квару тада почиње од познате фазе уместо од теорије о сертификатима. Тај запис је и оно што оправдава стални други listener, ако икада буде потребан.