首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Python联网: IP电话无响应

使用Python联网: IP电话无响应
EN

Stack Overflow用户
提问于 2013-05-08 02:42:47
回答 1查看 480关注 0票数 0

我是一名自动化开发人员,最近我负责控制我办公桌上的IP电话(Cisco7940)。

我有一个第三方应用程序,可以控制与SCCP (瘦)数据包的IP电话。通过Wireshark,我看到应用程序将发送4个唯一的SCCP数据包,然后接收TCP ACK消息。

SCCP不是很广为人知,但它看起来像这样:

以太网( IP( TCP( SCCP( )

使用Python包构建器: Scapy,我已经能够向IP电话发送相同的4个包,但是我从未得到ACK。在我的数据包中,我已正确设置了TCP报头中的序列、端口和确认值。IP报头中的ID字段也是正确的。

我能想象的唯一错误的事情是,Python发送这四个包花费了整整一秒多一点的时间。而应用程序所需的时间要少得多。我尝试过提高Python shell的优先级,但没有成功。

有人知道为什么我可能收不回ACK吗?

EN

回答 1

Stack Overflow用户

发布于 2013-06-18 21:53:20

这个网站可能有助于调试为什么在你的机器上你看不到你期望的流量,并采取措施修改你的环境以产生所需的输出。

通常,Linux内核负责设置、发送和接收网络流量。它会自动设置适当的报头值,甚至知道如何完成TCP三次握手。以这种方式使用内核服务就是使用一个“熟透的”套接字。

Scapy不使用这些内核服务。它创建一个“原始”套接字。操作系统的整个TCP/IP堆栈都被绕过。正因为如此,Scapy给了我们对交通的竞争控制权。进出Scapy的流量不会被iptables过滤。此外,我们还必须自己处理TCP 3路握手。

http://www.packetlevel.ch/html/scapy/scapy3way.html

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

https://stackoverflow.com/questions/16448894

复制
相关文章

相似问题

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