tcpdump和iptables
【摘要】 有一个问题,如果用iptables做了包过滤,那么用抓包工具(比如tcpdump)是否还能抓到包了?答案是:可以、也不可以。看包的传递方向。这其中的理由来说一说。数据包一般的传输路径依次是网卡 > 设备驱动层 > 数据链路层 > 网络层 > 传输层最后到达应用程序。而包捕获机制是在数据链路层增加一个旁路处理,对发送和接收到的数据包做过滤、缓冲等相关处理。包捕获机制并不影响操作系统对数据包的网...
有一个问题,如果用iptables做了包过滤,那么用抓包工具(比如tcpdump)是否还能抓到包了?
答案是:可以、也不可以。看包的传递方向。
这其中的理由来说一说。
数据包一般的传输路径依次是网卡 > 设备驱动层 > 数据链路层 > 网络层 > 传输层最后到达应用程序。而包捕获机制是在数据链路层
增加一个旁路处理,对发送和接收到的数据包做过滤、缓冲等相关处理。
包捕获机制并不影响操作系统对数据包的网络栈处理。
包过滤用的iptables,从名字来看,我们知道他是在网络层做的处理。
所以,如果是接收到的包,那么是先经过抓包工具的处理,再进入iptables的处理,这个时候是可以抓到包的。
而如果是发送出去的包,那么先经过iptables的处理(比如这里我们是将包DROP掉),再在进入抓包工具的处理,这个时候是抓不到包的。
举例如下:
A 10.0.0.27 ; B 192.168.0.37
B -> A:222 即B访问A的222端口,访问正常
现在加上规则,访问都是被阻断了
- A: iptables -I INPUT -p tcp --dport 222 -j DROP
- A: tcpdump可以抓到收到的包
- B: iptables -I OUTPUT -p tcp --dport 222 -j DROP
- B: tcpdump抓不到要发出的包
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)