首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用PCap.NET发送的数据包不填写TCP选项?

为什么使用PCap.NET发送的数据包不填写TCP选项?
EN

Stack Overflow用户
提问于 2019-02-21 16:12:09
回答 1查看 113关注 0票数 0

我试图使用PCap.NET将SYN数据包发送到目的地。当使用WinSock API时,我可以在Wireshark中看到TCP选项。但是,当我使用PCap.NET构建和发送数据包时,选项不包括在内。下面是用于构建数据包的TCP层:

代码语言:javascript
复制
 TcpLayer tcpLayer = new TcpLayer
                {
                    SourcePort = _sourcePort,
                    DestinationPort = _destinationPort,
                    SequenceNumber = _seqNumber,
                    ControlBits = TcpControlBits.Synchronize,
                    Window = _windowSize,
                };

这是一个WireShark ScreenGrab,用于使用WinSock发送SYN,其中可以看到WinSock选项。

这是Wireshark ScreenGrab使用PCap.NET发送SYN,其中TCP选项不可见。

我理解在构建Pcap层时,可以将options属性设置为None.我还没有这样做,因为我认为,如果将其保留为默认选项,选项就会像WinSock一样发送。有人能为这个问题提供任何解释或建议吗?提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-30 12:40:42

如果创建了新的TcpLayer,则需要设置Options属性,以便在TCP层中具有选项。如果不设置Options属性,则默认情况下它将设置为None

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54811524

复制
相关文章

相似问题

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