ネットワーク到達確認をするときにpingをうちますが、
自分が本当にpingを受け取ったのか確認したい事もたまにあります。
こんな時、pingされたことを検知するには、tcpdumpを使うと便利です。
> sudo tcpdump ‘icmp[0] = 8’
1 2 3 4 5 6 | ############ 監視サーバ側 ############## % sudo tcpdump 'icmp[0] = 8' [ sudo ] password for user: tcpdump: verbose output suppressed, use - v or -vv for full protocol decode listening on eth0, link- type EN10MB (Ethernet), capture size 65535 bytes (監視状態に入る) |
ここで監視サーバにpingが来ると監視サーバには以下のようにログが流れます。
1 2 | 17:35:23.241574 IP xxx.xxx.xxx.xxx > example.com: ICMP echo request, id 13727, seq 0, length 64 17:35:24.241852 IP xxx.xxx.xxx.xxx > example.com: ICMP echo request, id 13727, seq 1, length 64 |
xxx.xxx.xxx.xxxは実際にはping元のIPアドレス(またはホスト)、example.comはping先(監視サーバ)のIPアドレス(またはホスト)になります。
終了するときは Ctrl-C で終了します。