0

通信する2つのサーバー(serv1、serv2)があり、serv1からserv2に転送される特定の基準に一致するパケットを盗聴しようとしています。Tshark は私のデスクトップ (desk1) にインストールされています。次のスクリプトを作成しました。

while true; do
tshark -a duration:10 -i eth0  -R "(sip.CSeq.method == "OPTIONS") && (sip.Status-Code) && ip.src eq serv1" -Tfields -e sip.response-time > response.time.`date +%F-%T`
 done

このスクリプトは、serv1 で実行すると正常に動作するようです (serv1 がパケットを serv2 に送信しているため)。ただし、desk1 でこれを実行しようとすると、パケットをキャプチャできません。それらはすべて同じLAN上にあります。私は何が欠けていますか?

4

3 に答える 3

2

serv1 または serv2 のいずれかが、desk1 と同じ物理イーサネット スイッチ上にあると仮定すると、SPAN (Switch Port Analyzer) と呼ばれる機能を使用して、serv1 と serv2 の間のトランジット トラフィックを盗聴できます。

サーバーが FastEtheret4/2 上にあり、デスクトップが Cisco スイッチの FastEthernet4/3 上にあると仮定します...スイッチに telnet または ssh して、これらのコマンドを入力する必要があります...

4507R#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

4507R(config)#monitor session 1 source interface fastethernet 4/2

!--- This configures interface Fast Ethernet 4/2 as source port.

4507R(config)#monitor session 1 destination interface fastethernet 4/3

!--- The configures interface Fast Ethernet 0/3 as destination port.



4507R#show monitor session 1
Session 1
---------
Type : Local Session
Source Ports :
Both : Fa4/2
Destination Ports : Fa4/3


4507R#

この機能は Cisco デバイスに限定されません... Juniper / HP / Extreme およびその他のエンタープライズ イーサネット スイッチ ベンダーもサポートしています。

于 2011-11-29T09:43:59.277 に答える
1

ネットワークからすべてのトラフィックをキャプチャする、誤った名前の tcpdump を使用するのはどうですか。私がお勧めするのは、インターフェイスでパケットをキャプチャすることです。キャプチャ レベルでフィルタリングしないでください。pcapファイルをフィルタリングした後。このようなもの

tcpdump -w myfile.pcap -n -nn -i eth0
于 2011-11-29T04:57:12.953 に答える
0

LAN が交換ネットワーク (ほとんどの場合) であるか、デスクトップ NIC がプロミスキャス モードをサポートしていない場合、パケットをまったく見ることができません。その両方を確認します。

于 2011-11-29T04:54:31.410 に答える