Назад | Перейти на главную страницу

OpenVPN: настройка серверов DNS и WINS для клиента Windows без DHCP

У меня есть несколько клиентов Windows 7/8, подключающихся к серверу Linux OpenVPN (коснитесь). Я хочу настроить клиентские DNS и WINS серверы при подключении. OpenVPN не действует как DHCP-сервер; в сети есть независимый DHCP-сервер.

Наиболее разумный способ добиться этого - использовать DHCP. Однако DHCP-сервер довольно прост, и я не могу настроить эти параметры на самом DHCP-сервере. (И я бы предпочел не заменять DHCP-сервер, это было бы слишком сложно)

я пробовал push "dhcp-option DNS 10.0.0.101" и push "dhcp-option WINS 10.0.0.101", но это не помогло. Клиенты просто проигнорировали это. Я предполагаю, что эти параметры обрабатываются только тогда, когда сервер OpenVPN также является сервером DHCP. (я прав?)

Настройка DNS и WINS вручную с помощью графического интерфейса Windows «Сетевые подключения» работает, но мне нужно что-то автоматическое (насколько это возможно).

Следующей моей попыткой было запустить сценарий на клиентской машине. Обычно я пишу сценарии Linux; однако что-то такое простое должно быть осуществимо даже с Windows, не так ли?

Первый подход, PowerShell (запускается от имени администратора)

 $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ServiceName = 'tap0901'"
 echo $wmi
 $wmi.SetWinsServer("10.0.0.101","")

Как ни странно, мне не удалось найти эквивалентную команду для настройки DNS-сервера.

И это без упоминания усложнения PowerShell со значением по умолчанию ExecutionPolicy из Restricted, что делает его довольно неудобным для пользователя как автоматическое решение для конечного пользователя.

Другой подход, который я проверил, был netsh. Однако во всех примерах, которые я видел с Google (например, http://community.spiceworks.com/scripts/show/2195-set-ip-address-subnet-gateway-dns-and-wins-server-all-windows-os-also-works-with-runas) они ссылались не на имя адаптера (я не уверен, что это правильный термин) - «тап *», а на какое-то произвольное «подключение по локальной сети *», которое, вероятно, будет отличаться на каждой машине.

Итак, как продолжить? Какой рекомендуемый способ решить эту проблему?

РЕДАКТИРОВАТЬ

Вот мой файл client.ovpn:

client
pull
# from http://serverfault.com/questions/110281/openvpn-client-on-windows-7-cannot-add-route-from-config-script
script-security 2 system
dev tap
proto tcp-client
remote A.B.C.D 443
resolv-retry infinite
nobind
ca ..
cert ..
key ..
comp-lzo
verb 5