我的 Windows 10 VPN IPv4 属性按钮不起作用。其他人也发现了这个问题。有几种 Powershell 解决方法可以更改默认网关选项,例如
Set-VpnConnection -Name "VPN-NETWORK-NAME-HERE" -SplitTunneling $True
我需要的是,当我的客户端通过 VPN 连接时,将服务器端的公司 DNS 服务器添加到我的解析器中。
有没有办法,
- 让按钮工作吗?- 升级之前,它在 Windows 7 中确实可以工作。
或者
- 使用 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>]
答案1
已知错误
IPv4 协议上的无用属性按钮是 Windows 10 中普遍存在的问题。该问题很久以前就已被广泛报道(甚至在 Windows 10 发布之前),因此不要指望很快就会得到修复。(更新:这是在 Win10TH2 中已修复)
我可以手动设置 DNS 设置的唯一方法是修改 中的 rasphone.pbk 文件C:\Users\<username>\AppData\Roaming\Microsoft\Network\Connections\Pbk
。这是保存 VPN 设置的地方。
- 将 IpPrioritizeRemote 从 1 更改为 0。
- 将 IpNameAssign 从 1 更改为 2。
- 将 IpDnsSuffix 更改为所需的值。
- 将 IpDnsAddress 和 IpDns2Address 更改为所需的值。
答案2
解析servername
涉及servername.companydomain.local
两种不同的名称解析机制。
如果 DNS 配置正确,并且已为 VPN 客户端分配了正确的 DNS 服务器,则解析servername.companydomain.local
很容易。VPN 客户端向 DNS 服务器查询 DNS 服务器具有权威性的完全合格域名。
解析servername
并不是那么简单。DNS 服务器无法回答单个标签名称的查询,因为... 好吧,这是一个单个标签名称,而不是 FQDN。查询单个标签名称时,客户端主要使用两种方法:广播(不会通过 VPN 连接路由)或链路本地多播名称解析,也不会通过 VPN 连接路由。
因此,解决方案是始终使用完全限定的域名或实施 WINS 服务器(或服务器)并将该/那些服务器分配给 VPN 客户端。
答案3
事实证明我真正想做的是:
PS C:\>set-vpnconnection "Connection Name" -DnsSuffix companydomain.local
因为 DNS 来自企业 DHCP。
但这并没有回答我最初的问题。如果我使用静态 IP VPN,那么我仍然必须以某种方式设置 DNS。
答案4
即使使用 W10TH2 我也遇到了这个问题,我通过使用完全限定域名 (FDQN) 解决了该问题。例如:vpn.xyz.com