我正在尝试创建一个简单的 VPN 中心辐射型拓扑。我已经取得了很大进展,我希望下图能够描述我迄今为止所构建的内容:
如您所见,中心是运行 RRAS 的 Windows Server 2008 R2 机箱。辐条要么是 Dreytek 路由器,后面是 LAN 上的多台 PC(或其他设备),要么是直接拨入服务器的 PC。所有这些都按预期工作,除了辐条上的任何 LAN 设备都无法与其他辐条上的设备通信这一事实。例如,直接拨入的 PC(192.168.1.11)无法与 192.168.3.1 或 192.168.10.1 通信。
我已尝试过并有效的事情:
- 所有 LAN 设备都可以 ping 通任何 VPN 地址(例如,直接拨入的 PC 可以 ping 通 10.0.0.1、10.0.0.4 和 10.0.0.5)。
- 我已经在 Draytek 路由器上启用了 Syslog,并且当 ping 路由器的 10.0.0.x 地址时,可以看到通过防火墙的 ICMP 流量(例如,如果我从直接拨入 PC ping 10.0.0.5,我可以看到防火墙允许 ping)。
- 我已经为 Dreytek 路由器添加了静态路由(例如,在 10.0.0.5 路由器上,我已通过 10.0.0.1 添加了 192.168.1.0 / 24 和 192.168.3.0 / 24 路由)。
- 我已通过 10.0.0.4 为 192.168.3.0 / 24 和通过 10.0.0.5 为 192.168.10.0 / 24 添加了直接拨入 PC 的静态路由
- 我已在辐条末端为每个 LAN 添加了到服务器的静态路由(例如,我添加了一条路由,使 192.168.1.0 / 24 通过 10.0.0.2 进行路由,以及一条路由,使 192.168.10.0 / 24 通过 10.0.0.5 进行路由)。我无法保留这些路由,以便在 VPN 连接断开并重新连接时重新建立这些路由。
不起作用的事情:
- 服务器无法 ping 任何 LAN PC(例如,无法 ping 192.168.10.1 或 192.168.10.2 等)。路由器上的 Syslog 未看到任何 ICMP 流量。
- 客户端 PC 无法 ping 通任何远程 PC(例如,192.168.10.x PC 无法 ping 通 192.168.3.x PC 或 192.168.1.11 的直接拨入客户端)。
如果使用tracert或者路径平移,看起来流量确实试图通过服务器,但始终无法到达那里。例如:
C:\Users\Administrator>pathping -n 192.168.10.2
Tracing route to 192.168.10.2 over a maximum of 30 hops
0 10.0.0.1
1 10.0.0.5
2 * * *
我真的不知道下一步该怎么做。一定可以让它工作……我找到了很多关于这个主题的文章,但似乎没有一篇解决这个特定问题。所以我想我的主要问题是:
- 我缺少什么才能使远程 LAN PC 能够相互通信?
- 我需要做什么才能将通过 VPN 客户端到其 LAN 的路由保留下来?
- 我可以完全避免使用静态路由并使用动态路由吗?我尝试过使用 RIP,但 RIP 多播通过 VPN 进入(我使用 Wireshark 看到过这种情况),我无法在“内部接口”上创建 RIP。
我有一个想法...问题可能与 IPv6 有关吗?我在试验时尝试使用 Microsoft Fixit 50409 禁用它。执行此操作后,路由器和直接拨入 W7 客户端都无法建立 VPN 连接,直到我重新启用它...我曾假设所有流量都是 IPv4,但也许我错了?
非常感谢!
编辑:回应 Stephane 的评论,这里是网络中各个组件的路由表...
服务器:
C:\Users\Administrator>route print -4
===========================================================================
Interface List
18...........................RAS (Dial In) Interface
11...00 15 5d 2f 4d 2d ......Microsoft Virtual Machine Bus Network Adapter
1...........................Software Loopback Interface 1
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 109.228.20.1 109.228.20.174 6
10.0.0.1 255.255.255.255 On-link 10.0.0.1 276
10.0.0.2 255.255.255.255 10.0.0.2 10.0.0.1 21
10.0.0.4 255.255.255.255 10.0.0.4 10.0.0.1 21
10.0.0.5 255.255.255.255 10.0.0.5 10.0.0.1 21
109.228.20.0 255.255.252.0 On-link 109.228.20.174 261
109.228.20.174 255.255.255.255 On-link 109.228.20.174 261
109.228.23.255 255.255.255.255 On-link 109.228.20.174 261
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.11 255.255.255.255 10.0.0.2 10.0.0.1 21
192.168.3.0 255.255.255.0 10.0.0.4 10.0.0.1 21
192.168.10.0 255.255.255.0 10.0.0.5 10.0.0.1 21
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 109.228.20.174 261
224.0.0.0 240.0.0.0 On-link 10.0.0.1 276
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 109.228.20.174 261
255.255.255.255 255.255.255.255 On-link 10.0.0.1 276
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
0.0.0.0 0.0.0.0 109.228.20.1 1
===========================================================================
笔记:我遇到的一个问题是每次 VPN 客户端连接时,我都必须手动添加 192.168.1.11、192.168.3.0/24 和 192.168.10.0/24 的路由。这显然是一个严重的问题,因为我必须能够保留这些路由,但也许这是不可能的?
Windows 7 客户端:
C:\Windows\system32>route print -4
===========================================================================
Interface List
26...........................CodeArt Consulting VPN
17...90 b1 1c 67 94 d4 ......Realtek PCIe GBE Family Controller
13...68 94 23 36 83 ba ......Bluetooth Device (Personal Area Network)
1...........................Software Loopback Interface 1
11...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
16...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
15...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
18...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
===========================================================================
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.11 10
10.0.0.0 255.0.0.0 10.0.0.1 10.0.0.2 11
10.0.0.2 255.255.255.255 On-link 10.0.0.2 266
109.228.20.174 255.255.255.255 192.168.1.1 192.168.1.11 11
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.11 266
192.168.1.11 255.255.255.255 On-link 192.168.1.11 266
192.168.1.255 255.255.255.255 On-link 192.168.1.11 266
192.168.3.0 255.255.255.0 10.0.0.1 10.0.0.2 11
192.168.10.0 255.255.255.0 10.0.0.1 10.0.0.2 11
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.11 266
224.0.0.0 240.0.0.0 On-link 10.0.0.2 266
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.11 266
255.255.255.255 255.255.255.255 On-link 10.0.0.2 266
===========================================================================
Persistent Routes:
None
笔记:我已手动将路由器添加到 192.168.3.0/24 和 192.168.10.0/24。
路由器 10.0.0.5 / 192.168.10.0/24:
Key: C - connected, S - static, R - RIP, * - default, ~ - private
* 0.0.0.0/ 0.0.0.0 via 188.30.37.17 WAN2
C 10.0.0.1/ 255.255.255.255 directly connected VPN-1
S 10.0.0.0/ 255.255.255.0 via 10.0.0.1 VPN-1
C~ 192.168.10.0/ 255.255.255.0 directly connected LAN
S 192.168.1.0/ 255.255.255.0 via 10.0.0.1 VPN-1
S 192.168.3.0/ 255.255.255.0 via 10.0.0.1 VPN-1
S 188.30.37.17/ 255.255.255.255 via 188.30.37.17 WAN2
笔记:到 192.168.1.0/24 和 192.168.3.0/24 的静态路由已添加到路由器,并按预期持续存在。
据我所知,所有路线均正确无误,但当然可能存在错误或缺失某些内容......
答案1
我已经能够解决这个问题。
问题在于我已将路由器配置为使用 NAT 进行 VPN 连接。将其更改为完全路由解决了该问题,因为所有路由信息都是正确的。每个分支上的 LAN 上的设备现在可以相互通信。
干杯,
本