iptables有几个链、表及每个表的作用是啥?

iptables有5个链:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING。

iptables有4个表:Filter、NAT、Mangle、RAW。

Filter:主要和主机自身有关,真正负责主机防火墙功能(过滤流入流出主机的数据包)。filter表是iptables默认使用的表。filter定义了三个链(chains):

INPUT:负责过滤所有目标地址是本机地址的数据包,通俗的讲,就是过滤进入主机的数据包

FORWARD:负责转发流经主机的数据包。起转发的作用,和nat关系很大,

OUTPUT:处理所有源地址是本机地址的数据包,通俗的讲,就是处理从主机发出去的数据包

对于filter表的控制是实现本机防火墙功能的重要手段,特别是对INPUT链的控制。

NAT:负责网络地址转换,即来源与目的ip地址的port的转换,一般用于局域网共享上网或特殊的端口转换服务相关,nat功能就相当于网络的acl控制。。nat定义了三个链(chains):

OUTPUT:和主机发出去的数据包有关,改变主机发出数据包的目标地址。

PREROUTING:在数据包到达防火墙时进行路由判断之前执行的规则。作用时改变数据包的目的地址,目的端口等。

POSTROUTING:在数据包离开防火墙时进行路由判断之后执行的规则,作用改变数据包的源地址,源端口等。

RAW:RAW表只使用在PREROUTING链和OUTPUT链上,因为优先级最高,从而可以对收到的数据包在连接跟踪前进行处理。一但用户使用了RAW表,在某个链上,RAW表处理完后,将跳过NAT表和 ip_conntrack处理,即不再做地址转换和数据包的链接跟踪处理了。RAW表可以应用在那些不需要做nat的情况下,以提高性能。如大量访问的web服务器,可以让80端口不再让iptables做数据包的链接跟踪处理,以提高用户的访问速度。

Mangle:实现流量整形,主要用于修改数据包的ToS( Type of Service ,服务类型)、TTL(Time toLive,生存周期)以及为数据包设置 Mark 标记,以实现 QoS(Quality of Service,服务质量)调整以及策略路由等应用。

  • 17
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cherry@kerry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值