通过NAT 让内外服务器访问互联网
-
打开大服务器ip转发
sudo sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'设置大服务器内网转发规则
例如:内网192.168.1.3过来的要访问外网的报文都通过路由服务器的103.114.101.5 这个大网IP转发出去
sudo iptables -t nat -A POSTROUTING -s 192.168.1.3/24 -o eno0 -j SNAT --to 103.114.101.5设置内网的网络配置:
network:
ethernets:
eno1:
addresses: [192.168.1.3/24]
gateway4: 192.168.1.2
nameservers:
addresses: [8.8.8.8,114.114.114.114]
version: 2
将网关指向路由服务器的内网地址192.168.1.2
-
anneng@anneng-730xd:~$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default _gateway 0.0.0.0 UG 0 0 0 eno1
default _gateway 0.0.0.0 UG 0 0 0 eno1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eno1发现从内网ping baidu.com 不稳定 有丢包 查看路由表 发现有两个默认网关 删掉了一个 正常了
sudo route delete default -
服务器重启后 记得检查下网口名字 可能会变成eno1
sudo iptables -t nat -A POSTROUTING -s 192.168.1.3/24 -o eno1 -j SNAT --to 103.114.101.5
-
sudo iptables -t nat -L --line-numbers

删除某个rule
sudo iptables -t nat -D POSTROUTING 2