实现不同网段进行通信
实验准备
- 两台私网Ubuntu系统机器;
- 一台公网Ubuntu系统机器;
- VPN测试工具,点这里下载;
实验配置
| 角色 |
私有IPv4地址 |
公有IPv4地址 |
端口 |
| 客户端C1 |
10.0.1.2 |
随机 |
随机 |
| 客户端C2 |
10.0.2.2 |
随机 |
随机 |
| 服务端S1 |
10.0.1.1 |
111.229.8.201 |
5001 |
| 服务端S2 |
10.0.2.1 |
111.229.8.201 |
5002 |
实验拓扑图

服务端S1配置
./simpletun -i tap1 -s -p 5001 -u -d
ip addr add 10.0.1.1/24 dev tap1
ip link set tap1 up
服务端S2配置
./simpletun -i tap2 -s -p 5002 -u -d
ip addr add 10.0.2.1/24 dev tap2
ip link set tap2 up
开启内核转发
echo 1 > /proc/sys/net/ipv4/ip_forward
创建网桥
# 创建网桥
brctl addbr br0
# 添加网卡到网桥
brctl addif br0 tap1
brctl addif br0 tap2
# 取消网卡ip地址
ifconfig tap1 0.0.0.0
ifconfig tap2 0.0.0.0
# 设置网桥ip地址
ifconfig br0 192.168.1.1
# 关闭STP(生成树协议)
brctl stp br0 off
# 查看己有网桥
brctl show
客户端C1配置
sudo ./simpletun -i tap1 -c 111.229.8.201 -p 5001 -u -d
sudo ip addr add 10.0.1.2/24 dev tap1
sudo ip link set tap1 up
sudo route add -net 10.0.2.0/24 dev tap1
客户端C2配置
sudo ./simpletun -i tap2 -c 111.229.8.201 -p 5002 -u -d
ip addr add 10.0.2.2/24 dev tap2
ip link set tap2 up
sudo route add -net 10.0.1.0/24 dev tap2
其它
# 抓包
tcpdump -i tap1 -nn
# 显示路由表
ip route show
# route -n