В нашей конфигурации Linux Ubuntu есть DNS-сервер (Bind 9).
И resolv.conf
имеет свои
nameserver 127.0.0.1
При использовании openvpn
клиента в этом Linux сервер имен не изменяется (сервером VPN), но я хотел бы установить его - только во время сеанса VPN - на другой конкретный сервер DNS x.y.z.t
, изменив конфигурацию клиента openvpn.
Затем, когда openvpn
сессия заканчивается, сервер имен должен вернуться к 127.0.0.1
.
Есть ли «чистый» способ (то есть строка в файле конфигурации клиента openvpn) сделать это?
(Примечание. Конфигурация VPN-сервера не может быть изменена).
openvpn
dns-server
clients
Кольцо Ø
источник
источник
/usr/share/openvpn/update-resolv-conf
, вы можете найти его предварительно установленным в/etc/openvpn/update-resolv-conf
.2.4.6
и она была установлена для меняПодумайте об использовании
route-up
/route-down
scripts на вашем клиенте, чтобы изменить свою конфигурацию при настройке соединения, как вы считаете нужным. Смотрите документацию OpenVPN, чтобы узнать, как это настроить и какие переменные вы можете использовать в этих скриптах.источник
route-up
вместо того,up
чтобы минимизировать условия гонки. Когдаup
скрипт выполняется, соединение еще не установлено, и у вас нет возможности запросить удаленный преобразователь, который вы устанавливаете. Если вы запускаете клиент OpenVPN в ситуации, когда настройка соединения не будет завершена, вы переводите свой распознаватель в возможно неработающее состояние на длительный период времени. Подробности смотрите в разделе «Порядок выполнения скриптов» на справочной странице OpenVPN .Это была полезная информация, чтобы помочь мне решить эту проблему.
Я пользователь arch linux, и то, что я видел, это то, что когда клиент Linux используется с Access Server, он не может изменить настройки DNS на рассматриваемом клиенте, не разрешая хост, так как он стоит на OPEN VPN Documentation
Я создал скрипт, который решает проблему и с парой дополнительных параметров обрабатывает соединения openvpn через командную строку.
https://gist.github.com/android10/ee5c3e93dbcf9b7b31e6ee768cbfd477
Вот основная команда, выполняемая для соединения:
Любая обратная связь более чем ценится.
источник
echo "nameserver = wxyz"> /etc/resolv.conf
echo "nameserver = 127.0.0.1" >> /etc/resolv.conf
источник