В моем домашнем офисе работает OpenConnect, поэтому я могу получить доступ к своей лаборатории из отелей и / или сайтов клиентов. Чтобы помочь найти сервер, я заручился поддержкой динамической службы DNS, которая позволяет мне использовать поддомен моего зарегистрированного имени DNS.
Например, если мое настоящее имя - Джон Доу, я зарегистрировал johndoe.me.uk
а служба динамического DNS позволяет vpn.johndoe.me.uk
всегда указывать на внешний IP-адрес моего маршрутизатора.
При подключении из (например) гостиничного WiFi (или проводного Ethernet) он работает очень хорошо.
Тем не менее, если я пытаюсь подключиться через мобильную (сотовую) сеть, соединение немедленно обрывается. Выходы Wireshark и tcpdump показывают, что клиент отправляет сообщение TLS ClientHello, и возвращается TCP RST. Я пробовал это с двумя британскими сетями - Three и Vodafone - и обе ведут себя одинаково.
Мои первые мысли были о том, что это основано на протоколе - некоторая глубокая проверка пакетов отклоняет протокол AnyConnect. Однако, если я переконфигурирую клиент для использования текущего внешнего IP-адреса маршрутизатора вместо vpn.johndoe.me.uk
это сработает ; изначально предлагая что-то связанное с разрешением имен, может быть?
Продолжая эту мысль, я с тех пор попробовал другой динамический DNS-сервис ({account}.zzzz.io
), и он также работает - мое DNS-имя по-прежнему является подозреваемым номер один.
Я зашел так далеко, что использовал файл /etc/host
на своих клиентских устройствах для обхода разрешения DNS. Если я попробую следующее по очереди (если 12.34.56.78
является текущим общедоступным IP-адресом моего маршрутизатора), я получу:
12.34.56.78 vpn.johndoe.me.uk # This fails
12.34.56.78 abc.johndoe.me.uk # This fails
12.34.56.78 vpn.ohndoe.me.uk # Dropped the 'j' - this works!
12.34.56.78 vpn.johndoe.me.u # Dropped the 'k' - this works!
Теперь я думаю о том, что мой зарегистрированный DNS (johndoe.me.uk
) занесен в черный список, но я пробовал несколько сайтов для проверки в черном списке, и они отображаются только для блока SMTP на основе политик для моего провайдера (что ожидается) ).
Я даже отключил фильтр контента для взрослых, который интернет-провайдеры вынуждены включить по умолчанию здесь, в Великобритании, и это не помогло (нет - мое настоящее имя не звучит как взрослая кинозвезда!)
Хотя я мог бы продолжать использовать альтернативный динамический DNS-сервис (который я пока использую), мне нужно докопаться до сути.
Я только что заметил, что мой обычный веб-сайт (не VPN-сервер), использующий https://{host}.johndoe.me.uk
но размещенный в облачной службе (т.е. не в моей лаборатории), также заблокирован оператор мобильной связи (а http://
нет).
Я даже пытался переместить службу VPN с порта по умолчанию 443 на большое число (8888), но это не помогло.
Что может заблокировать меня по моему зарегистрированному DNS-имени, только в мобильных сетях и только при использовании протокола HTTPS на любом порту (не только по умолчанию 443)?