因为docker在是通过这玩意管理网络的,做下笔记。

 

网上介绍有表的概念,但我没有找到。

输入命令

iptables -nvL

可以看到很多信息,特别是有docker的时候。找到关键字 “Chain”也就是链的意思(我理解就是一个组)

一般都换了一个行。

Chain下面就是规则,规则的模版都是一样,有这些列

pkts

对应规则匹配到的报文的个数

 

bytes

对应匹配到的报文包的大小总和

 

target     触发操作

意思是规则生效之后,进行怎样的处理。下面是对应的值的意思

ACCEPT:允许数据包通过。

DROP:直接丢弃数据包,不给任何回应信息,这时候客户端会感觉自己的请求泥牛入海了,过了超时时间才会有反应。

REJECT:拒绝数据包通过,必要时会给数据发送端一个响应的信息,客户端刚请求就会收到拒绝的信息。

SNAT:源地址转换,解决内网用户用同一个公网地址上网的问题。

MASQUERADE:是SNAT的一种特殊形式,适用于动态的、临时会变的ip上。

DNAT:目标地址转换。

REDIRECT:在本机做端口映射。

LOG:在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则,也就是说除了记录以外不对数据包做任何其他操作,仍然让下一条规则去匹配。

prot

表示规则对应的协议,是否只针对某些协议应用此规则

 

opt

表示规则对应的选项

 

in    

表示数据包由哪个接口(网卡)流入,我们可以设置通过哪块网卡流入的报文需要匹配当前规则

 

out    

表示数据包由哪个接口(网卡)流出,我们可以设置通过哪块网卡流出的报文需要匹配当前规则

 

source          

表示规则对应的源头地址,可以是一个IP,也可以是一个网段

destination  

表示规则对应的目标地址。可以是一个IP,也可以是一个网段