南昌網(wǎng)站seo技術(shù)廠家如何做公司網(wǎng)站推廣
1,那些情況需要使用命令行
- Wireshark一次性提供了太多的信息。使用命令行工具可以限制打印出的信息,最后只顯示相關(guān)數(shù)據(jù),比如用單獨(dú)一行來顯示IP地址。
- 命令行工具適用于過濾數(shù)據(jù)包捕獲文件,并提供結(jié)果給另一個(gè)支持UNIX管道的工具。
- 當(dāng)處理大量的捕獲文件時(shí),Wireshark可能會掛掉,因?yàn)檎麄€(gè)文件都要載入內(nèi)存當(dāng)中。先使用流來處理大型捕獲文件,可以讓你快速地過濾出相關(guān)數(shù)據(jù)包,給文件瘦身。
- 在沒有圖形化界面的服務(wù)器上操作,則這個(gè)時(shí)候你可能不得不依靠命令行工具。
2,常用的命令行工具
- TShark(主要學(xué)習(xí))
- Tcpdump(用于UNIX系統(tǒng),知道就行)
3,安裝TShark
- TShark是基于終端的Wireshark,它是能夠提供大量和Wireshark功能相同的數(shù)據(jù)包分析工具,但僅限于沒有GUI的命令行界面。
- TShark一般是隨Wireshark附帶安裝的。可打開Wireshark安裝目錄,使用cmd打開控制臺,使用
tshark -v
查看是否安裝。
4,捕獲和保存流量
-
如何把當(dāng)前流量捕獲下來的并把它們打印到屏幕上。要在TShark里捕獲,僅需要執(zhí)行命令tshark。此命令會從網(wǎng)卡開始抓取當(dāng)前流量。
-
根據(jù)你的系統(tǒng)配置,可有由于電腦安裝有虛擬機(jī)等原因,TShark不會默認(rèn)從你設(shè)想的網(wǎng)卡抓取流量。這種情況需要你手動選擇網(wǎng)卡。可以使用TShark的**-D**參數(shù)來列出當(dāng)前的可用網(wǎng)卡,系統(tǒng)會以數(shù)字的形式打印出網(wǎng)卡信息。
-
要選擇其中一個(gè)網(wǎng)卡,可使用命令
tshark -i +上網(wǎng)卡序號
。隨后程序便開始捕獲流量 -
要將抓到的包存為文件,可使用**-w參數(shù)加上要保存的文件名。抓包進(jìn)程會持續(xù)進(jìn)行,除非按下Ctrl+C**終止抓包。流量文件會直接保存在當(dāng)前執(zhí)行命令的目錄下。
-
要想從保存的文件中回讀數(shù)據(jù)包,可使用**-r**參數(shù)加上文件名。
-
如果要讀取的文件包含了太多的數(shù)據(jù)包,那么一大堆的信息在屏幕上滾動導(dǎo)致什么都看不清。這時(shí)可使用參數(shù)**-c**來限制在屏幕上顯示的數(shù)據(jù)包數(shù)量。
-
抓包的時(shí)候也可以使用**-c**參數(shù),表示只獲取抓包數(shù)據(jù)的前xx個(gè)包,獲取到后程序會自動停止抓包。
5,控制輸出
-
使用命令行工具的另一個(gè)優(yōu)點(diǎn)是可以自定義輸出。一般GUI應(yīng)用會把所有的信息都告訴你,然后你可以自行尋找所需的內(nèi)容。命令行工具通常只會顯示最簡輸出,并強(qiáng)制你使用額外的命令參數(shù)來挖掘更高級的用法,TShark默認(rèn)情況下只會為一個(gè)數(shù)據(jù)包顯示一行輸出。如果你想看到協(xié)議細(xì)節(jié)或者單獨(dú)字節(jié)這些更深入的內(nèi)容,就需要使用額外的命令參數(shù)。
-
在TShark的輸出中,每一行代表一個(gè)數(shù)據(jù)包,每一行輸出的格式取決于數(shù)據(jù)包使用的協(xié)議類型。
-
在TShark中,使用大寫的V來增加冗余。
-
在TShark中,可以使用**-x參數(shù)來查看數(shù)據(jù)包的ASCII形式或十六進(jìn)制字節(jié)形式,同時(shí)結(jié)合-r參數(shù)把捕獲文件讀取到TShark**里并顯示出來。
6,名稱解析
-
即把地址和端口號轉(zhuǎn)換為名稱。
-
可以通過
-n
參數(shù)來禁用TShark的名稱解析。如-
tshark -ni 2 2本地網(wǎng)卡,即禁用本地網(wǎng)卡的名稱解析
-
-
可以通過
-N
參數(shù)來啟用或禁用一些名稱解析的特定功能。如果使用-N參數(shù),則所有的名稱解析功能將會被禁用,除非指定一些功能的啟用。如啟用傳輸層(端口服務(wù)名稱)的解析。-
tshark -i 2 -Nt
-
-
你也可以結(jié)合多個(gè)值,下面命令會啟用傳輸層和MAC層的解析。
-
tshark -i 2 -Ntm
-
-
使用-N選項(xiàng)時(shí)的可參考值
-
m:MAC地址解析 n:網(wǎng)絡(luò)地址解析 t:傳輸層(端口服務(wù)名稱)解析 N:使用外網(wǎng)解析服務(wù) C:使用當(dāng)前DNS解析
-
7,應(yīng)用過濾器
-
TShark可以使用Wireshark的顯示過濾器表達(dá)式。
-
TShark的捕獲過濾器可以邊捕獲邊過濾,也可以在捕獲完成后過濾顯示結(jié)果。
-
使用**-f參數(shù)來應(yīng)用捕獲過濾器,在雙引號內(nèi)填寫表達(dá)式。如下面命令僅會**抓取和存儲目的端口號是80的TCP流量
-
tshark -ni 2 -w test.pcap -f "tcp port 80"
-
-
使用**-Y**來應(yīng)用顯示捕獲器,在雙引號內(nèi)使用wireshark的過濾器語法。
-
tshark -ni 2 -w test.pcap -Y "tcp.dstport == 80"
-
8,TShark里的時(shí)間顯示格式
-
TShark顯示的是默認(rèn)時(shí)間戳。它顯示從數(shù)據(jù)包捕獲開始的相對時(shí)間戳。
-
使用**-t**參數(shù)可以更改這種格式。
-
-
TShark中的可用時(shí)間顯示格式
值 時(shí)間戳 示例 a 包被捕獲的絕對時(shí)間(你所在的地區(qū)) 17:40:50.003322 ad 包被捕獲的帶日期的絕對時(shí)間(你所在的地區(qū)) 2023-05-03 15:20:29.044451 d 自之前捕獲的數(shù)據(jù)包以來的增量(時(shí)差) 0.000140 dd 之前顯示的數(shù)據(jù)包 0.000140 e 億元時(shí)間(1970年1月1日以來的秒數(shù)) 1444420078.004669 r 第一個(gè)數(shù)據(jù)包和當(dāng)前數(shù)據(jù)包之間的運(yùn)行時(shí)間 0.000140 u 捕獲數(shù)據(jù)包的絕對時(shí)間(UTC) 21:40:50.003322 ud 帶日期的捕獲數(shù)據(jù)包的絕對時(shí)間(UTC) 2023-05-03 21:20:29.044451