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

Windows 10 vpn изменить настройки DNS

Моя кнопка Windows 10 VPN IPv4 Properties не работает. Другие тоже нашли это. Существуют обходные пути PowerShell для изменения параметров шлюза по умолчанию, например

Set-VpnConnection -Name "VPN-NETWORK-NAME-HERE" -SplitTunneling $True

Что мне нужно, так это добавить корпоративные DNS-серверы на стороне сервера к моим резольверам, когда мой клиент подключен через VPN.

Есть ли способ

  1. Заставить кнопку работать? - так было в Windows 7 до обновления.

ИЛИ

  1. Обходной путь PowerShell или реестра для добавления DNS-серверов?

help SetVpnConnection показывает это:

PS C:\Users\Me> help set-vpnconnection

NAME
    Set-VpnConnection

SYNTAX
    Set-VpnConnection [-Name] <string> [[-ServerAddress] <string>] [[-TunnelType] <string> {Pptp | L2tp | Sstp | Ikev2
    | Automatic}] [[-EncryptionLevel] <string> {NoEncryption | Optional | Required | Maximum | Custom}]
    [[-AuthenticationMethod] <string[]> {Pap | Chap | MSChapv2 | Eap | MachineCertificate}] [[-SplitTunneling] <bool>]
    [[-AllUserConnection]] [[-L2tpPsk] <string>] [[-RememberCredential] <bool>] [[-UseWinlogonCredential] <bool>]
    [[-EapConfigXmlStream] <xml>] [-PassThru] [-Force] [-MachineCertificateEKUFilter <string[]>]
    [-MachineCertificateIssuerFilter <X509Certificate2>] [-ServerList <CimInstance#VpnServerAddress[]>]
    [-IdleDisconnectSeconds <uint32>] [-DnsSuffix <string>] [-CimSession <CimSession[]>] [-ThrottleLimit <int>]
    [-AsJob] [-WhatIf] [-Confirm]  [<CommonParameters>]

   Set-VpnConnection [-Name] <string> [[-ServerAddress] <string>] [[-ThirdPartyVpn]] [[-SplitTunneling] <bool>]
   [[-RememberCredential] <bool>] [[-PlugInApplicationID] <string>] [-PassThru] [-Force] [-ServerList
   <CimInstance#VpnServerAddress[]>] [-IdleDisconnectSeconds <uint32>] [-DnsSuffix <string>] [-CustomConfiguration
   <xml>] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]  [<CommonParameters>]

Известная ошибка

Кнопка свойств ничего не делать в протоколе ipv4 является повсеместной проблемой в Windows 10. О проблеме широко сообщалось давно (еще до того, как была выпущена Windows 10), поэтому не ждите исправления в ближайшее время. (Обновление: это исправлено в Win10TH2)

Единственный способ вручную установить настройки DNS - это изменить файл rasphone.pbk в C:\Users\<username>\AppData\Roaming\Microsoft\Network\Connections\Pbk. Здесь сохраняются настройки VPN.

  1. Измените IpPrioritizeRemote с 1 на 0.
  2. Измените IpNameAssign с 1 на 2.
  3. Измените IpDnsSuffix на желаемое значение.
  4. Измените IpDnsAddress и IpDns2Address на желаемые значения.

Разрешение servername и servername.companydomain.local включают два разных механизма разрешения имен.

Разрешение servername.companydomain.local легко предположить, что DNS настроен правильно и что VPN-клиенту назначены правильные DNS-серверы. Клиент VPN запрашивает у DNS-сервера полное доменное имя, для которого DNS-сервер является полномочным.

Разрешение servername не все так просто. DNS-сервер не может ответить на запрос по имени одной метки, потому что ... ну, это имя одной метки, а не полное доменное имя. При запросе имени с одной меткой клиент в основном будет использовать два метода: широковещательные рассылки (которые не будут маршрутизироваться через VPN-соединение, или Link-Local Multicast Name Resolution, которое также не будет маршрутизироваться через VPN-соединение.

Таким образом, решением было бы всегда использовать полные доменные имена или реализовать WINS-сервер (или серверы) и назначить эти / эти серверы VPN-клиенту.

У меня была эта проблема даже с W10TH2. Я решил проблему, просто используя полное доменное имя (FDQN). Например: vpn.xyz.com

Оказывается, я действительно хотел:

 PS C:\>set-vpnconnection "Connection Name" -DnsSuffix companydomain.local

поскольку DNS исходил от корпоративного DHCP.

Но это не ответ на мой первоначальный вопрос. Если бы я использовал статический IP-адрес VPN, мне все равно пришлось бы каким-то образом настроить DNS.