服務端
- 開啓IP轉發
sudo vim /etc/sysctl.conf
# Uncomment the next line to enable packet forwarding for IPv4
# 去掉#號
net.ipv4.ip_forward=1
立即生效
sysctl -p
- 設置iptables規則
iptables -t nat -A POSTROUTING -j MASQUERADE
若出現can't initialize iptables table nat': Table does not exist
第一種
如果說nat名字是大寫的NAT 試試iptables -tnat -L
原因是如果使用命令iptables -tNAT -L 是沒有NAT表的也會出現這個錯誤
第二種:
該錯誤完整應該是這樣的:
can’t initialize iptables table `nat’: Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
首先
[root@localhost ~]# modprobe -l|grep iptable_nat
kernel/net/ipv4/netfilter/iptable_nat.ko
[root@localhost ~]#
嘗試如下操作
[root@localhost ~]# modinfo iptable_nat
filename: /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv4/netfilter/iptable_nat.ko
alias: ip_nat
license: GPL
srcversion: 507BCAD1E3A207FDF875EEC
depends: ip_tables,nf_conntrack_ipv4,nf_nat,nf_conntrack
vermagic: 2.6.32-431.el6.x86_64 SMP mod_unload modversions
[root@localhost ~]# insmod /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv4/netfilter/iptable_nat.ko
insmod:error inserting ‘iptable_nat.ko’:-1 unknown symbol in module
[root@localhost ~]# modprobe iptable_nat
[root@localhost ~]#
即可
第三種情況:
[root@localhost ~]# ll /lib/modules/
total 4
drwxr-xr-x. 8 root root 4096 Mar 7 11:11 2.6.32-431.el6.x86_64
[root@localhost ~]#
[root@localhost ~]# uname -r
2.6.32-431.el6.x86_64
[root@localhost ~]#
參考文章
https://blog.51cto.com/qidai/1835782
https://blog.csdn.net/xyyangkun/article/details/9010249