Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Проблемы с Basic PBR через VPN-клиент. Не дает ожидаемого результата., wifiman
 
TLDR: Политика маршрутизации не работает, как ожидалось, с клиентом ExpressVPN на UDM Pro.

Есть проблемы с политикой маршрутизации через клиент ExpressVPN. Это, на самом деле, довольно тривиальная проблема, но раздражает. Я надеялся, что настройка на уровне сети сделает это бесшовным, чтобы я мог "просто нажать кнопку", когда захочу. У меня есть опыт работы с базовым использованием OpenWRT и Unifi, но нет формальных знаний/обучения в области сетей/IT, я просто домашний пользователь.

Проблема возникает только при использовании платной подписки с приложением ESPN+ на iPhone (и других устройствах, но пока беспокоюсь только об iPhone). Приложения ExpressVPN iOS в целом работает отлично, и стриминг обычно работает без проблем, но иногда возникают ошибки. Перезапуск стрима один-два раза обычно решает проблему, и она сохраняется до тех пор, пока я не решу прекратить его. Аналогичная ситуация происходит на Android TV с приложением ExpressVPN для TV. Иногда нужно перезагружать/очищать кэш на TV, но после подключения все работает нормально. (То же самое происходит и на Nvidia Shield, как на TV).

Я не уверен, какие шаги следует предпринять для диагностики. Не удается настроить захват пакетов, который бы четко показывал, что происходит, и я достиг предела своих знаний/поисковых возможностей. Я еще не отправлял официальный тикет в службу поддержки. Я считаю, что это проблема с конфигурацией пользователя, с которой сообщество легко может помочь. Если потребуется, я свяжусь со службой поддержки и сообщу о результатах, когда/если будет найдено решение.

UDM Pro 4.1.13

Единственное изменение – разрешение удаленного SSH захвата пакетов через Wireshark. (как обсуждалось здесь: https://community.ui.com/questions/sshdump-not-connecting-to-udm-pro/7909999f-9f89-4ac6-a532-9e855a2f45a3). Это будет возвращено к значениям по умолчанию, как только я закончу расследование.

Ранее я пытался использовать скрипты unifi-startup и подобные, чтобы запускать Pi-hole на консоли, но это никогда не работало, и я использую Pi 4 вместо этого. Насколько мне известно, все это было удалено при предыдущих обновлениях ОС несколько лет назад.

У меня нет планов или желания вносить другие изменения в командную строку.

UCI 1.3.6
XfinitynanoHD 6.6.78
Network 9.0.108

Помимо уведомлений о "Задержке", сеть работает без проблем для моих целей.

Настройка сети:

"Тестовая" сеть — это сеть IPv4 только с другими настройками по умолчанию. ID VLAN = 50 (br50). В этой сети не включено блокирование рекламы или фильтрация контента.

Беспроводная сеть: Я не думаю, что это имеет значение, но для "Тестовой" сети назначен определенный SSID. iPhone подключен к этому SSID и получает правильный IP-адрес из "Тестовой" сети. Под нормальных условий вся связь работает как и ожидается.

Зона брандмауэра на основе зон:

Устройства Unifi и Pi 4 (Pi-hole) находятся в зоне по умолчанию Internal со стандартными правилами.

"Тестовая" сеть находится в пользовательской зоне под названием "Internal_Main", которая по сути является дубликатом зоны по умолчанию Internal и содержит сети "Main" и "Test".

Единственное нестандартное правило — правило блокировки DoT. Оно не запускается во время тестирования. Я также пытался это с приостановленными ВСЯМИ правилами брандмауэра пользователя, что дало те же результаты.

ExpressVPN:

Конфигурация OpenVPN импортирована в сеть, как предоставлено ExpressVPN. Я использовал несколько мест, и все они дали тот же результат.

Заметил, что приложение Network изменяет эту конфигурацию при импорте.

Политика маршрутизации:

Следуя примеру здесь (https://help.ui.com/hc/en-us/articles/12566175125783-UniFi-Gateway-Policy-Based-Routing), но используя всю "Тестовую" сеть вместо конкретного целевого объекта и маршрутизируя весь трафик вместо домена.

Параметр "Отклонение" не установлен.

Опыт при подключении к сети при использовании приложения iOS только:

Ожидалось: Стримить контент ESPN+ через приложение iOS при подключении с конфигурацией VPN ExpressVPN iOS.

Результат: iPhone показывает правильный публичный IP VPN и имеет полный доступ в Интернет. DNSleaktest показывает ожидаемые результаты для текущей конфигурации VPN. Стриминг контента работает с минимальными проблемами (см. выше).

Захват пакетов на br50 показывает, что весь интернет-трафик с iPhone идет к адресу назначения IP ExpressVPN.

Опыт при подключении к сети и использовании PBR/VPN Client на UDM Pro:

Ожидалось: Маршрутизировать весь трафик с "Тестовой" сети через клиент Express VPN для стриминга контента ESPN+ на iPhone.

Результат: iPhone показывает правильный публичный IP VPN и, как правило, имеет полный доступ в Интернет. DNSleaktest показывает ожидаемые результаты для текущей конфигурации VPN.

Не удается стримить контент ESPN+ через приложение iOS или Safari. При выборе контента в приложении или браузере доступна только опция "получить доступ". При нажатии "получить доступ", а затем "восстановить подписку" в приложении возникает ошибка с просьбой связаться со службой поддержки ESPN.

Захват пакетов на br50 показывает, что интернет-трафик с iPhone идет к локальному IP-адресу клиента ExpressVPN (10,xx,xx,xx).
 
Изменения в этом посте тестировались только на iPhone, тестов с проводным ТВ пока нет. На данный момент я вручную редактирую только отдельные элементы в файлах конфигурации OpVPN, предоставленных ExpVPN.

FROM: MTU 1500fragment 1300mssfix 1200

TO: MTU 1400fragment 1400mssfix

Версия Unifi OpVPN – 2.5, и связанная документация OpVPN указывает на то, что fragment наследует fragment как максимум, поэтому mssfix оставлен пустым, но "был бы" 1400. Исходя из моего понимания и предполагая отсутствие каких-либо скрытых настроек от Unifi.

Вышеуказанные настройки, похоже, обеспечивают стабильные результаты для различных VPN-локаций, предлагаемых ExpVPN. Нет проблем с "получением доступа", и приложение iOS автоматически входит в систему, как и ожидалось. Снова же, начальные потоки иногда зависают или выдают ошибку "недоступно в вашем регионе". Повторный запуск потока контента или переключение на другой контент с последующим возвратом обычно помогает.
 
Я не вижу, чтобы UniFi OS редактировала параметры MTU/MSS в конфигурации после импорта. Файлы конфигурации, скачанные с ExpressVPN, содержат MTU 1500, fragment 1300 и MSS 1200. Я вручную изменил MTU в файлах конфигурации VPN с 1500 до 1450 и снова импортировал их. Тестирование через несколько VPN-локаций дало улучшенные результаты, и я смог успешно стримить контент с опытом, похожим на то, что выдает iOS-приложение. Некоторые локации все еще не работали, другие — работали. Повторно протестировал сегодня утром, и некоторые из тех, что работали, перестали работать. Не могу сказать, проблема в аутентификации из-за переключения на более быстрые локации, связана ли это с UniFi, или что-то еще. В целом, интернет стал работать лучше. Также тестировал проводное ТВ на отдельной VLAN, настроенной для IoT-устройств, и получил те же результаты, что и на iPhone. Похоже, придется пока использовать только одну работающую локацию, что должно удовлетворить мои потребности. В какой-то момент я также попробую посмотреть, работает ли более низкий MTU стабильно для остальных.
 
Я бы подключился по SSH к UDM-P и проверил настройки MTU и MSS, примененные VPN Unifi OS, просто поищите эти форумы, там куча жалоб. Попробуйте протестировать с устройством, подключенным к локальной сети, чтобы исключить возможные проблемы с Wi-Fi. Я использую Tailscale на ATV, подключенном через Ethernet, и всегда находил это самым надежным вариантом. Переходить сразу на Network 9.x - это смелый шаг.
Страницы: 1
Читают тему (гостей: 1)