iptables可(ke)以認為是(shi)一種防(fang)火墻,可(ke)以攔截(jie)、轉發特定包
*:它和firewall是同一(yi)角色,都是操作內核對網絡的配(pei)置(zhi)。所以(yi)在iptables和firewall同時配(pei)置(zhi)時,配(pei)置(zhi)均生效
iptables內(nei)的“四(si)表五鏈”邏輯

我們可以在 FORWARD chain中配置轉發
1、配置UDP轉(zhuan)發
轉發10000端口的(de)udp包(bao)至172.16.0.1機(ji)器
sudo iptables -t nat -A PREROUTING -p udp --dport 10000 -j DNAT --to-destination 172.16.0.1:10000   
sudo iptables -t nat -A POSTROUTING -p udp --dport 10000 -d 172.16.0.1 -j MASQUERADE   
sudo iptables -I FORWARD -p udp --dport 10000 -d 172.16.0.1 -j ACCEPT     # 允許本機轉至172.16.0.1的規則
sudo iptables -I FORWARD -p udp --sport 10000 -s 172.16.0.1 -j ACCEPT      # 允許源ip為172.16.0.1的轉發參數解析:
-t 表nat
-A 添加(jia)規則,添加(jia)至表尾(wei)
-I 插入(ru)規則,插入(ru)至(zhi)表(biao)頭
-p 協議
--dport 目標端(duan)口
--sport 源端(duan)口
-j 操作
-d 目標ip
-s 源ip
2、配置TCP轉發
與udp類似,將(jiang)-p參數(shu)改為tcp即可
sudo iptables -t nat -A PREROUTING -p tcp --dport 1555 -j DNAT --to-destination 172.16.0.1:1555
sudo iptables -t nat -A POSTROUTING -p tcp --dport 1555 -d 172.16.0.1 -j MASQUERADE
sudo iptables -I FORWARD -p tcp --dport 1555 -d 172.16.0.1 -j ACCEPT
sudo iptables -I FORWARD -p tcp --sport 1555 -s 172.16.0.1 -j ACCEPT
3、iptables配置持久化
sudo systemctl status iptables   #查看服務是否已安裝
sudo yum install iptables-services   #安裝服務
#開啟iptables服務前,用命令sudo service iptables save保存一下當前配置,否則可能會被覆蓋
sudo service iptables save
sudo systemctl start iptables
sudo service iptables save
sudo cat /etc/sysconfig/iptables至此,iptables配(pei)置(zhi)全部持久化(hua),每(mei)次重啟機器,iptables service會讀(du)取 /etc/sysconfig/iptables 下的配(pei)置(zhi)并加載