tcpdumpに問題があります。出力は次のとおりです
21:53:53.877873 MPLS (label 266837, exp 0, [S], ttl 255), IP, length: 193
21:53:53.878037 MPLS (label 326819, exp 0, [S], ttl 255), IP, length: 1332
21:53:53.878037 MPLS (label 326819, exp 0, [S], ttl 255), IP, length: 1332
21:53:53.878050 MPLS (label 326819, exp 0, [S], ttl 255), IP, length: 1332
21:53:53.878070 MPLS (label 326819, exp 0, [S], ttl 255), IP, length: 1332
21:53:53.878149 MPLS (label 326819, exp 0, [S], ttl 255), IP, length: 1332
21:53:53.878430 MPLS (label 279951, exp 0, [S], ttl 255), IP, length: 50
予想の代わりに:
22:08:12.029608 IP 10.57.169.224.49612 > 68.171.231.64.51620: Flags [.], ack 2761, win 65535, length 0
22:08:12.029620 IP 10.57.169.224.49612 > 68.171.231.64.51620: Flags [.], ack 4141, win 65535, length 0
22:08:12.029631 IP 10.57.169.224.49612 > 68.171.231.64.51620: Flags [.], ack 5521, win 65535, length 0
22:08:12.029657 IP 206.51.26.193.19063 > 10.45.14.157.19060: UDP, length 386
22:08:12.029694 IP 206.51.26.193.19064 > 10.56.143.63.19060: UDP, length 1300
したがって、この出力の場合、ホストフィルタは効果がありません。
-vオプションまたは-vvオプションを入力すると、IP(srcとdest)が得られます。
21:54:04.727826 MPLS (label 299984, exp 0, [S], ttl 255)
IP (tos 0x0, ttl 55, id 26147, offset 0, flags [DF], proto TCP (6), length 1500)
72.21.91.19.http > 186.165.14.97.42408: Flags [.], seq 702450604:702452064, ack 2572860166, win 245, length 1460
21:54:04.727867 MPLS (label 262205, exp 0, [S], ttl 255)
IP (tos 0x48, ttl 252, id 357, offset 0, flags [none], proto UDP (17), length 1328)
10.101.12.105.19060 > 206.51.26.193.19061: UDP, length 1300
21:54:04.727880 MPLS (label 279961, exp 0, [S], ttl 255)
IP (tos 0x0, ttl 49, id 50980, offset 0, flags [DF], proto TCP (6), length 109)
69.167.149.108.9933 > 181.185.41.153.53120: Flags [P.], seq 3203122401:3203122470, ack 2844602734, win 63504, length 69
21:54:04.727891 MPLS (label 264603, exp 0, [S], ttl 255)
IP (tos 0x0, ttl 81, id 59423, offset 0, flags [DF], proto TCP (6), length 200)
69.171.247.29.https > 186.25.255.129.50605: Flags [P.], seq 2597755680:2597755840, ack 2375027064, win 35, length 160
ただし、-vおよび-vvオプションは-wオプションと一緒に使用できないため、フィルタは適用されず、結果ファイルは空です。
tcpdump 印刷IPとホストフィルタを操作する方法を知っている人はいますか?
私はSVOS 9.20.0200(FreeBSD 8.2ベース)、tcpdumpバージョン4.0.0、libpcapバージョン1.0.0を使用しています。
答え1
"host"プリミティブの前に "mpls"を指定すると、tcpdumpのホストフィルタリングはMPLSプレフィックスを持つパケットに適用されます。
$ tcpdump 'mpls and host example.com'
または
$ tcpdump 'host example.com or (mpls and host example.com)'
有無にかかわらずパケットを処理する場合マルチプロトコルラベルの切り替えプレフィックス。