История одной проблемы с VPN и ее решение [Mikrotik]
Ни в коем случае не хочу обвинить провайдера в том, что у меня в один день перестали работать на нем VPN соединения, тем более что он мне сознался что проблем и блокировок с его стороны нет, очевидно, что во всем виноват я сам и мои кривые руки☺. Как говорится, вся история вымышлена, а все совпадения — случайность.
Translation to English is here . Также основной канал в telegram .
Публикация является решением одной конкретной проблемы, в одной конкретной квартире, одного конкретного провайдера. Просто расскажу историю и решение, которое пока работает.
Внимательный читатель догадывается о том, каким провайдером интернета я пользуюсь. Скажу сразу, что он не при чем и им я продолжаю пользоваться и по настоящее время. Его имя я не буду напоминать, т.к. за рекламу они мне не платили ☺.
Однако, было время, когда у меня в квартиру заходило сразу 2 провайдера. Это было выгодно, основной провайдер предоставлял все то, что использует вся семья, а второй давал бесплатный белый IP и резервный канал на всякий случай. Будем называть его X. Реальное его имя я не раскрою по двум причинам. Во-первых , проблема, которой со слов того провайдера — нет, может действительно «внезапно» исчезнуть и на эту статью пожалуются. Во-вторых, если вы пользуетесь провайдером Y , то это не значит, что с Вами не может случиться таже история.
Провайдер X у меня был очень давно, он локальный, довольно крупный и существует сразу в нескольких городах, правда не понятно, на сколько они имеют друг к другу отношения, кроме имени. Несмотря на то, что он был не очень технологичный, все же имел 3 несомненных преимущества: цена; белый, динамический IP; отсутствие блокировок к сайтам из списка запрещенных. Но как это бывает со всем хорошим — оно заканчивается. Сначала смекнули, что блокировки все же нужно включить, затем перестал работать VPN, а затем, когда я на них нажаловался, меня спрятали за NAT и отключили мне белый IP, а цена у них к этому времени была уже совсем не конкурентной.
Теперь, когда вводная часть пройдена я напомню ответ на вопрос «Зачем нужен VPN?». Нет, я не обхожу блокировки и надо признаться — мне это даже не интересно. Вот конкретные примеры моего использования:
Разворачиваем домашнюю сеть в гостях. [Часть 2] CAPsMAN через VPN. Расширяем покрытие Wi-Fi независимо от местоположения.
Так вот, возвращаясь к теме неработающего VPN, расскажу, как это выглядело. В воскресение мне пишет друг и говорит, что не может воспользоваться моим VPN, а другой отвечает, что все работает нормально (у нас был один общий проект, над которым мы работали вместе). Я также не смог подключиться ни с одного из 3 своих устройств. Ровно в 12:00 все заработало у всех. Вывод — блокировка работала не для всех провайдеров, строго по расписанию и не для всех типов соединений (но про это я узнал позже). Дальше, история повторилась, я связался с поддержкой и нажаловался на подобное поведение с их стороны. Ну и, как вы уже знаете, провайдер меня решил наказать по полной, отключив мне белый IP и спрятав за NAT.
Перейдя с провайдера Х на своего текущего провайдера (который был вторым), у меня остался месяц предоплаченного интернета, и я мог свободно проводить с ним эксперименты. Я взял Mikrotik роутер и настроил его просто и банально, согласно стандартной конфигурации:
Теперь, когда IP серый, то подключиться к этому роутеру уже невозможно, ведь IP который соответствует моему роутеру также соответствует еще неизвестному количеству абонентов. Однако, если нельзя подключится к роутеру, то можно попробовать подключиться из него. Создаю в роутере различные типы VPN и пытаюсь подключиться к своему основному Mikrotik. Единственный тип подключения, который устанавливается — L2TP. Однако, оператор сказал, что блокировок нет и все проблемы только на моей стороне. Конечно же, ни капельки не верим, но сомнения есть. Далее — банальный эксперимент. Подключаемся телефоном к мобильной сети — VPN через PPTP работает, подключаемся к новому провайдеру — работает, подключаемся к провайдеру Х — не работает. Сомнений нет — блокируют. Про различные причины блокировок VPN можно широко почитать в интернете, тут нет политики или злого умысла, просто бизнес.
ОК, теперь мы знаем, что L2TP еще пока работает, но связи через него нет. Пинг идет нормально, роутер виден через winbox, но любое соединение или данные сразу рвутся. Посмотрим на настройки подключения:
Профиль безопасности — это первое, что я проверил. Какие только конфигурации я не тестировал, все не имело значения. Но вот MTU и MRU я никогда не трогал. Я даже не знал, что это такое. Ответ нашел тут :
Maximum transmission unit (MTU) – это максимальный объём данных, который может быть передан протоколом за одну итерацию. К примеру, MTU для Ethernet равняется 1500, что означает, что максимальный объём данных, переносимый кадром Ethernet не может превышать 1500 байт (без учёта Ethernet-заголовка и FCS).
Для других протоколов, MTU, как правило, в каждом случае разное. Обычно, чем медленнее скорость протокола, тем меньше MTU, например: Fast Ethernet 100Base-T – 64 байта, Gigabit Ethernet 1000Base-T – 512 байт (но для ряда устаревших протоколов могут быть исключения из этого правила). В PPPoE обычно используется 1492 байта, а в беспроводной сети MTU равен 2304. Если же устройству нужно передать больше информации чем MTU, то его объем делится на блоки, равные MTU этого протокола (либо максимального MTU из используемых.
Важно отметить, что при использовании VPN-туннелей значение MTU должно быть уменьшено, чтобы избежать потерь пакетов. Потери пакетов при проблемах с MTU могут выглядеть как зависание TCP-сессии, например, в течении процесса TLS Handshake или при доступе по SSH.
Теперь процитируем про MRU:
Maximum receive unit (MRU) — максимальный размер данных, передаваемых в пакете конкретного протокола, не включая заголовок пакета. Наприимер, для PPP значение MRU определяется протоколом LCP, входящим в семейство PPP, и принимается по умолчанию равным 1500 байт. В случае, если запрашивается меньшее значение, система обязана быть готовой к приёму полноразмерного пакета при потере синхронизации.
Поскольку максимальный размер данных в кадре Ethernet (он используется для протокола PPPoE) равен 1500 байт, из которых 6 байт занимает заголовок PPPoE и 2 — идентификатор протокола, величина MRU не должна превышать 1492 байт. При использовании jumbo-кадров (их размер больше длины стандартного пакета Ethernet) значение MRU должно увеличиваться сверх 1492 байт для уменьшения фрагментации данных.
Важно уточнить, что в случае установки значения MRU более 1492 байт должна производиться проверка способности принимающей стороны и связующего оборудования на предмет обработки пакетов такой длины путём отправки одного или нескольких полноразмерных пакетов с эхо-запросом. В случае, если эхо-ответ не получен, проверяется прохождение эхо-пакетов нормального размера и используется стандартное значение MRU.
Методом последовательного уменьшения MTU и MRU удалось добиться полноценной работы VPN туннелей. Я не могу гарантировать, что метод решения, описанный выше поможет решить конкретно вашу проблему, однако он уже помог нескольким людям, а значит может полноправно считаться полезным.
Как только данный метод мне сломают, я смогу протестировать еще несколько методов, в том числе Open VPN и SSTP, давно уже пора полностью перейти с PPTP, но руки все никак не доходят.
UPD1: Как мне объяснили, такая проблема может случится в том случае если туннель идет через туннель. Например, первый со стороны провайдера. Тогда уменьшение длины MTU и MRU является рабочим способом заставить работать VPN.
Если знаете свои методы — описывайте в комментариях, многим будет полезно.
Всем добра, учимся на ошибках, пытаемся сделать мир лучше.
Подпишитесь , чтобы не пропускать следующий контент.
Нажмите лайк , если интересно, так я пойму какие публикации больше нужны моей публике.
Также публикации можно найти на других площадках: Instagram , telegram ( RU , EN , DE ), Medium , LiveJournal , YouTube .
Мой блог является некоммерческим, поэтому позитивный комментарий, лайк или репост поможет публикациям выходить чаще ☺.
Что делать, если ваш VPN заблокирован вашим роутером
Многие интернет-провайдеры настраивают свое оборудование для блокирования решений VPN . Для этого есть очевидные причины, которые делают VPN в современном мета-состоянии Интернета незаменимым пользовательским ресурсом. У многих пользователей есть проблемы с маршрутизаторами, блокирующими их VPN-сервис , по разным причинам.
Мы позаботились о том, чтобы предложить некоторые жизнеспособные решения для этой ошибки. Однако, несмотря на свою эффективность, эти решения довольно широки. По этой причине мы рекомендуем обратиться в службу технической поддержки VPN или ISP, поскольку они отвечают за выполнение приложения.
Как разблокировать VPN при блокировке роутером (ISP)
1: изменить протокол
Многие маршрутизаторы блокируют стандартные протоколы VPN, такие как туннелирование «точка-точка» (PPTP) или SSTP. Вероятно, есть опция, которая позволяет вам свободно взаимодействовать с этими протоколами, но проще управлять настройками внутри самого инструмента VPN. Что вы можете сделать, так это переключаться между доступными протоколами, пока не найдете тот, который, скорее всего, будет работать.
Лучше всего придерживаться универсального протокола OpenVPN, который является современным протоколом. Кроме того, он вряд ли получает блокировку по умолчанию от интернет-провайдеров, что в данном случае является наиболее важной чертой.
2: Проверьте настройки маршрутизатора
Если, с другой стороны, вы ограничены PPTP, вам будет сложно работать с некоторыми интернет-провайдерами . Он работает на предопределенных портах, которые могут быть заблокированы. И, чтобы избежать этого, вам нужно либо добавить исключение для VPN, перенаправить выделенные порты или отключить собственный брандмауэр.
Мы рекомендуем поискать точный маршрутизатор, чтобы лучше понять, как это сделать. Несмотря на то что параметры одинаковы, учетные данные для входа в систему различаются. Кроме того, вы можете отключить собственный брандмауэр Windows или, что еще лучше и намного безопаснее, добавить исключение для VPN. Таким образом, он будет общаться свободно.
3: изменить местоположение и IP
Наконец, если вы можете подтвердить, что настройки протокола и маршрутизатора соответствуют, последнее решение, которое мы должны предложить, касается местоположения и IP-адреса. Если по какой-либо причине определенный IP-адрес заблокирован , вы можете перейти в аналогичное географическое местоположение и попробовать снова подключиться. Кроме того, именно здесь становится понятным различие между платными и бесплатными решениями. А именно, благодаря решениям премиум-класса, таким как CyberGhost или Nord VPN , вы легко сможете переключаться между различными местоположениями, имея в своем распоряжении сотни IP-адресов.
Кроме того, эти платные услуги на основе подписки предлагают надлежащую техническую поддержку, которая поможет вам решить любую проблему под рукой. Читайте здесь о наших рекомендациях и используйте бесплатную пробную версию, чтобы проверить их самостоятельно.
На этом мы можем завершить эту статью. Если у вас есть рекомендации или вопросы, не стесняйтесь размещать их в разделе комментариев ниже.
СВЯЗАННЫЕ ИСТОРИИ, КОТОРЫЕ ВЫ ДОЛЖНЫ УЗНАТЬ: