-1

こんにちは、Python、FREEBSD の ipv6 経由でパケットを盗聴したいと考えています。

情報を得るためにグーグルを試すのは難しいですが、freebsd の例は何もありません。

以下のコードは、bsd システムがサポートしていないと誰かが言っているため、機能していません。

socket.PF_PACKET.

誰かが私を助けるためのリンクを持っていますか?

s = socket.socket(socket.PF_PACKET, socket.SOCK_RAW, socket.htons(3))
s.setsockopt(socket.SOL_SOCKET, IN.SO_BINDTODEVICE, struct.pack("%ds"%(len("em1")+1,),"em1"))
while condition:
    pkt = s.recvfrom(1500)
    addToQueue(filter(pkt))
4

1 に答える 1

2

libpcapの Python ラッパーの使用を検討します。pcaplibpcap は、パケットのスニッフィングとダンプの処理に使用される C ライブラリです。これは、 Wiresharkが使用するのと同じライブラリです。OSX に標準で付属しており、ほとんどの Linux ディストリビューションにインストールできます。

これには多くの Python ラッパーが存在します。

パケット スニッフィングを実行できないため、純粋な Python での実装は避けてください。

于 2012-10-22T16:25:48.877 に答える