如下图所示,我目前有三个系统联网在一起:
Interface eno2
IP Addresses Assigned:
192.10.10.12───────────┐
│
│
│
│ ┌─────────────────────────┐
┌─────────────────────────┐ │ │ │
│ │ │ │ │
│ │ │ │ Computer C │
│ Computer A ├─┤ ETH INTERFACE ┌─┤ │
│ │ │◄───────────────────►│ │ │
│ ├─┘ ├─┤ │
│ │ │ │ │
│ │ │ └─────────────────────────┘
Interface enp134s0f1 └───────────┬──┬──────────┘ │
IP Addresses Assigned ├─▲┘ │
192.168.200.12 │ │ │
192.168.200.11 │ │ │
│ │ │ Interface eno1
───────────────────┘ │ └───────────────── IP Addresses Assigned:
│ 192.10.10.13
│ 192.168.200.13
│ 5.5.5.1
│
│ETH
Interface enp134s0f1 │INTERFACE
IP Addresses Assigned │
192.168.200.10 │
5.5.5.3 ────────────────────────┐ │
├─▼─┐
┌──────────┴───┴──────────┐
│ │
│ │
│ Computer B │
│ │
│ │
│ │
│ │
└─────────────────────────┘
目标是通过简单的 ping 和 ssh 会话在计算机 C 和计算机 B 之间实现双向通信。
对于计算机 B,我已将以下地址和路由添加到系统:
ip route add 192.168.200.0/24 via 192.168.200.12
ip route add 5.5.5.1/32 via 192.168.200.12
接口 enp134s0f1 分配的 IP 地址:
- 192.168.200.12
- 5.5.5.3
对于计算机 A,添加了以下地址和路由,并对 NAT 表进行了修改:
ip route add 192.168.200.13/32 via 192.10.10.12
ip route add 5.5.5.1/32 via 192.10.10.12
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eno2 -j SNAT --to-source 192.10.10.12
接口 eno2 分配的 IP 地址:
- 192.10.10.12
接口 enp134s0f1 分配的 IP 地址:
- 192.168.200.11
- 192.168.200.12
对于计算机 C,我已将以下地址和路由添加到系统:
ip addr add 5.5.5.1/24 dev eno1
ip addr add 192.168.200.13/24 dev eno1
ip route add 192.168.200.0/24 via 192.10.10.13 dev eno1
ip route add 5.5.5.0/24 via 192.10.10.13 dev eno1
接口 eno1 分配的 IP 地址:
- 192.10.10.13
- 192.168.200.13
- 5.5.5.1
我目前可以通过此网络配置从计算机 B 到计算机 C 进行以下方向的通信:
+------------+ PING or SSH +------------+ PING or SSH +------------+
| Computer B | ------------> | Computer A | ------------> | Computer C | ✓
+------------+ +------------+ +------------+
但是,我在相反方向进行 ping 或 ssh 会话时却没有任何效果。
+------------+ PING or SSH +------------+ PING or SSH +------------+
| Computer B | <------------ | Computer A | <------------ | Computer C | X
+------------+ +------------+ +------------+
每台计算机都运行不同版本的 Linux:
- 计算机A:Ubuntu 16.04 LTS
- 计算机B:CentOS7
- 计算机 C:Ubuntu 20.04 LTS
我不确定我对 NAT 规则的修改是否设置正确。