Linux下抓包命令tcpdump

在linux下,可以使用tcpdump命令來抓取數據包

主要用法

過濾網卡:

tcpdump -i ens33    #抓取所有經過網卡eth0數據包
tcpdump -i lo       #抓取環回口的數據包

過濾主機/ip:

tcpdump host 192.168.0.103        #抓取所有IP爲192.168.0.103的數據包
tcpdump src host 192.168.0.1      #抓取所有源IP爲192.168.0.1的數據包
tcpdump dst host 192.168.0.1      #抓取所有目的IP爲192.168.0.1的數據包

過濾特定協議:

tcpdump udp      #抓取udp協議的數據包
tcpdump udp      #抓取tcp協議的數據包

 

抓取特定類型的數據包:

tcpdum -i ens33 'tcp[tcpflags] = tcp-syn'     #抓取所有經過網卡ens33的SYN類型數據包

綜合:

tcpdump -i ens33 udp dst port 53    #抓取經過網卡eth1的所有DNS數據包(默認端口) 

邏輯語句過濾:

tcpdump -i ens33 ‘((tcp) and ((dst net 172.16) and (not dst host 192.168.1.200)))’  #抓取所有經過網卡ens33,目的網絡是172.16,但目的主機不是192.168.0.200的TCP數據 

抓包存取

tcpdump -i ens33 host 172.16.7.206 and port 80 -w /tmp/wxk.txt  #抓取所有經過網卡ens33,目的主機爲172.16.7.206的端口80的網絡數據並存儲到tmp/wxk.txt路徑下

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章