【发布时间】:2015-01-20 10:21:49
【问题描述】:
我试图通过在端口 22、53 和 80 上向我的本地路由器发送 TCP / IP 数据包来了解 Scapy 的工作原理。端口 53 和 80 是开放的 - 22 是关闭的:
p = sr(IP(dst="192.168.1.1")/TCP(dport=[22, 53, 80]))
Begin emission:
.*Finished to send 3 packets.
.................................................
.................................................
.................................................
etc
.........................................^C
Received 24571 packets, got 2 answers, remaining 1 packets
如果我只是将数据包发送到端口 53 和 80 - 不会出现问题:
In [5]: p = sr(IP(dst="192.168.1.1")/TCP(dport=[53, 80]))
Begin emission:
.*Finished to send 2 packets.
*
Received 3 packets, got 2 answers, remaining 0 packets
Scapy 版本 -> 2.3.1(最新)
- 如何处理 Scapy 中的封闭端口?
- 为什么我收到这么多答案?
更新
感谢@pss的评论,这里是使用过滤器host 192.168.1.1捕获的wireshark数据:
In [28]: p = sr(IP(dst="192.168.1.1")/TCP(dport=[53, 80, 1111]))
Begin emission:
.**Finished to send 3 packets.
..........................................
..........................................
..........................................
etc
.........................^C
Received 313 packets, got 2 answers, remaining 1 packets
【问题讨论】:
-
尝试使用wireshark查看数据包! :)
-
我添加了一个wireshark捕获。
标签: python network-programming scapy