我们办公室里有一台 SQL Server,我经常连接它。没有问题。
我们现在有一个客户,我们需要使用 Windows VPN 软件连接到其 VPN。但是当我连接到 VPN 时,我无法再连接到我们的本地 SQL 服务器。
我已确保 VPN 连接的“在远程网络上使用默认网关”复选框对于 IPv4 和 IPv6 均已关闭,因此我应该能够访问我的本地 LAN 资源。我知道这至少部分可行,因为我可以通过 RDP 访问我们的本地服务器。
但是出于某种原因,我无法通过 Sql Server Manager 或 Sql Delta 连接到我们的本地 Sql Server。我尝试通过 DNS 名称和 IP 地址进行连接,无论是否,1433
在终端。
如果按名称而不按端口,我会收到常见的“无法找到网络资源,请确保已启用远程连接”消息。当我尝试按 IP 或按名称和端口进行操作时,我会收到以下错误:
有人能告诉我如何解决这个问题吗?我正在尝试进行设置,以便当我们需要推动更改时,我可以使用 Sql Delta 生成更改脚本并快速完成,而不必每次都备份/压缩/复制/解压缩/恢复整个数据库。
我正在使用 Windows 8。谢谢!
根据要求,这是我的路线表...
C:\>route print
===========================================================================
Interface List
35...........................FBS
19...0c 60 76 37 fd 80 ......Microsoft Hosted Network Virtual Adapter
13...00 26 b9 6f d3 84 ......NVIDIA nForce Networking Controller
12...0c 60 76 37 fd 80 ......Dell Wireless 1510 Wireless-N WLAN Mini-Card
1...........................Software Loopback Interface 1
15...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
16...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
17...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.104 25
10.0.0.0 255.0.0.0 10.3.82.40 10.3.82.42 26
10.3.82.42 255.255.255.255 On-link 10.3.82.42 281
66.134.25.226 255.255.255.255 192.168.1.1 192.168.1.104 26
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
192.168.1.0 255.255.255.0 On-link 192.168.1.104 281
192.168.1.104 255.255.255.255 On-link 192.168.1.104 281
192.168.1.255 255.255.255.255 On-link 192.168.1.104 281
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.1.104 281
224.0.0.0 240.0.0.0 On-link 10.3.82.42 281
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.1.104 281
255.255.255.255 255.255.255.255 On-link 10.3.82.42 281
===========================================================================
Persistent Routes:
None
IPv6 Route Table
===========================================================================
Active Routes:
If Metric Network Destination Gateway
1 306 ::1/128 On-link
1 306 ff00::/8 On-link
===========================================================================
Persistent Routes:
None
C:\>
我是一名开发人员,所以软件才是我的强项。对于任何更高级的网络,我都有点不熟悉,所以我不确定该怎么做。
答案1
从您的路由表来看,您的主网关似乎位于 192.168.1.0 网络中,而远程网络(通过 VPN 访问的网络)则位于 10.0.0.0。但您还告诉我们,几乎所有(本地)服务器都在 10.0.0.0 范围内。由此可见,存在 IP 地址冲突:通过 VPN 连接时,所有发往 10.0.0.0 的数据包都会通过 VPN 路由到远程 LAN,即使是发往本地 sql 服务器的数据包也是如此。
如果 SQL 服务器位于 10.3.82.0 网络中,我认为这是可通过 VPN 访问的远程 LAN(如果我弄错了,请纠正),那么您将无能为力。如果服务器不在 10.3.82.0 网络中,那么在建立 VPN 连接后给出的以下命令将解决您的问题:
route delete 10.0.0.0
route ADD 10.3.82.0 MASK 255.255.255.0 10.3.82.40
route ADD 10.0.0.0 MASK 255.0.0.0 192.168.1.1
这些路线之间显然存在冲突,但不必担心:更严格的规则总是优先于更大的规则,从而产生正确的结果。
答案2
尝试执行以下操作:
找到包含您拨打的条目的 .pbk 文件。在我的例子中,它是
C:\Users\<user>\AppData\Roaming\Microsoft\Network\Connections\Pbk
在记事本中打开该文件。
找到使用RasCredentials = 1入口
更改1到0->使用RasCredentials = 0
保存并关闭记事本
补充一下:我不知道你有多少个 VPN 连接(我有一个),但如果你有多个,你需要找到所有实例使用RasCredentials = 1并将其更改为使用RasCredentials = 0。每个 VPN 连接在其部分的开头都以 [VPN 连接名称] 格式命名