歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux tcpdump命令詳解

Linux tcpdump命令詳解

日期:2017/2/28 14:55:30   编辑:Linux教程

簡介

用簡單的話來定義tcpdump,就是:dump the traffic on a network,根據使用者的定義對網絡上的數據包進行截獲的包分析工具。 tcpdump可以將網絡中傳送的數據包的“頭”完全截獲下來提供分析。它支持針對網絡層、協議、主機、網絡或端口的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的信息。

實用命令實例

默認啟動

tcpdump

普通情況下,直接啟動tcpdump將監視第一個網絡接口上所有流過的數據包。

監視指定網絡接口的數據包

tcpdump -i eth1

如果不指定網卡,默認tcpdump只會監視第一個網絡接口,一般是eth0,下面的例子都沒有指定網絡接口。 

監視指定主機的數據包

打印所有進入或離開sundown的數據包.

tcpdump host sundown

也可以指定ip,例如截獲所有210.27.48.1 的主機收到的和發出的所有的數據包

tcpdump host 210.27.48.1

打印helios 與 hot 或者與 ace 之間通信的數據包

tcpdump host helios and \( hot or ace \)

截獲主機210.27.48.1 和主機210.27.48.2 或210.27.48.3的通信

tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \)

打印ace與任何其他主機之間通信的IP 數據包, 但不包括與helios之間的數據包.

tcpdump ip host ace and not helios

如果想要獲取主機210.27.48.1除了和主機210.27.48.2之外所有主機通信的ip包,使用命令:

tcpdump ip host 210.27.48.1 and ! 210.27.48.2

截獲主機hostname發送的所有數據

tcpdump -i eth0 src host hostname

監視所有送到主機hostname的數據包

tcpdump -i eth0 dst host hostname

監視指定主機和端口的數據包

如果想要獲取主機210.27.48.1接收或發出的telnet包,使用如下命令

tcpdump tcp port 23 host 210.27.48.1

對本機的udp 123 端口進行監視 123 為ntp的服務端口

tcpdump udp port 123

Copyright © Linux教程網 All Rights Reserved