2017-09-25 8 views
0

私はscapyライブラリを使用してパケットを構築していますが、アプリケーション層に特定のビット列、たとえば00110011を追加したいと思います。残念ながら、scapyは文字列 '00110011'をASCII形式に変換します。しかし、もし私がこれらの8ビットだけを追加したいのであれば?scapyでパケットを構築するときにアプリケーション層にビットを追加するには?

0000 FF FF FF FF FF FF 00 00 00 00 00 01 08 00 45 00 ..............E. 
0010 00 25 00 01 00 00 40 8F 3E 0E 0A 0A 0A 0A 14 14 .%[email protected]>....... 
0020 14 14 04 D2 10 E1 00 11 B8 69 30 62 31 31 31 31 .........i0b1111 
0030 31 31 31           111 

しかし、私は、最後にちょうどそれをFFをしたい:

は、ここで私は残念ながら

pkt = Ether(src='00:00:00:00:00:01', dst='ff:ff:ff:ff:ff:ff')/
IP(src='10.10.10.10', dst='20.20.20.20', proto=0x8F)/
UDP(dport=4321, sport=1234)/'0b1111111' 

を生成しようとするパケットの、hexdumpに対して(PKT)は私にこれを提供します。

+0

関連するコードスニペットを現在の出力と一緒に表示して、目的の出力が何であるかを説明する必要があります。これはあなたに質問をもっとはっきりさせるでしょう。 –

+0

ありがとう、私は例を追加しました。まだ不明なことがあれば教えてください。 – chessman

答えて

0

問題が解決しました。私は文字列を '\ xff'のような特殊な16進形式で渡す必要がありました。

関連する問題