【Linux命令】Linux上如何配置NAT地址转换表

  1. iptables -t nat -L -n 查看所有配置的nat规则

    [root@luobo root]# iptables -t nat -L -n
    Chain PREROUTING (policy ACCEPT)
    target     prot opt source               destination         
    
    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination         
    
    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination         
    
    Chain POSTROUTING (policy ACCEPT)
    target     prot opt source               destination         
    
    Chain oss_syslogcollector_ex (0 references)
    target     prot opt source               destination       

    -t table的缩写,表示对哪张表进行操作,有3种分别是filter、nat、mangle
    -L 列出所有规则

  2. iptables -t nat -A PREROUTING -d x.x.x.x -j DNAT –-to-destination y.y.y.y 表示将目的地址x.x.x.x修改为y.y.y.y
    -A 追加规则,与此规则相似的还有-D 删除、-R 修改、-I 插入、-L 查看、-N 新的规则
    -d 指定目的地址
    -j 指定所要进行的动作

    通常有:
    1)DROP:丢弃 
    2)REJECT:明示拒绝 
    3)ACCEPT:接受 
    4)SNAT:基于原地址的转换
    5)DNAT:基于目的地址的转换
    6)source--指定原地址

    DNAT表示目的地址发生变化,而与此相关的SNAT则表示源地址发生变化

执行完了第二条命令之后我们再使用iptables -t nat -L -n查看配置的NAT规则时,就会发现在PREPOSTING中多了一条,如下:

[root@luobo root]# iptables -t nat -L -n
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DNAT       all  --  0.0.0.0/0            x.x.x.x       to:y.y.y.y

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain oss_syslogcollector_ex (0 references)
target     prot opt source               destination         

如果我们错误的配置了NAT转换规则,我们可以使用命令iptables -t nat -D PREROUTING 1删除PREROUTING中第一条规则,也可以使用iptables -t nat -F PREROUTING清空PREROUTING下所有的规则。

iptables -t nat -D PREROUTING 1 是 iptables [-t table] -D chain rulenum 的一个具体的命令
iptables -t nat -F PREROUTING 是 iptables [-t table] {-F|-L|-Z} [chain [rulenum]] 
[options...]的一个具体命令

iptables操作原理:

源地址发送数据--> {PREROUTING-->INPUT-->OUTPUT-->POSTROUTING} -->目的地址接收到数据

你可能感兴趣的:(iptables,linux,linux-command)