首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么没有使用Scapy修改IP数据包中的优先代码点(PCP)?

为什么没有使用Scapy修改IP数据包中的优先代码点(PCP)?
EN

Stack Overflow用户
提问于 2021-07-29 02:10:23
回答 1查看 63关注 0票数 1

我正在尝试做一个应用程序来生成包含优先级字段的流量。为此,我希望在以太网帧中包含802.1Q标记,并修改其PCP字段。我生成并发送数据包,如下所示:

代码语言:javascript
复制
pkt = IP(dst = "172.24.100.61")/Dot1Q(prio = 7)
send(pkt, iface='eth0')

问题是,当我使用Wireshark捕获流量并检查以太网报头字段时,802.1Q标记没有出现:

我知道802.1Q与TCP/IP堆栈的第2层相关,并且我正在发送IP数据包,但是,为什么Wireshark中没有反映这种变化?

P.D:当我创建一个以太网帧并使用sendp指令发送它时,会反映出更改,但我需要创建一个IP数据包。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-09 14:27:56

Dot1Q层位于以太网层和IP层之间。在您的情况下,发送程序会为您添加以太网层,并将其发送到接口。

下面的代码对我有效(这意味着wireshark不会抱怨)。

代码语言:javascript
复制
from scapy.all import send
from scapy.layers.inet import IP
from scapy.layers.l2 import Dot1Q

pkt =  Dot1Q(prio = 7) /IP(dst = "172.24.100.61")
send(pkt, iface='eth0')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68565435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档