我有一个本地域(我们称之为mycorp.local
)。
在一台计算机上,我设置了到远程域的 VPN 连接(假设它的 DNS 后缀是remote.local
)。
一旦我建立远程连接,本地域身份验证就会停止工作。例如,我尝试使用集成身份验证连接到 SQL 服务器,但失败并出现以下错误:
登录失败。登录来自不受信任的域,无法与 Windows 身份验证一起使用。(Microsoft SQL Server,错误:18452)
如果我断开VPN,我可以再次登录SQL。
两个域没有信任关系。
我的第一个猜测是 VPN 连接优先于本地 DNS。这就是我遵循这个答案的原因:VPN 连接导致 DNS 使用错误的 DNS 服务器。基本上,答案允许更改接口的顺序来尝试 DNS 解析。
我认为 DNS 设置是正确的,因为我能当 VPN 建立时,对 sql 和 ad 计算机进行 ping 操作。
是否有任何参数/配置可用于确保身份验证在正确的域上进行?
如果有帮助的话,以下是我的设置的一些详细信息:
- 2 个网卡
- 1 可以访问 AD 网络
- 1 可上网
- 本地子网:192.168.10.0/24。度量设置为 1
- 第二张卡的子网:192.168.66.0/24。度量设置为 100
- VPN 连接的子网:172.16.0.0/16。度量设置为 9999
在所有情况下,ping sql
、ping sql.mycorp.local
和ping ad
都能ping ad.mycorp.local
正确解析 IP 地址(当然,为了ipconfig /flushdns
确保万无一失,有些情况确实如此)。
完整的输出ipconfig /all
是:
Windows IP Configuration
Host Name . . . . . . . . . . . . : mycomputer
Primary Dns Suffix . . . . . . . : mycorp.local
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
DNS Suffix Search List. . . . . . : mycorp.local
remote.local
Ethernet adapter Local:
Connection-specific DNS Suffix . : mycorp.local
Description . . . . . . . . . . . : Microsoft Hyper-V Network Adapter #3
Physical Address. . . . . . . . . : 00-15-5D-14-20-0D
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::d117:9048:ce1c:1422%16(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.10.30(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
DHCPv6 IAID . . . . . . . . . . . : 385881437
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-19-8B-E5-3D-00-15-5D-14-20-0F
DNS Servers . . . . . . . . . . . : fe80::80ce:dc9d:37c5:39f3%16
192.168.10.10
NetBIOS over Tcpip. . . . . . . . : Enabled
Ethernet adapter RJ45:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Hyper-V Network Adapter #2
Physical Address. . . . . . . . . : 00-15-5D-14-20-0E
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2a01:e35:8a84:7240:c0eb:c8d1:9c3f:8fc0(Preferred)
Link-local IPv6 Address . . . . . : fe80::c0eb:c8d1:9c3f:8fc0%13(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.66.11(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Lease Obtained. . . . . . . . . . : lundi 12 août 2013 13:06:28
Lease Expires . . . . . . . . . . : jeudi 22 août 2013 13:06:28
Default Gateway . . . . . . . . . : fe80::207:cbff:fe3c:5b7f%13
192.168.66.254
DHCP Server . . . . . . . . . . . : 192.168.66.254
DNS Servers . . . . . . . . . . . : fe80::80ce:dc9d:37c5:39f3%13
192.168.10.10
NetBIOS over Tcpip. . . . . . . . : Enabled
Ethernet adapter Wifi:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft Hyper-V Network Adapter
Physical Address. . . . . . . . . : 00-15-5D-14-20-0F
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::c551:f03f:7557:9b17%11(Preferred)
Autoconfiguration IPv4 Address. . : 169.254.155.23(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
DHCPv6 IAID . . . . . . . . . . . : 234886493
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-19-8B-E5-3D-00-15-5D-14-20-0F
DNS Servers . . . . . . . . . . . : fe80::80ce:dc9d:37c5:39f3%11
192.168.10.10
NetBIOS over Tcpip. . . . . . . . : Enabled
PPP adapter VPN remote:
Connection-specific DNS Suffix . : remote.local
Description . . . . . . . . . . . : VPN remote
Physical Address. . . . . . . . . :
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 172.16.110.243(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . :
DNS Servers . . . . . . . . . . . : 172.16.100.47
172.16.100.43
Primary WINS Server . . . . . . . : 172.16.100.47
Secondary WINS Server . . . . . . : 172.16.122.100
NetBIOS over Tcpip. . . . . . . . : Enabled
Tunnel adapter isatap.{DEFE2CAC-D001-4E79-A33F-AD95A8106CA8}:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter Local Area Connection* 9:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter isatap.{2AE1C64F-102F-48B4-A60A-AA28461A96EF}:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Microsoft ISATAP Adapter #2
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter isatap.remote.local:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : remote.local
Description . . . . . . . . . . . : Microsoft ISATAP Adapter #3
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
Tunnel adapter isatap.mycorp.local:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : mycorp.local
Description . . . . . . . . . . . : Microsoft ISATAP Adapter #4
Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
完整route print
命令的输出是:
===========================================================================
Interface List
16...00 15 5d 14 20 0d ......Microsoft Hyper-V Network Adapter #3
13...00 15 5d 14 20 0e ......Microsoft Hyper-V Network Adapter #2
11...00 15 5d 14 20 0f ......Microsoft Hyper-V Network Adapter
28...........................VPN Remote
1...........................Software Loopback Interface 1
12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
14...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
15...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
17...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
18...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #4
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.66.254 192.168.66.11 100
77.245.100.10 255.255.255.255 192.168.66.254 192.168.66.11 101
127.0.0.0 255.0.0.0 On-link 127.0.0.1 306
127.0.0.1 255.255.255.255 On-link 127.0.0.1 306
127.255.255.255 255.255.255.255 On-link 127.0.0.1 306
169.254.0.0 255.255.0.0 On-link 169.254.155.23 261
169.254.155.23 255.255.255.255 On-link 169.254.155.23 261
169.254.255.255 255.255.255.255 On-link 169.254.155.23 261
172.16.0.0 255.255.0.0 172.16.110.240 172.16.110.243 10000
172.16.110.243 255.255.255.255 On-link 172.16.110.243 10255
192.168.10.0 255.255.255.0 On-link 192.168.10.30 257
192.168.10.30 255.255.255.255 On-link 192.168.10.30 257
192.168.10.255 255.255.255.255 On-link 192.168.10.30 257
192.168.66.0 255.255.255.0 On-link 192.168.66.11 356
192.168.66.11 255.255.255.255 On-link 192.168.66.11 356
192.168.66.255 255.255.255.255 On-link 192.168.66.11 356
224.0.0.0 240.0.0.0 On-link 127.0.0.1 306
224.0.0.0 240.0.0.0 On-link 192.168.10.30 257
224.0.0.0 240.0.0.0 On-link 192.168.66.11 356
224.0.0.0 240.0.0.0 On-link 169.254.155.23 261
224.0.0.0 240.0.0.0 On-link 172.16.110.243 10255
255.255.255.255 255.255.255.255 On-link 127.0.0.1 306
255.255.255.255 255.255.255.255 On-link 192.168.10.30 257
255.255.255.255 255.255.255.255 On-link 192.168.66.11 356
255.255.255.255 255.255.255.255 On-link 169.254.155.23 261
255.255.255.255 255.255.255.255 On-link 172.16.110.243 10255
===========================================================================
Persistent Routes:
None
IPv6 Route Table
===========================================================================
Active Routes:
If Metric Network Destination Gateway
13 356 ::/0 fe80::207:cbff:fe3c:5b7f
1 306 ::1/128 On-link
13 108 2a01:e35:8a84:7240::/64 On-link
13 356 2a01:e35:8a84:7240:c0eb:c8d1:9c3f:8fc0/128
On-link
16 257 fe80::/64 On-link
13 356 fe80::/64 On-link
11 261 fe80::/64 On-link
13 356 fe80::c0eb:c8d1:9c3f:8fc0/128
On-link
11 261 fe80::c551:f03f:7557:9b17/128
On-link
16 257 fe80::d117:9048:ce1c:1422/128
On-link
1 306 ff00::/8 On-link
16 257 ff00::/8 On-link
13 356 ff00::/8 On-link
11 261 ff00::/8 On-link
===========================================================================
Persistent Routes:
None
[编辑]跟进 TheCleaner 的评论。
klist purge
klist
输出:
Current LogonId is 0:0x6a9a3
Deleting all tickets:
Ticket(s) purged!
Current LogonId is 0:0x6a9a3
Cached Tickets: (0)
启动程序并尝试连接(Sql Management Studio)。成功后,然后:
sqlcmd -S sql -E -Q "select getdate()"
klist
输出:
Current LogonId is 0:0x6a9a3
Cached Tickets: (0)
建立VPN连接后,然后:
sqlcmd -S sql -E -Q "select getdate()"
klist
输出:
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login failed. The login is from an untrusted domain and cannot be used with Windows authentication..
当前 LogonId 为 0:0x6a9a3
Cached Tickets: (1)
#0> Client: steve @ mycorp.LOCAL
Server: krbtgt/mycorp.LOCAL @ mycorp.LOCAL
KerbTicket Encryption Type: RSADSI RC4-HMAC(NT)
Ticket Flags 0x40e00000 -> forwardable renewable initial pre_authent
Start Time: 8/12/2013 15:14:22 (local)
End Time: 8/13/2013 1:14:22 (local)
Renew Time: 8/19/2013 15:14:22 (local)
Session Key Type: RSADSI RC4-HMAC(NT)
[编辑2]后激活 Kerberos 事件日志记录,我得到了一个特定的事件日志:
A Kerberos Error Message was received:
on logon session
Client Time:
Server Time: 19:18:33.0000 8/12/2013 Z
Error Code: 0x7 KDC_ERR_S_PRINCIPAL_UNKNOWN
Extended Error:
Client Realm:
Client Name:
Server Realm: remote.LOCAL
Server Name: MSSQLSvc/sql:1433
Target Name: MSSQLSvc/sql:[email protected]
Error Text:
File: 9
Line: f09
Error Data is in record data.
如果你观察一下境界,你就会发现境界只不过mycorp.local
如此remote.local
。
答案1
我终于找到了解决这个问题的简单方法。
解决方案取自此 Technet 主题。
在 VPN 连接文件中将参数设置UseRasCredentials
为( ) 解决了该问题。0
.pbk
我推断这个参数告诉 Windows 不要使用 VPN 连接的凭据。然后每次我连接到远程网络中的某个东西时,我都必须输入我的登录名/密码,但我对此没意见。
正如帖子所说,请注意使用 GUI 编辑连接会将此参数重置为 1。
答案2
您的提示让我们找到了解决方案:CMDKEY /del /ras
在通过 Clavister OneConnect 连接 VPN 的 SQL SRV PC 上,同一域中的任何其他 PC 都无法访问 SQL Server(与您遇到相同的身份验证错误)。断开 VPN(在 SQL SRV PC 上),即可立即再次访问。但是,由于 Clavister OneConnect 不使用 rasdial/rasphone / *.rpb,我们不得不使用CMDKEY
基于解决方案。
答案3
传递给 SQL 服务器的是 VPN 凭证,而不是 mycorp.local 原始凭证(因为 Run As 有效)。
但不知道您是否可以强制它首先保留并传递原始凭据集而不是新获取的集成身份验证令牌...但我不这么认为,因为这实际上是Run As
传递另一组凭据的解决方法。
就我个人而言,创建一个Run As
在使用 VPN 时使用的快捷方式应该可以解决这个问题,但也许其他专家有更好的想法。