我无法从私有子网(a2 和 a3)连接到同一 VPC(10.0.4.0/16)内其他盒子上的公共子网(a1)

例如:ping -I ens6 10.0.4.71无法到达 10.0.4.71 主机。

我正在寻找如何修复上述路线的想法(^^^ ping)?

每个盒子有三个网络适配器。

网络配置:

BOX A (subnet a1/28, a2/28, a3/28)
BOX B (same as above)

(子网 a1 是公共的,a2 和 a3 是私有的。)

我只能连接到不同盒子上的其他子网,因此:
Box A: a1 --> Box B: a2
Box A: a2 --> Box B: a2
Box A: a2 --> Box B: a3

但不是

Box A: a2 --> Box B: a1

网络设置Box A

$ ip -4 a
2: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    inet 10.0.4.70/28 metric 100 brd 10.0.4.79 scope global dynamic ens5
3: ens6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    inet 10.0.4.86/28 metric 200 brd 10.0.4.95 scope global dynamic ens6

$ ip ro
default via 10.0.4.65 dev ens5 proto dhcp src 10.0.4.70 metric 100 
default via 10.0.4.81 dev ens6 proto dhcp src 10.0.4.86 metric 200 
10.0.4.2 via 10.0.4.65 dev ens5 proto dhcp src 10.0.4.70 metric 100 
10.0.4.2 via 10.0.4.81 dev ens6 proto dhcp src 10.0.4.86 metric 200 
10.0.4.64/28 dev ens5 proto kernel scope link src 10.0.4.70 metric 100 
10.0.4.65 dev ens5 proto dhcp scope link src 10.0.4.70 metric 100 
10.0.4.80/28 dev ens6 proto kernel scope link src 10.0.4.86 metric 200 
10.0.4.81 dev ens6 proto dhcp scope link src 10.0.4.86 metric 200 

$ ip ru
0:      from all lookup local
32765:  from 10.0.4.86 lookup 101 proto static
32766:  from all lookup main
32767:  from all lookup default

在 AWS 控制台路由中:

公共路由
10.0.4.64/28连接到 IGW,0.0.0.0/0 via local

私有路由
10.0.4.80/28 & 10.0.4.96/28连接到 NAT 和0.0.0.0/0 via local

问题示例:

从盒子 A:子网 a2(私有 10.0.4.80) ping 到盒子 B(子网 a1(公共 10.0.4.64))

ping -I ens6 10.0.4.71
PING 10.0.4.71 (10.0.4.71) from 10.0.4.86 ens6: 56(84) bytes of data.
^C   # <--- ping hangs, no response, so I force quit

但是从 Box A 公共子网 ping Box B 公共子网是可行的:

从盒子 A:子网 a1(10.0.4.70: 10.0.4.64/28) ping 到盒子 B(子网 a1(10.0.4.64/28))

ping 10.0.4.71
PING 10.0.4.71 (10.0.4.71) 56(84) bytes of data.
64 bytes from 10.0.4.71: icmp_seq=1 ttl=64 time=0.462 ms
64 bytes from 10.0.4.71: icmp_seq=2 ttl=64 time=0.452 ms
^C

Box A私有到Box B私有也有效:

从 Box A:sub a2(10.0.4.80) ping 到 box B (subnet a3 (10.0.4.96))


有效

ping -I ens6 10.0.4.103
PING 10.0.4.103 (10.0.4.103) from 10.0.4.86 ens6: 56(84) bytes of data.
64 bytes from 10.0.4.103: icmp_seq=1 ttl=64 time=0.431 ms
^C

盒子 A (a2) -> 盒子 B (a2) 有效

ping -I ens6 10.0.4.87
PING 10.0.4.87 (10.0.4.87) from 10.0.4.86 ens6: 56(84) bytes of data.
64 bytes from 10.0.4.87: icmp_seq=1 ttl=64 time=0.466 ms
^C

那么,我该如何修复:
ping -I ens6 10.0.4.71

2

  • 我读过你的帖子几次,但我觉得它很混乱。我建议你重写它,让它更简单易懂,更容易帮助你。


    – 

  • 感谢您的反馈。我的问题是,如何修复ping -I ens6 10.0.4.71。其余的是详细信息和示例。


    – 

0