基本布局:
- VPC 的 IP 范围为 10.0.0.0/16
- 子网 10.0.0.0/24 上有 2 个 EC2
- 首先使用 RRAS 向 VPN 客户端提供 IP 地址(范围 10.0.4.0/24)
- 第二台只是一台接收 ping 的测试机器
- 与本问题无关的其他子网10.0.1.0/24等
IP 地址:
RRAS Server LAN side: 10.0.0.5
Test machine: 10.0.0.6
RRAS Server VPN Side: 10.0.4.10
Client #1: 10.0.4.11
VPN规格:
远程客户端只能使用 VPN 访问 10.0.0.0/24 子网上的计算机,而不能通过 VPN 浏览互联网。这将要求客户端设置拆分隧道,这是可以的。
问题:
当前的问题在于,我无法让 ping 数据包到达我想要的位置。我在两台机器上都设置了 Wireshark,但数据包就是无法到达测试机器。
Ping 示例:
Client #1:
a. ping 10.0.0.5 [success]
b. ping 10.0.4.10 [success]
c. ping 10.0.0.6 [fail]
我ping c
在 RRAS 端的 Wireshark 中看到了 ping,但在测试机器上从未收到过。Wireshark 给出错误:“未找到响应!”
我认为我错误配置了 VPC,因此来自 10.0.4.0/24 子网的数据包可能是:
- 由于来自意外子网而被 VPC 丢弃,或者
- 没有路由来告诉 VPC 将它们发送到哪里,所以它们只是迷路了
通过启用公共 NAT 我已经能够使其正常工作,但是我们不希望所有员工都通过此 VPN 连接到互联网并产生大量的数据传输费用。
答案1
事实证明我只需要在 EC2 控制台中禁用源/目标检查。
可以通过选择 EC2 实例,然后从“操作”菜单中选择“网络”>“更改源/目标检查”来完成此操作
编辑:
其他一些改变包括
- VPN 子网更改为 10.1.0.0/24(VPC 之外)
- 已添加到 VPC 的路由将 10.1.0.0/24 指向 VPN 实例