1

リモートサーバーでパケットをキャプチャ/解析するために pyshark モジュールを使用できますか? ローカルインターフェイスで動作していることがわかりました:

>>> import pyshark
>>> capture = pyshark.LiveCapture(interface='eth2')
>>> capture.sniff(timeout=50)
>>> capture
<LiveCapture (4 packets)>
>>>
>>> capture[3]
<CDP Packet>
>>>
>>> print capture[3]
Packet (Length: 272)
Layer ETH:
        Destination: CDP/VTP/DTP/PAgP/UDLD (01:00:0c:cc:cc:cc)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        Length: 258
        Address: Cisco_36:59:eb (6c:9c:ed:36:59:eb)

リモートサーバーに対しても同じことを行う必要があります(IPといくつかのフィルターを指定します)

4

1 に答える 1

1

これを行うには、リモート コンピューターで rpcapd サービスを実行し (Windows では WinPcap に含まれています。フラグ -n で null 認証を使用する必要があることに注意してください)、リモート サービスの完全な URL で pyshark を実行します。

pyshark.LiveCapture(interface='rpcapd://[1.2.3.4]:2002/eth2')

フィルターはいつでも供給できますpyshark.LiveCapture(bpf_filter='tcp')

編集:上記の単なるショートカットである pyshark.RemoteCapture クラスを追加しました。GitHub リポジトリで確認できます

于 2014-05-02T10:33:37.283 に答える