这是我第一次在这里发帖,所以请保持温柔。标题描述了我的问题,我将概述设置:
我在相距 100 英里的两个办公室中设置了站点到站点的双向 VPN 隧道。站点 A 运行 Watchguard Firebox x20e,站点 B 运行 Cisco ASA 5500(或类似设备)。
我已经成功在它们两者之间建立了隧道,这样当您在任一内部网络中时,您都可以 ping 并访问对面的网络。
但是,当我通过 VPN 完全连接到场外(例如,在家里)的任何一个网络时,我看不到对面的网络,但我能够毫无问题地看到通过 VPN 连接到的内部网络。
答案1
VPN 连接到站点 A,打开命令提示符并输入:
tracert -d 192.168.0.2
您会看到流量尝试到达站点 B 时所经过的所有路由器的列表(这需要一段时间才能建立)。第一跳应该是 192.168.10.1,即站点 A 的路由器。如果第一跳是到您 PC 的常用默认网关,那么您需要修改 PC 上的路由规则。如果第一跳是 192.168.10.1,但其余跳数超时,那么您需要修改路由器配置。
稍微展开一下(如果您已经了解这些内容,请耐心听我说!),假设您的 PC 的 IP 地址为 192.168.16.2,默认网关为 192.168.16.1(您可以输入 ipconfig 来获取此信息)。当您 ping 任何非 192.168.16.xxx 的地址时,流量将被路由到您的网关 192.168.1.1。
当您连接 VPN 时,您可能会获得第二个 IP 地址 192.168.10.something;实际上,VPN 会创建第二个网卡。如果您 ping 192.168.10.1(即站点 A 路由器),则它现在是一个本地地址,因此不涉及网关,站点 A 路由器应该会回复。现在 ping 192.168.0.1(站点 B 路由器)。此地址不在您的实际 NIC(192.168.16.xxx)或 VPN 虚拟 NIC(192.168.10.xxx)的本地网络中,因此数据包将转到默认网关 192.168.16.1。默认网关可能是您的 ADSL 路由器,因此数据包消失在互联网中并丢失。因此您无法 ping 站点 B。
现在,有些 VPN 会在您连接时更改默认网关。在这种情况下,默认网关将是 192.168.10.something,因此当您 ping 192.168.0.xxx 时,数据包应该会流经 VPN,您应该能够 ping 站点 B。
我似乎有些抱怨,但重点是 tracert 会快速地告诉你对站点 B 的 ping 去了哪里并给你一些关于哪里出了问题的线索。
JR
答案2
问题可能出在两个方面……也可能是两者兼而有之。
路由问题: 如果您的 VPN 子网与您通过 VPN 连接的站点不同,您需要告诉站点 b 的设备将流量路由回该子网的站点 a。
防火墙问题: 就像路线一样,交通需要被允许。
答案3
您必须设置路由器以允许来自 VPN 子网的流量通过隧道。