iptables的基础知识-iptables中的ICMP

运维 系统运维
iptables的基础知识-iptables中的ICMP:iptabels被认为是Linux中实现包过滤功能的第四代应用程序。iptables包含在Linux2.4以后的内核中,它可以实现iptables防火墙、NAT(网络地址翻译)和数据包的分割等功能。本文介绍的是iptables的基础知识-iptables中的ICMP。

iptables的基础知识-iptables中的ICMP

  在iptables看来,只有四种ICMP分组,以下分组类型可以被归为NEW、ESTABLISHED

  ECHO请求(ping,8)和ECHO应答(ping,0)

  时间戳请求(13)和应答(14)

  信息请求(15)和应答(16)

  地址掩码请求(17)和应答(18)

  这些ICMP分组类型中,请求分组属于NEW,应答分组属于ESTABLISHED。而其它类型的ICMP分组不基于请求/应答方式,一律被归入RELATED。

  我们先看一个简单的iptables例子:

  1.   iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED, RELATED -j ACCEPT  
  2.  
  3.   iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT  
  4.  

  这链条规则进行如下的iptables过滤:

  一个ICMP echo请求是一个NEW连接。因此,允许ICMP echo请求通过OUTPUT链。

  当请求的应答返回,由于iptables两个方向上都发包了,此时连接的状态是ESTABLISED,因此允许通过INPUT链。而INPUT链没有NEW状态,因此不允许echo请求通过INPUT链。也就是说,这两条规则允许内部主机ping外部主机,而不允许外部主机ping内部主机。

  一个重定向ICMP(5)分组不是基于请求/应答方式的,因此属于RELATED。INPUT和OUTPUT链都允许RELATED状态的连接,因此重定向(5)分组可以通过INPUT和OUTPUT链。

  上一节:iptables中TCP三次握手 下一节:iptables中包的转发过程。 

【编辑推荐】

IPtables防火墙使用技巧(超实用)

Linux下Iptables端口转发功能的解决

四种NAT的iptables实现

责任编辑:zhaolei 来源: netren
相关推荐

2011-03-18 09:26:13

Iptables规则

2011-03-16 11:12:06

Iptables

2011-03-16 11:15:12

2011-03-18 08:52:23

Iptables

2011-03-18 09:26:14

iptableslimit

2011-03-16 11:06:55

Iptables防火墙

2011-03-18 09:26:13

IptablesTOS

2010-08-02 16:20:31

ICMP协议

2023-07-14 15:10:17

PythonAsyncIO库

2011-03-14 14:40:11

iptables编译

2013-10-22 15:48:35

2011-03-16 09:05:34

iptablesnat

2023-07-04 07:31:06

MapReduce数据处理编程模型

2011-03-16 14:38:55

iptables命令

2011-03-16 14:55:36

关闭iptables

2011-03-15 09:59:54

2011-03-14 15:17:40

iptables设定

2011-03-15 09:59:54

2011-03-16 09:30:47

iptables过滤

2021-11-05 15:31:01

UbuntuLinux
点赞
收藏

51CTO技术栈公众号