我做了一件非常简单的事。或者说我是这样认为的...
我已经在 TMG(或 ISA,它们非常相似)中设置了 VPN 客户端访问。我在 AD 中创建了一个名为 VPN 的组,将其添加为 TMG 中允许的 VPN 用户,为 VPN 客户端设置了 IP 范围(192.168.6.0-192.168.6.255),并在 TMG 上添加了 VPN 客户端和内部网络之间的网络规则路由(192.168.5.0-192.168.5.255)。我还在防火墙策略中添加了 VPN 客户端和内部网络之间的“允许所有”规则。
我的问题:我使用 PPTP 连接(也在 TMG 中设置)从运行 Windows 7 的客户端连接到此网络。我可以无错误地登录,但是当我尝试联系内部网络上的任何服务器时,我都没有得到任何响应。因此,我自然做了很多故障排除(TMG 上的日志中没有显示任何内容,任何地方都没有拒绝访问),但没有成功。
后来,我尝试使用手机连接 VPN,并使用手机上的 RDP 客户端联系内部网络上的服务器。成功了!
我尝试在另一个物理位置使用另一个 Windows 7 工作站,但使用它我甚至无法登录 VPN。
在另一个物理位置的另一个工作站,我可以登录并访问内部网络。
是什么原因导致了这些差异?为什么它在某些地方有效,但在其他地方却无效,并且出现不同的错误?
提前致谢!
答案1
您可能遇到了多个问题。其中一个问题可能源自实际到达 VPN 服务器的 GRE 流量,另一个问题可能是 IP 路由问题。
PPTP 的问题通常是由 NAT 设备或防火墙处理包含封装的 PPP 流量的 GRE 数据包引起的。
通常,我在排除 PPTP 问题时会嗅探 VPN 服务器和客户端的流量。这样我就可以观察到 GRE 流量确实在客户端和服务器之间流动。您遇到的“甚至无法登录 VPN”的机器问题可能是 GRE 转发或 GRE 数据包的 NAT 问题。
“已连接”客户端无法访问网络资源的问题通常是路由问题。查看“已连接”客户端的路由表,看看发往远程 LAN 的数据包将如何路由。通常,如果在客户端的“高级”TCP/IP 属性中勾选了默认的“在远程网络上使用默认网关”选项,则这不是问题,但如果您已禁用该选项,则可能需要在客户端连接后明确添加路由,以便将流量路由到远程 LAN 而不是 Internet。(Windows 7 之前的 Windows 版本在取消勾选“在远程网络上使用默认网关”选项时会向远程网络添加“有类”路由。Windows 7 是第一个允许您关闭该行为的 Windows 版本。)