Python可以区分点到站之间的通信

Python可以区分点到站之间的通信,python,scapy,wifi,Python,Scapy,Wifi,在通过python scapy收听Wi-Fi流量时,我想区分各个站点的接入点 我在802.11b/g/n上使用管理帧,但在5GHz(802.11ac/a)上不起作用,因为我看不到任何从iPhone X发送的管理帧,但我确实看到其他数据包发送到两个方向,而无法区分哪个是wifi客户端,哪个是接入点 发送数据包时,如何理解发送者是AP还是STA 最好的 J 编辑: ``` 通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2

在通过python scapy收听Wi-Fi流量时,我想区分各个站点的接入点

我在802.11b/g/n上使用管理帧,但在5GHz(802.11ac/a)上不起作用,因为我看不到任何从iPhone X发送的管理帧,但我确实看到其他数据包发送到两个方向,而无法区分哪个是wifi客户端,哪个是接入点

发送数据包时,如何理解发送者是AP还是STA

最好的

J

编辑:

```

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:00:00:fb[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:00:00:fb[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

通过AP从DS到STA 收件人地址:01:00:5e:7f:ff:fa[STA] 变送器地址:a0:4f:d4:2a:f7:d2 源地址d8:8f:76:88:10:72

```


这就是我得到的结果。由于某些原因,它们中的大多数都是广播的

您可以这样处理数据帧:

from scapy.all import *

pcap = rdpcap('test_data.pcap')
for pkt in pcap:
    if pkt.haslayer(Dot11) and pkt.type == 2: #Data frames
        DS = pkt.FCfield & 0x3
        toDS = DS & 0x01 != 0
        fromDS = DS & 0x2 != 0
        if toDS and not fromDS:
            print "From STA to DS via AP"
            print "Receiver Address: %s" % (pkt.addr1)
            print "Transmitter Address: %s" % (pkt.addr2)
            print "Destination Address: %s" % (pkt.addr3)
        if not toDS and fromDS:
            print "From DS to STA via AP"
            print "Receiver Address: %s" % (pkt.addr1)
            print "Transmitter Address: %s" % (pkt.addr2)
            print "Source Address %s" % (pkt.addr3)
        print "\n"

PS:用户提出的同一个问题因缺少信息而关闭,您到底缺少什么信息?这一点很清楚,但出于某种原因,我的iPhone x不会在5GHz信道(802.11a/ac)上生成数据包,仅类型1和子类型11如果生成流量,如icmp(ping),则看不到数据帧?