2

データの長さが type フィールドに書き込まれた raw イーサネット フレームを送信しようとしています。これは有効なイーサネット フレームである必要があります。このための私のコードは次のようになります。

ethData = "foobar"

proto =len(ethData)

if proto < 46:
  proto = 46

soc = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, proto)
soc.bind((iface, proto))

何らかの理由で、相手側のパッケージを読むことができません。なぜだろう。ワイヤレス ドライバーの割り込みハンドラーでこのパッケージを取得しようとしています。そのため、このパケットはハードウェアで直接ドロップする必要があります。そうしないと、まったく送信されません。問題はその理由です。

4

1 に答える 1

0

すみません、私のせいです。パケットの間違った部分を解析しただけで、出力が得られませんでした。私の悪い。パッケージは、想定どおりにそこに届きます。

于 2009-12-09T14:11:15.530 に答える