使用wireshark我捕获了telnet数据包。在分析捕获的数据包时,我得到数据部分,
var footer_template = function (context) {
return '<div class="suggestion-footer"><a href="/search?q=' + context.query + '">View All ('+window.totalSearchResults+') Results </a></div>';
};
我的问题是,现在我通过python中的telnetlib启动telnet连接。通过我发送和接收数据。但有时在接收数据时,它会被截断,如上所示。那么,是否有可能以编程方式读取那些截断的数据。
答案 0 :(得分:0)
您可以尝试在禁用 telnet 解剖器的情况下使用tshark
吗?例如,在实时捕捉时你可以使用类似的东西:
tshark -i foo --disable-protocol telnet -f "tcp port 23" -Y "tcp.len > 0" -T fields -e frame.number -e data
这将捕获所有telnet流量,但仅显示实际包含数据的数据包的帧号和数据字段。它要求您禁用 telnet 解剖器才能使其正常工作。请注意,我使用--disable-protocol
命令行选项来禁用 telnet ,但如果您正在运行tshark
的旧版本,那么#39; t有这个选项,那么你必须首先通过&#34; Analyze - &gt;在Wireshark中禁用 telnet 解剖器。启用协议... - &gt;协议:运行tshark
之前的Telnet&#34; 。
这是一个类似的例子,但这次tshark
正在读取文件中的数据包而不是实时捕获它们:
tshark -r foo.pcap --disable-protocol telnet -Y "tcp.port eq 23 and tcp.len > 0" -T fields -e frame.number -e data
如果您愿意,还可以更改数据的输出格式,在字节之间包含冒号分隔符(':'
),如下所示:
tshark -r foo.pcap --disable-protocol telnet -Y "tcp.port eq 23 and tcp.len > 0" -T fields -e frame.number -e data.data
您可以使用tshark
&#39; -e
选项指定任意数量的字段。有关tshark
及其各种选项的详细信息,请参阅tshark man page
。