2017-10-04 15 views
2

同じインターフェイス上でsniff()を実行中のtcpdumpとscapyがあります。 scpファイル転送が起こっています。Scapy sniff()はTCPパケットをキャプチャしていないようですが、イーサネットフレームのみを表示します

tcpdump:seqとacksが送信されたtcpパケットが表示されます。

scapy sniff()返されるリスト:各パケット概要()に表示されるのは、(MAC addr1) > (Mac addr 2) (0x800)/Rawです。パケット.show()でさえ、私が見ているのは、リンク層に "## [Ethernet] ##"、srcとdstが入っています。

これをタイムアウト30で実行したので、空のテキストファイルのscp転送をキャプチャして、タイムアウトが正しいことがわかりました。

確かにTCPパケットが通過していますが、いずれも検出されていません。 Scapyに問題はありますか?

はイーサネットペイロードを処理してからScapyを妨げるバグはおそらくあり

+0

TCPは、イーサネットにカプセル化されたIPでカプセル化されています。 IPパケットはイーサネットフレームのペイロードであり、TCPセグメントはIPパケットのペイロードです。あなたは単に十分深くデコードしていません。 –

+0

'sniff()'と 'pkt.show()'の出力を報告してください。 – Pierre

答えて

1

ありがとうございます。

conf.debug_dissector = Trueを設定して問題をデバッグできます。

Scapyの最新の開発版(repository)を入手することもできます。これは既に修正されたバグかもしれません(ごく最近までPython 3で見られているようなバグがありました)。

現在の開発版に更新した後にバグが残っている場合は、report it

+0

私はそれを修正しました。あなたは正しかった。バージョンがバグだったので最新バージョンに更新する必要がありました。私もそれを修正したので、ここで古いコメントを削除しました。 – Arrow

関連する問題