Linux 上的 Wireshark (tshark) 擷取封包

2018-03-11 Tools

因為 debug 很常用到 Wireshark,前陣子要翻文件的時候發現竟然沒有寫到!!今天有閒來把文章補一補 …

 

在 Linux 其實本身已經有內建的 tcpdump 可以用,不過 tcpdump 可以顯示的訊息實在太過陽春,所以必要的時候 Wireshark 還是好用很多。

 

不過這篇要談的是文字版的 Wireshark – tshark,用法跟 Wireshark 差不多,舉幾個常用的範例

 

指定 eth0

$ sudo tshark -i eth0

 

過濾只看 tcp 的連線

$ sudo tshark -i eth0 -f "tcp"

 

過濾 tcp 和 port 的連線

$ sudo tshark -i eth0 -f "tcp and port 3306"

 

過濾 tcp 和 port 和 ip

$ sudo tshark -i eth0 -f "tcp and port 3306 and 192.168.10.10"

 

用 not 反向過濾

$ sudo tshark -f "port not 53 and not arp"

 

 

常見問題:

當你執行 tshark 使用 filter 不管怎麼用都 Unknown 的話 …

Running as user “root” and group “root”. This could be dangerous.
Capturing on eth0
tshark: Unknown message from dumpcap, try to show it as a string: /usr/sbin/dumpcap: symbol lookup error: /usr/sbin/dumpcap: undefined symbol: pcap_set_tstamp_precision

通常應該是你少裝了封包擷取 Library,像是 libpcap …

$ sudo yum instsall libpcap -y

或是

$ sudo apt-get install libpcap-dev -y

 

 

 

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱