python - scapy 花费无限时间发送 TCP SYN 数据包而没有回复。

标签 python linux scapy tcp

我想向我的路由器发送一个简单的 SYN 请求以获得 ACK 响应,以便使用 python 和 scapy 学习网络(TCP/IP)。
但是 scapy 需要很长时间才能得到任何答案。
脚本-

#!/usr/bin/env python

from scapy.all import *


pack=TCP(sport=22,dport=80,flags='S')/IP(src="192.168.0.13",dst="192.168.0.1")

# tried with retry and timeout options using both sr() and sr1()
# but it comes with no answer from the router. 
# ran this with sudo and iptables policy is default [ACCEPT] 

ans = sr1(pack)

解决方案是什么?

最佳答案

总而言之,您需要颠倒IPTCP 的顺序。

人们所说的 TCP/IP 实际上是在 IP 层之上堆叠了 TCP 层。

例如,这里是基本层的堆栈:

Tcp/IP stack

每个堆栈都会添加新信息:以太网提供 MAC 地址,以便数据包进入路由器。然后 IP 告诉应该将数据发送到哪台计算机。 TCP终于公布了一些数据,扩展......

需要按照这个顺序:在指定数据之前需要知道数据包需要去哪里

关于python - scapy 花费无限时间发送 TCP SYN 数据包而没有回复。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51798304/

相关文章:

python scapy过滤pcap文件

Python Flask 应用程序 : include HTML that imports xml file with javascript

linux - 如何让linux在halt运行时断电?

python - 在python中使用selenium webdriver从父xpath中找出所有子元素xpath

linux - 需要检查文件是否存在?

linux .profile 脚本 - 模块加载错误,后跟 echo

python - 如何使用 Scapy 确定无线加密类型?

python - Sudo scapy 不能在 virtualenv 上工作

python - pickle 没有以正确的方式工作

Python discord bot - 从未等待过协程