gpt4 book ai didi

python - 从原始套接字接收 IP 数据包

转载 作者:太空宇宙 更新时间:2023-11-03 15:59:16 24 4
gpt4 key购买 nike

我有以下代码来获取发送到我的机器的所有 IP 数据包:

import socket

rs = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
while True:
print rs.recvfrom(65565)

我将多行这样的内容打印到我的控制台

('E \x004tC\x00\x007\x06\x99\x97\xd8:\xdb\xee\xc0\xa8\x00\xf8\x01\xbb\xa3\xb6\xb9\x1cmavT\x14\xbd\x80\x10\x01^\xa6W\x00\x00\x01\x01\x08\n,k\xe0*\x01+\xf4{', ('216.58.219.238', 0))

我猜测这是一个 IP 数据包,但我不确定如何解释收到的数据。我想知道如何剖析这个?

最佳答案

您可以使用scapy要剖析数据包,下面是示例数据的剖析 IP 数据包:

>>> b = 'E\x004tC\x00\x007\x06\x99\x97\xd8:\xdb\xee\xc0\xa8\x00\xf8\x01\xbb\xa3\xb6\xb9\x1cmavT\x14\xbd\x80\x10\x01^\xa6W\x00\x00\x01\x01\x08\n,k\xe0*\x01+\xf4{'
>>> c = IP(b)
>>> c.show()
###[ IP ]###
version= 4L
ihl= 5L
tos= 0x20
len= 52
id= 29763
flags=
frag= 0L
ttl= 55
proto= tcp
chksum= 0x9997
src= 216.58.219.238
dst= 192.168.0.248
\options\
###[ TCP ]###
sport= https
dport= 41910
seq= 3105647969
ack= 1985221821
dataofs= 8L
reserved= 0L
flags= A
window= 350
chksum= 0xa657
urgptr= 0
options= [('NOP', None), ('NOP', None), ('Timestamp', (745267242, 19657851))]

关于python - 从原始套接字接收 IP 数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40499032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com