如何用getsockopt知道“序列号”?
Posted
技术标签:
【中文标题】如何用getsockopt知道“序列号”?【英文标题】:How to know 'sequence number' wiht getsockopt? 【发布时间】:2019-09-10 14:19:09 【问题描述】:我在地址“127.0.0.0”上监听我自己的绑定套接字,并发送一些流量。套接字是 SOCK_STREAM。 我可以使用 getsockopt 获得传入数据包的 sequence_number 和 acknowledgement_number 吗?如果你现在,请写下这个函数的参数。在蟒蛇 谢谢:)
【问题讨论】:
请在您的帖子中包含您的代码。 欢迎来到 SO。您是否已经阅读过有关此功能的Python docs 和Unix docs? Python 文档清楚地解释了这些参数只是由getsockopt()
的 Unix 定义定义的参数,我们鼓励提问者在此处发布问题之前进行研究。
【参考方案1】:
我正在 addr 上监听我自己的绑定套接字...我可以使用 getsockopt 获取传入数据包的序列号和确认号吗?
您不会从普通 TCP 套接字(即由socket.socket(socket.AF_INET, socket.SOCK_STREAM)
创建的套接字)中获取有关序列号的信息。
【讨论】:
哦,我想你是对的......一旦我使用 socketopt 知道了我的流袜子的 original_dst 和 original_port,我就认为这是可能的...... @LevaDerbyshev:ip 和 port 是套接字的静态属性。序列号是动态属性,会随着您获取和发送的每个数据而变化。使用TCP_INFO 可以检索一些动态信息,但序列号不在其中。 但是我已经使用 iptables 更改了它,然后我所有的数据包的目标地址都是“127.0.0.1”...好的,我会知道的,谢谢你以上是关于如何用getsockopt知道“序列号”?的主要内容,如果未能解决你的问题,请参考以下文章