Вопрос или проблема
Я живу в месте, где доступ к Google/Facebook/Twitter и нескольким другим веб-сайтам заблокирован. OpenVPN – отличное средство для преодоления этого.
Изначально мне нужно было, чтобы OpenVPN работал постоянно, чтобы иметь не прерываемый доступ к вышеуказанным сайтам, но проблема в том, что при прохождении всего моего трафика через VPN некоторые веб-сайты (локальные для моей страны) работают слишком медленно. Позже я узнал, что можно использовать разделенное туннелирование, чтобы только определенные веб-сайты проходили через VPN, а весь остальной трафик шел через локальную сеть.
Однако до сих пор я могу делать это только с использованием IP-адреса, как показано ниже:
route-nopull
route 1.2.3.4
Мне пришлось бы указывать записи хостов, чтобы сопоставить IP-адреса с именами хостов. Но проблема в том, что сайты, такие как Google и Facebook, имеют довольно много IP-адресов, и каждый из них может использоваться только для конкретного поддомена. Это много работы и трудно поддерживать.
Из того, что я нашел в интернете, люди, похоже, говорят о allow-pull-fqdn
, который, по всей видимости, используется для получения IP-адресов с сервера с использованием FQDN, а конфигурация выглядит следующим образом:
allow-pull-fqdn
route-nopull
route google.com
В этом случае IP-адрес google.com будет получен с сервера OpenVPN, так что мне не придется указывать его локально. Но до сих пор мне не удалось заставить это работать, и мне интересно, можно ли это использовать в моем случае.
Документация по OpenVPN не слишком подробная, и я не смог найти больше информации об этом в другом месте, можете ли вы указать мне правильное направление?
Большое спасибо заранее!
Почему бы вам не попробовать использовать маску подсети для веб-сайта, к которому вы хотите получить доступ? как описано здесь
Ответ или решение
Конфигурация OpenVPN с использованием доменных имен вместо IP-адресов для маршрутизации в режиме «разделенного туннелирования»
Введение
Использование OpenVPN может значительно улучшить доступ к сайтам, заблокированным в вашем регионе, таким как Google или Facebook. Однако полное использование VPN может замедлить вашу работу с ресурсами, доступными локально. В этой статье мы рассмотрим метод настройки OpenVPN для маршрутизации через VPN только определенных доменов, используя доменные имена вместо IP-адресов.
Проблема
Для многих пользователей становится затруднительным конфигурировать OpenVPN по IP-адресам, особенно когда речь идет о популярных ресурсах, таких как Google, которые используют динамические адреса и множественные IP-адреса для своих сервисов. Это приводит к необходимости постоянного обновления конфигурации.
Решение
Одним из предложенных решений является использование параметра allow-pull-fqdn
вместе с маршрутизацией на основе доменных имен. Этот метод позволяет серверу OpenVPN передавать вам актуальные IP-адреса для указанных доменных имен. Давайте разберем, как правильно настроить OpenVPN для ваших нужд.
Шаги настройки
-
Редактирование конфигурационного файла OpenVPN:
Откройте конфигурационный файл клиента OpenVPN (обычно имеет расширение.ovpn
или.conf
). -
Добавление параметра
allow-pull-fqdn
:
Убедитесь, что у вас установлен параметрallow-pull-fqdn
, который позволит извлекать IP-адреса из доменных имен в конфигурации вашего клиента. Добавьте следующую строку в файл:allow-pull-fqdn
-
Установка маршрута к доменам:
Добавьте маршруты для нужных вам доменов. Используйте следующий синтаксис:route google.com route facebook.com
Это позволит вашему клиенту запрашивать IP-адреса для указанных доменных имен во время подключения к VPN.
-
Отключение маршрутизации всего трафика:
Чтобы обеспечить разделенное туннелирование, добавьте следующий параметр, чтобы предотвратить использование маршрутов по умолчанию:route-nopull
-
Сохранение и тестирование конфигурации:
После настройки файла сохраните изменения. Запустите OpenVPN и проверьте, могут ли сайты, такие как Google или Facebook, быть доступны через VPN.
Примечания
- Обновление IP-адресов: Поскольку IP-адреса могут меняться, данный подход позволяет автоматически обновлять маршрути с использованием актуальных адресов.
- Сложности с DNS: Если у вас возникли проблемы с разрешением доменных имен, убедитесь, что DNS-сервер, который использует ваш компьютер, работает корректно. Возможно, вам понадобится явно указать DNS-сервер в конфигурации OpenVPN.
Заключение
Настройка OpenVPN на использование доменных имен вместо IP-адресов является практичным и эффективным способом реализации разделенного туннелирования, позволяющим получать доступ к заблокированным ресурсам без необходимости постоянного обновления конфигурации. С помощью предоставленных инструкций вы сможете удобно реconfigureировать OpenVPN для достижения нужных вам результатов. Обязательно протестируйте конфигурацию и проанализируйте производительность для достижения наилучших результатов.