0

PyPy と Scapy を使用して、ワイヤレス アダプターをスニッフィングしようとしています。私は Ubuntu Linux を使用しているので、airmon-ng を使用してカードをモニター モードにし、REPL を開き、次のように入力します (scapy をインポートした後)。

sniff(prn=lambda pkt: pkt.summary(), iface='mon0')

これは、CPython REPL で正常に機能します。ただし、PyPy REPL では、次のエラーが発生します。

Traceback (most recent call last):
    File "<console>", line 1, in <module>
    File "scapy/sendrecv.py", line 550, in sniff
        s = L2socket(type=ETH_P_ALL, *arg, **karg)
    File "scapy/arch/linux.py", line 452, in __init__
        self.ins.bind((iface, type))
    File "<string>", line 1, in bind
error: unknown address family

これは、モニター モードをオフにして、標準アダプター (wlan0) をスニッフィングしようとした場合にも発生します。ただし、非ワイヤレス インターフェイス (eth1) では機能するようです。

PyPy 互換性インデックスには、Scapy が PyPy で動作するものとしてリストされています。グーグルで調べた後、答えのように見えるこの投稿に出くわしましたが、両方のリンクが機能しなくなりました。この件に関するご意見は大歓迎です。

前もって感謝します、

ライアン

4

2 に答える 2

0

scapy が十分な権限で実行されなかったときに、このエラーが発生しました。システム管理者として実行してみてください。

于 2014-06-19T19:46:10.427 に答える
0

一部のパケット タイプのサポートは、すべてのアーキテクチャで機能していないと思います。何を使用しようとしているのか (OS X、Linux、Windows) と、最低限の PyPy のバージョンを示す必要があります。また、ここではなく、bugs.pypy.org が適切な場所です。

于 2013-01-18T09:37:21.380 に答える