Iptables下length模块可对数据包的大小进行匹配操作,拒绝非必要的数据进入。
length使用参数:
-m length --length num #匹配指定大小的数据
-m length ! --length num #匹配非指定大小数据
-m length --length num: #匹配大于或等于
-m length --length :92 #匹配小于或等于
-m length --length num:num #匹配指定区间
length应用示例:
iptables -I INPUT -p icmp --icmp-type 8 -m length --length :60 -j ACCEPT
#仅允许数据包小于或等于60字节的ping请求数据进入
PING测试Wwindows下ping默认发送32字节数据,包含IP、ICMP头28字节,共60字节。
ping www.haiyun.me
正在 Ping www.haiyun.me [184.164.141.188] 具有 32 字节的数据:
来自 184.164.141.188 的回复: 字节=32 时间=183ms TTL=51
来自 184.164.141.188 的回复: 字节=32 时间=212ms TTL=51
来自 184.164.141.188 的回复: 字节=32 时间=185ms TTL=51
来自 184.164.141.188 的回复: 字节=32 时间=178ms TTL=51
#默认可以PING通过,然后自定义数据大小PING
ping -l 40 www.haiyun.me
正在 Ping www.haiyun.me 具有 40 字节的数据:
请求超时。
请求超时。
请求超时。
请求超时。
#可见如果PING发送数据超过系统限制会拒绝数据包进入