如何从linux中的iptable检查PREROUTING列表?

Joh*_*yle 13 linux iptables

我在iptable中添加了数据包转发规则,我
sudo iptables -t nat -A PREROUTING -p tcp --dport 1111 -j DNAT --to-destination 10.0.3.126:80
可以看到进入端口1111的数据包被正确转发到10.0.3.126:80.但是,如果我列出规则,我看不到我添加的规则.

sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:bootps
ACCEPT     udp  --  anywhere             anywhere             udp dpt:bootps

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Run Code Online (Sandbox Code Playgroud)

如何查看我添加的规则?先感谢您.

小智 25

使用iptables -L -n -t nat命令
因为PREROUTING链是NAT规则的一部分

  • PREROUTING是一个阶段,NAT是表,关系是PREROUTING有一个链的NAT表,链有规则。需要添加`-t nat`的原因是`与其他所有iptables命令一样,它适用于指定的表(过滤器是默认的)`,请参阅https://linux.die.net/man/8/iptables (3认同)