網(wǎng)絡(luò)、tcpdump、進(jìn)程、CPU使用率

(第七周作業(yè))

1、?100.0.0.16/28?對(duì)應(yīng)網(wǎng)段的網(wǎng)關(guān)地址、廣播地址、可分配IP地址范圍
已知IP地址為100.0.0.16/28,最后的28表示前28位為網(wǎng)絡(luò)位,IP地址有32位,所以后4位為主機(jī)位,把IP地址最后一段展開后得到100.0.0.0001 0000其中最后4位為主機(jī)位(加粗顯示)
(1)默認(rèn)網(wǎng)關(guān)地址是主機(jī)位除最后一位全置1后得到的,所以默認(rèn)的網(wǎng)關(guān)地址為:100.0.0.0001 1110(主機(jī)位加粗顯示),換算成十進(jìn)制就是100.0.0.30/28
(2)默認(rèn)廣播地址就是主機(jī)位全為1后得到的,所以默認(rèn)廣播地址為:100.0.0.0001?1111(主機(jī)位加粗顯示),換算成十進(jìn)制就是100.0.0.31/28
(3)可分配IP地址范圍,就是求該網(wǎng)段內(nèi)有有效地址空間,有效地址空間就是去掉主機(jī)位全為0和主機(jī)位全為1的地址,因?yàn)椋涸谝粋€(gè)網(wǎng)絡(luò)段中主機(jī)號(hào)全為0 代表這個(gè)網(wǎng)絡(luò)段本身 稱之為:網(wǎng)絡(luò)號(hào) 。主機(jī)位全為1表示是廣播地址,即是向這個(gè)網(wǎng)絡(luò)中所有主機(jī)發(fā)送廣播的地址。這兩個(gè)地址是不可以分配給主機(jī)的。所以有效地址空間的IP范圍為100.0.0.0001 0001---100.0.0.0001 1110(主機(jī)位加粗顯示)換算成十進(jìn)制就是100.0.0.17/28---100.0.0.30/28,共14個(gè)有效IP地址。

2、?使用man手冊(cè)學(xué)習(xí)tcpdump的使用
使用whatis tcpdump查看對(duì)應(yīng)man手冊(cè)有幾本
tcpdump (8)? ? ? ? ? - dump traffic on a network
發(fā)現(xiàn)只有一本,所以直接用? $man? tcpdump查看
tcpdump采用命令行方式對(duì)網(wǎng)絡(luò)接口的數(shù)據(jù)包進(jìn)行篩選抓取
語法如下:
tcpdump [ -AbdDefhHIJKlLnNOpqStuUvxX# ] [ -B buffer_size ]
? ? ? ? ? ? ? ?[ -c count ]
? ? ? ? ? ? ? ?[ -C file_size ] [ -G rotate_seconds ] [ -F file ]
? ? ? ? ? ? ? ?[ -i interface ] [ -j tstamp_type ] [ -m module ] [ -M secret ]
? ? ? ? ? ? ? ?[ --number ] [ -Q|-P in|out|inout ]
? ? ? ? ? ? ? ?[ -r file ] [ -V file ] [ -s snaplen ] [ -T type ] [ -w file ]
? ? ? ? ? ? ? ?[ -W filecount ]
? ? ? ? ? ? ? ?[ -E spi@ipaddr algo:secret,...? ]
? ? ? ? ? ? ? ?[ -y datalinktype ] [ -z postrotate-command ] [ -Z user ]
? ? ? ? ? ? ? ?[ --time-stamp-precision=tstamp_precision ]
? ? ? ? ? ? ? ?[ --immediate-mode ] [ --version ]
? ? ? ? ? ? ? ?[ expression ]
描述:
? ? ? ? ? ? ?tcpdump在網(wǎng)絡(luò)接口(interface)上打印出與布爾表達(dá)式匹配的數(shù)據(jù)包內(nèi)容的描述; 描述之前是一個(gè)時(shí)間戳,默認(rèn)情況下打印為小時(shí),分鐘,秒和0:00:00以來的秒數(shù)。 使用-w標(biāo)志,它將數(shù)據(jù)包數(shù)據(jù)保存到文件中以供以后分析,使用-r標(biāo)志,它將從保存的數(shù)據(jù)包文件中讀取而不是讀取數(shù)據(jù)包來自網(wǎng)絡(luò)接口。 使用-V標(biāo)志運(yùn)行,它將讀取已保存的數(shù)據(jù)包文件列表。 在所有情況下,只有匹配表達(dá)式的數(shù)據(jù)包才會(huì)被tcpdump處理。使用-c標(biāo)志,它將處理指定數(shù)量的數(shù)據(jù)包后退出,否則它將持續(xù)捕獲數(shù)據(jù)包,直到被SIGINT信號(hào)(例如,通過鍵入中斷字符,通常是control-C)或SIGTERM信號(hào)(通常使用kill產(chǎn)生)。
當(dāng)tcpdump完成捕獲數(shù)據(jù)包時(shí),它將報(bào)告以下計(jì)數(shù):
? ? ? ? ? ? ? 數(shù)據(jù)包"capture''(這是tcpdump接收和處理的數(shù)據(jù)包數(shù));
? ? ? ? ? ? ? 數(shù)據(jù)包“由過濾器接收”(其含義取決于運(yùn)行tcpdump的操作系統(tǒng),可能與操作系統(tǒng)配置的方式有關(guān) - 如果在命令行上指定了過濾器,則在某些操作系統(tǒng)上,無論它們是否與過濾器表達(dá)式匹配,無論tcpdump是否已讀取并處理它們,所有的數(shù)據(jù)包都被計(jì)數(shù);在某些操作系統(tǒng)上它只計(jì)算與過濾器表達(dá)式匹配的數(shù)據(jù)包,而不管tcpdump是否已經(jīng)讀取并處理它們。又在某些操作系統(tǒng)上,它只計(jì)算與過濾器表達(dá)式匹配并由tcpdump處理的數(shù)據(jù)包);
? ? ? ? ? ? ? 數(shù)據(jù)包“被內(nèi)核丟棄”(這是由于缺少緩沖區(qū)空間而被丟棄的數(shù)據(jù)包數(shù)量,由運(yùn)行tcpdump的操作系統(tǒng)中的數(shù)據(jù)包捕獲機(jī)制決定,如果操作系統(tǒng)沒有向應(yīng)用程序報(bào)告該信息,則為0)。
????????????在支持SIGINFO信號(hào)的平臺(tái)上,例如大多數(shù)BSD(包括Mac OS X)和Digital / Tru64 UNIX,它會(huì)在收到SIGINFO信號(hào)時(shí)報(bào)告這些計(jì)數(shù)(例如,通過輸入“status”字符生成 ,通常是control-T,雖然在某些平臺(tái)上,例如Mac OS X,默認(rèn)情況下不設(shè)置“status”字符,因此必須使用stty設(shè)置才能使用它并繼續(xù)捕獲數(shù)據(jù)包。 在不支持SIGINFO信號(hào)的平臺(tái)上,使用SIGUSR1信號(hào)可以實(shí)現(xiàn)相同的功能。
? ? ? ? ????從網(wǎng)絡(luò)接口讀取數(shù)據(jù)包可能要求您具有特殊權(quán)限; 有關(guān)詳細(xì)信息,請(qǐng)參見pcap(3PCAP)手冊(cè)頁。 讀取已保存的數(shù)據(jù)包文件不需要特殊權(quán)限。
選項(xiàng):
-A? ? ?以ASCII格式打印每個(gè)數(shù)據(jù)包(去除其鏈接級(jí)別標(biāo)題)。 方便捕獲網(wǎng)頁。
?-b? ? 以ASDOT表示法而不是ASPLAIN表示法打印BGP數(shù)據(jù)包中的AS編號(hào)。
?-B? ?buffer_size?或--buffer-size=buffer_size? ? ? ? ? ? ? ? 將操作系統(tǒng)捕獲緩沖區(qū)大小設(shè)置為buffer_size,以KiB(1024字節(jié))為單位。
-c? 計(jì)數(shù)??收到計(jì)數(shù)包后退出。
?-C file_size 在將原始數(shù)據(jù)包寫入保存文件之前,請(qǐng)檢查該文件當(dāng)前是否大于file_size,如果是,請(qǐng)關(guān)閉當(dāng)前保存文件并打開一個(gè)新文件。 第一個(gè)savefile之后的savefiles將使用-w標(biāo)志指定名稱,后面有一個(gè)數(shù)字,從1開始并繼續(xù)向上。 file_size的單位是數(shù)百萬字節(jié)(1,000,000字節(jié),而不是1,048,576字節(jié))。
-d? 將編譯后的數(shù)據(jù)包匹配代碼以人類可讀的形式dump到標(biāo)準(zhǔn)輸出并停止。
-dd? 將數(shù)據(jù)包匹配代碼轉(zhuǎn)儲(chǔ)為C程序片段。
-ddd將數(shù)據(jù)包匹配代碼轉(zhuǎn)儲(chǔ)為十進(jìn)制數(shù)字(以計(jì)數(shù)開頭)。
-D? ?或 --list-interfaces? 打印系統(tǒng)上可用的網(wǎng)絡(luò)接口列表以及tcpdump可以捕獲數(shù)據(jù)包的列表。 對(duì)于每個(gè)網(wǎng)絡(luò)接口,將打印數(shù)字和接口名稱,可能后跟接口的文本描述。 可以將接口名稱或編號(hào)提供給-i標(biāo)志以指定要捕獲的接口。
-e? 在每個(gè)dump行上打印鏈接級(jí)標(biāo)題。例如,這可以用于打印諸如以太網(wǎng)和IEEE 802.11之類的協(xié)議的MAC層地址。
-E? ?用來解密加密過的IPv4 ESP數(shù)據(jù)包(注:本文不展開,請(qǐng)自看man幫助)
-f? ? 打印`外部'IPv4地址以數(shù)字方式而不是符號(hào)方式(此選項(xiàng)當(dāng)該接口的地址或網(wǎng)絡(luò)掩碼不可用時(shí)無效)
?-F file? ? 使用file作為過濾器expression的輸入。命令行上給出的expression將被忽略。
-G? ?rotate_seconds? 每隔rotate_seconds秒進(jìn)行一次dump文件的輪換,使用-w選項(xiàng)指定的轉(zhuǎn)儲(chǔ)文件名,文件名應(yīng)包含strftime定義的時(shí)間格式,否則每個(gè)新文件都將覆蓋前一個(gè),如果與-C選項(xiàng)一起使用,則文件名采用“file#"的形式,如file1? file2....。
-h 或 --help? ? 打印tcpdump和libpcap版本字符串,打印用法消息,然后退出。
--version??打印tcpdump和libpcap版本字符串并退出。
-H? ?嘗試檢測802.11s?定義的網(wǎng)格標(biāo)頭。
-i interface? 或--interface=interface?監(jiān)聽的接口,如果未指定,tcpdump將在系統(tǒng)接口列表中搜索編號(hào)最小的已配置接口(不包括 loopback),這可能會(huì)變成例如“eth0”。在具有2.2或更高版本內(nèi)核的Linux系統(tǒng)上,可以使用“any”的接口參數(shù)來捕獲來自所有接口的數(shù)據(jù)包。 請(qǐng)注意,“any”設(shè)備上的捕獲將不會(huì)在混雜模式下完成。如果支持-D標(biāo)志,則可以用其顯示的接口號(hào)可用作接口參數(shù)。
-I (大寫i)或?--monitor-mode 將接口置于“監(jiān)控模式”; 這僅在IEEE 802.11 Wi-Fi接口上受支持,并且僅在某些操作系統(tǒng)上受支持。請(qǐng)注意,在監(jiān)視器模式下,適配器可能與與其關(guān)聯(lián)的網(wǎng)絡(luò)取消關(guān)聯(lián),因此您將無法使用該適配器的任何無線網(wǎng)絡(luò)。 如果您在監(jiān)視器模式下捕獲并且未使用其他網(wǎng)絡(luò)適配器連接到另一個(gè)網(wǎng)絡(luò),則可能會(huì)阻止訪問網(wǎng)絡(luò)服務(wù)器上的文件或解析主機(jī)名或網(wǎng)絡(luò)地址。?該標(biāo)志將影響-L標(biāo)志的輸出。 如果未指定-I,則僅顯示未處于監(jiān)視模式時(shí)可用的鏈接層類型; 如果指定-I,則僅顯示處于監(jiān)視模式時(shí)可用的鏈接層類型。
--immediate-mode? 以“立即模式”捕獲。 在此模式下,數(shù)據(jù)包一到達(dá)就會(huì)傳送到tcpdump,而不是為了提高效率而進(jìn)行緩沖。 這是打印數(shù)據(jù)包時(shí)的默認(rèn)設(shè)置,而不是在將數(shù)據(jù)包將數(shù)據(jù)包保存到文件或管道時(shí)的設(shè)置。
-j tstamp_type?或??--time-stamp-type=tstamp_type 將捕獲的時(shí)間戳類型設(shè)置為tstamp_type。 用于時(shí)間戳類型的名稱在pcap-tstamp中給出; 并非所有列出的類型都必須對(duì)任何給定的接口有效。
-J?或?--list-time-stamp-types? 列出接口支持的時(shí)間戳類型并退出。 如果無法為接口設(shè)置時(shí)間戳類型,則不會(huì)列出時(shí)間戳類型。
--time-stamp-precision=tstamp_precision? ?捕獲時(shí),將捕獲的時(shí)間戳精度設(shè)置為tstamp_precision。請(qǐng)注意,高精度時(shí)間戳(納秒)的可用性及其實(shí)際精度取決于平臺(tái)和硬件。當(dāng)以納秒精度將捕獲寫入保存文件時(shí),時(shí)間戳以納秒分辨率寫入,文件使用不同的幻數(shù)編寫,以指示時(shí)間戳以秒和納秒為單位;并非所有讀取pcap savefiles的程序都能讀取這些捕獲。讀取保存文件時(shí),將時(shí)間戳轉(zhuǎn)換為timestamp_precision指定的精度,并以該分辨率顯示它們。如果指定的精度小于文件中時(shí)間戳的精度,則轉(zhuǎn)換將失去精度。timestamp_precision支持的值micro是微秒級(jí)分辨率和nano就納秒級(jí)分辨率。默認(rèn)值為微秒分辨率。
-K或--dont-verify-checksums 請(qǐng)勿嘗試驗(yàn)證IP,TCP或UDP校驗(yàn)和。 這對(duì)于在硬件中執(zhí)行部分或全部 校驗(yàn)和 計(jì)算的接口非常有用; 否則,所有傳出的TCP校驗(yàn)和都將被標(biāo)記為錯(cuò)誤。
-l? (小寫L)? 使用標(biāo)準(zhǔn)輸出行級(jí)緩沖。 如果您想在捕獲數(shù)據(jù)時(shí)查看數(shù)據(jù),則非常有用。 例如。
????????????????tcpdump -l | tee dat? 或??tcpdump -l > dat & tail -f dat
? ? ? ? 請(qǐng)注意,在Windows上,“行級(jí)緩沖”表示“無緩沖”,因此如果指定了-l,WinDump將單獨(dú)寫入每個(gè)字符。
? ? ? ? ?-U在其行為中類似于-l,但它會(huì)導(dǎo)致輸出為“數(shù)據(jù)包緩沖”,因此輸出在每個(gè)數(shù)據(jù)包的末尾而不是在每行的末尾寫入標(biāo)準(zhǔn)輸出stdout; 這是在所有平臺(tái)上緩存的,包括Windows。
-L?或?--list-data-link-types 在指定模式下列出接口的已知數(shù)據(jù)鏈接類型,然后退出。 已知數(shù)據(jù)鏈接類型列表可能取決于指定的模式;?可以使用-I(大寫i)來指定是否處于監(jiān)控模式
-m module? 從文件模塊加載SMI MIB模塊定義。 可以多次使用此選項(xiàng)將多個(gè)MIB模塊加載到tcpdump中。
-M secret? 使用secret作為共享密鑰,使用TCP-MD5選項(xiàng)(RFC 2385)驗(yàn)證TCP段中的摘要(如果存在)。
?-n 不要將主機(jī)地址轉(zhuǎn)換為名稱。 這可用于避免DNS查找。
-nn不要將協(xié)議和端口號(hào)等轉(zhuǎn)換為名稱。
?-N不打印主機(jī)名的域名限定。 例如,如果你給這個(gè)標(biāo)志,那么tcpdump將打印``nic''而不是``nic.ddn.mil''。
-#或 --number??在行的開頭打印一個(gè)可選的包號(hào)
-O或? ?--no-optimize??不要運(yùn)行數(shù)據(jù)包匹配代碼優(yōu)化器。僅當(dāng)您懷疑優(yōu)化程序中存在錯(cuò)誤時(shí),此選項(xiàng)才有用。
-p?或 --no-promiscuous-mode??不要將接口置于混雜模式。請(qǐng)注意,由于某些其他原因,接口可能處于混雜模式;因此,`-p'不能用作`ether host {local-hw-addr}? or? ether broadcast'的縮寫。
-Q|-P direction?或 --direction=direction??選擇應(yīng)捕獲數(shù)據(jù)包的發(fā)送/接收方向。可能的值是“in”,“out”和“inout”。并非適用于所有平臺(tái)。
?-q? 靜默輸出。打印較少的協(xié)議信息,使輸出行更短。
-r file?從file文件讀取數(shù)據(jù)包(使用-w選項(xiàng)或其他工具創(chuàng)建的pcap或pcap-ng文件)。如果file是“ - ”,則使用標(biāo)準(zhǔn)輸入。
-S?或? ? --absolute-tcp-sequence-numbers?打印絕對(duì)而非相對(duì)的TCP序列號(hào)
-s snaplen?或 --snapshot-length=snaplen?設(shè)置快照大小為snaplen,而不是默認(rèn)的262144字節(jié)。 由于快照有限而被截?cái)嗟臄?shù)據(jù)包在輸出中用``[| proto]''表示,其中proto是發(fā)生截?cái)嗟膮f(xié)議級(jí)別的名稱。 請(qǐng)注意,拍攝較大的快照會(huì)增加處理數(shù)據(jù)包所需的時(shí)間,并明顯地減少數(shù)據(jù)包緩沖量。 這可能會(huì)導(dǎo)致數(shù)據(jù)包丟失。 您應(yīng)該將snaplen限制為捕獲您感興趣的協(xié)議信息的最小數(shù)字。將snaplen設(shè)置為0會(huì)將其設(shè)置為默認(rèn)值262144,以便向后兼容最新版本的tcpdump。
-T type 強(qiáng)制“expression”選擇的數(shù)據(jù)包將被解釋為指定的類型。目前已知的類型是aodv(Ad-hoc按需距離矢量協(xié)議),carp(通用地址冗余協(xié)議),cnfp(Cisco NetFlow協(xié)議),lmp(鏈路管理協(xié)議),pgm(實(shí)用通用多播),pgm_zmtp1(ZMTP / 1.0內(nèi)部PGM / EPGM),resp(REdis序列化協(xié)議),radius(RADIUS),rpc(遠(yuǎn)程過程調(diào)用),rtp(實(shí)時(shí)應(yīng)用程序協(xié)議),rtcp(實(shí)時(shí)應(yīng)用程序控制協(xié)議),snmp(簡單網(wǎng)絡(luò)管理)協(xié)議),tftp(普通文件傳輸協(xié)議),增值稅(視覺音頻工具),wb(分布式白板),zmtp1(ZeroMQ消息傳輸協(xié)議1.0)和vxlan(虛擬可擴(kuò)展局域網(wǎng))。
?-t? 不要在每個(gè)dump行上打印時(shí)間戳。
-tt? ?打印時(shí)間戳,自1970年1月1日00:00:00,UTC以及自該時(shí)間以來秒鐘數(shù)。
-ttt? ?在每個(gè)dump行上打印的當(dāng)前行和上一行之間時(shí)間差delta(微秒分辨率)。
-tttt? ?打印時(shí)間戳,以小時(shí),分鐘,秒和從00:00:00開始的秒鐘數(shù),在每個(gè)dump行上的日期開始。
-ttttt? ?在每個(gè)dump行上打印的當(dāng)前行和第一行之間時(shí)間差delta(微秒分辨率)。
-u? ?打印未解碼的NFS句柄。
-U或?--packet-buffered 如果未指定-w選項(xiàng),則使打印的數(shù)據(jù)包輸出``packet-buffered''; 即,當(dāng)打印每個(gè)分組的內(nèi)容的描述時(shí),它將被寫入標(biāo)準(zhǔn)輸出,而不是在不寫入終端時(shí),僅在輸出緩沖器填滿時(shí)寫入。如果指定了-w選項(xiàng),則使保存的原始數(shù)據(jù)包輸出``packet-buffered''; 即,在保存每個(gè)數(shù)據(jù)包時(shí),它將被寫入輸出文件,而不是僅在輸出緩沖區(qū)填滿時(shí)才寫入。
-v? 解析和打印時(shí),產(chǎn)生(略多)詳細(xì)輸出。 例如,打印IP包中的生存時(shí)間,標(biāo)識(shí),總長度和選項(xiàng)。 還可以啟用其他數(shù)據(jù)包完整性檢查,例如驗(yàn)證IP和ICMP標(biāo)頭校驗(yàn)和。 使用-w選項(xiàng)寫入文件時(shí),每隔10秒報(bào)告一次捕獲的數(shù)據(jù)包數(shù)。
-vv更詳細(xì)的輸出。 例如,從NFS回復(fù)數(shù)據(jù)包打印其他字段,并完全解碼SMB數(shù)據(jù)包。
-vvv更詳細(xì)的輸出。 例如,telnet SB ... SE選項(xiàng)全部打印。 使用-X Telnet選項(xiàng)也以十六進(jìn)制打印。
-V文件, 從文件中讀取文件名列表。 如果文件是“ - ”,則使用標(biāo)準(zhǔn)輸入。
-w文件 將原始數(shù)據(jù)包寫入文件而不是解析并打印出來。稍后可以使用-r選項(xiàng)打印它們。如果文件是“ - ”,則使用標(biāo)準(zhǔn)輸出。? 如果寫入文件或管道,則此輸出將被緩沖,因此從文件或管道讀取的程序在收到后可能無法在任意時(shí)間內(nèi)看到數(shù)據(jù)包。使用-U標(biāo)志可以在收到數(shù)據(jù)包后立即寫入數(shù)據(jù)包。 MIME類型application / vnd.tcpdump.pcap已在IANA注冊(cè)用于pcap文件。文件擴(kuò)展名.pcap似乎是最常用的.cap和.dmp。 Tcpdump本身在讀取捕獲文件時(shí)不檢查擴(kuò)展,并且在寫入時(shí)不添加擴(kuò)展(它在文件頭中使用幻數(shù))。但是,許多操作系統(tǒng)和應(yīng)用程序?qū)⑹褂脭U(kuò)展名(如果存在)并建議添加一個(gè)(例如.pcap)。有關(guān)文件格式的說明,請(qǐng)參閱pcap-savefile(5)。
-W? 與-C選項(xiàng)一起使用時(shí),這會(huì)將創(chuàng)建的輸出文件數(shù)限制為指定的數(shù)字,并從頭開始覆蓋文件,從而創(chuàng)建一個(gè)循環(huán)使用的緩沖區(qū)。 此外,它會(huì)將文件命名為具有足夠的前導(dǎo)0以支持最大數(shù)量的文件,從而允許它們正確排序。與-G選項(xiàng)一起使用時(shí),這將限制創(chuàng)建的旋轉(zhuǎn)轉(zhuǎn)儲(chǔ)文件的數(shù)量,在達(dá)到限制時(shí)退出狀態(tài)0。 如果與-C一起使用,則行為將導(dǎo)致每個(gè)時(shí)間片的循環(huán)文件。
-x? ?解析和打印時(shí),除了打印每個(gè)數(shù)據(jù)包的標(biāo)題外,還要以十六進(jìn)制格式打印每個(gè)數(shù)據(jù)包的數(shù)據(jù)(除去其鏈接級(jí)別標(biāo)題)。 將打印整個(gè)數(shù)據(jù)包或snaplen字節(jié)中較小的一個(gè)。注意,這是整個(gè)鏈路層分組,因此對(duì)于填充(例如以太網(wǎng))的鏈路層,當(dāng)較高層分組比所需填充短時(shí),也將打印填充字節(jié)。
-xx? ?在解析和打印時(shí),除了打印每個(gè)數(shù)據(jù)包的標(biāo)頭外,還要打印每個(gè)數(shù)據(jù)包的數(shù)據(jù),包括其鏈接級(jí)別標(biāo)題,以十六進(jìn)制表示。
?-X? 解析和打印時(shí),除了打印每個(gè)數(shù)據(jù)包的標(biāo)頭外,還要以十六進(jìn)制和ASCII格式打印每個(gè)數(shù)據(jù)包的數(shù)據(jù)(除去其鏈接級(jí)別標(biāo)題)。 這對(duì)于分析新協(xié)議非常方便。
-XX? ?解析和打印時(shí),除了打印每個(gè)數(shù)據(jù)包的標(biāo)頭外,還要以十六進(jìn)制和ASCII格式打印每個(gè)數(shù)據(jù)包的數(shù)據(jù),包括其鏈接級(jí)別標(biāo)題。
-y datalinktype或?--linktype=datalinktype??將數(shù)據(jù)包捕獲時(shí)用到的數(shù)據(jù)鏈接類型設(shè)置為datalinktype。
-z postrotate-command? 與-C或-G選項(xiàng)一起使用時(shí),每次輸出文件在輪換后關(guān)閉后,執(zhí)行“postrotate-command file”, 例如,指定-z gzip或-z bzip2將使用gzip或bzip2壓縮每個(gè)savefile。請(qǐng)注意,tcpdump將使用最低優(yōu)先級(jí)并行捕獲命令,以便不會(huì)干擾捕獲過程。 如果您想使用一個(gè)本身帶有標(biāo)志或不同參數(shù)的命令,您總是可以編寫一個(gè)shell腳本,它將保存文件名作為唯一參數(shù),制作標(biāo)志和參數(shù)排列并執(zhí)行您想要的命令。
-Z user?或? --relinquish-privileges=user? ?如果tcpdump以root身份運(yùn)行,則在打開捕獲設(shè)備或輸入savefile之后,但在打開任何輸出的savefiles之前,請(qǐng)將用戶ID更改為user,將組ID更改為用戶的主要組。默認(rèn)情況下,在編譯時(shí)也可以啟用此行為。

expression? 表達(dá)式 選擇要dump的數(shù)據(jù)包。 如果沒有給出表達(dá)式,網(wǎng)絡(luò)上的所有數(shù)據(jù)包都將被dump。 否則,只會(huì)dump表達(dá)式為“true”的數(shù)據(jù)包。?expression的語法請(qǐng)查看pcap-filter(7).。在表達(dá)式中出現(xiàn)的shell元字符建議使用單引號(hào)包圍。
接下來使用man pcap-filter查看,pcap-filter? 使用包過濾器語法,expression包括一個(gè)或多個(gè)原語,原語通常包含一個(gè)id(名稱或數(shù)字),前面加上一個(gè)或多個(gè)id的限定符。有以下三種原語
? ? type:?指定ID的類型,可能的類型是host,net,port和portrange。 例如,`host foo',`net 128.3',`port 20',`portrange 6000-6008'。 如果沒有類型限定符,則假定host。
????dir :此限定符指定id的特定傳輸方向。 可能的方向有src,dst,src或dst,src和dst,ra,ta,addr1,addr2,addr3和addr4。 例如,`src foo',`dst net 128.3',`src或dst port ftp-data'。 如果沒有dir限定符,則假定為src或dst。 ra,ta,addr1,addr2,addr3和addr4限定符僅對(duì)IEEE 802.11無線LAN鏈路層有效。 對(duì)于某些鏈路層,例如SLIP等,入站和出站限定符可用于指定所需的方向。
? ? proto: 此限定符將匹配限制為特定協(xié)議。 可能的協(xié)議是: ether,fddi,tr,wlan,ip,ip6,arp,rarp,decnet,tcp和udp。 例如,`ether src foo',`arp net 128.3',`tcp port 21',`udp portrange 7000-7009',`wlan addr2 0:2:3:4:5:6'。 如果沒有proto限定符,則假定所有與該類型一致的協(xié)議。 例如,`src foo'表示`(ip或arp或rarp)src foo'(除了后者不是合法語法),`net bar'表示`(ip或arp或rarp)net bar'和`port 53'表示 `(tcp或udp)端口53'。
除了使用限定符和ID組成的表達(dá)式原語,還有關(guān)鍵字表達(dá)式原語:gateway,broadcast,less,greater以及算術(shù)表達(dá)式。
可以使用and、or和not來進(jìn)行表達(dá)式邏輯運(yùn)算,例如:‘host foo and not port ftp and not port ftp-data’,再比如:‘`tcp dst port ftp or ftp-data or domain'?和?`tcp dst port ftp or tcp dst port ftp-data or tcp dst port domain'是一樣的

3、?詳細(xì)敘述僵尸進(jìn)程產(chǎn)生的原因以及危害

僵尸進(jìn)程zombie是進(jìn)程的一種特殊狀態(tài),出現(xiàn)在父進(jìn)程創(chuàng)建了子進(jìn)程,當(dāng)子進(jìn)程退出并且父進(jìn)程沒有讀取到子進(jìn)程退出的返回代碼時(shí)就會(huì)產(chǎn)生僵尸進(jìn)程?;蛘吒高M(jìn)程也出現(xiàn)異常掛掉,子進(jìn)程運(yùn)行退出后得不到父進(jìn)程來處理進(jìn)行資源回收,子進(jìn)程就會(huì)進(jìn)入Z狀態(tài)即成為僵尸進(jìn)程。僵尸進(jìn)程會(huì)以終止?fàn)顟B(tài)保持在進(jìn)程表中,并且會(huì)一直在等待父進(jìn)程讀取退出狀態(tài)代碼。

產(chǎn)生原因:
在子進(jìn)程終止后到父進(jìn)程調(diào)用wait()前的時(shí)間里,子進(jìn)程被稱為zombie;?
a. 子進(jìn)程結(jié)束后向父進(jìn)程發(fā)出SIGCHLD信號(hào),父進(jìn)程默認(rèn)忽略了它?
b. 父進(jìn)程沒有調(diào)用wait()或waitpid()函數(shù)來等待子進(jìn)程的結(jié)束?
c. 網(wǎng)絡(luò)原因有時(shí)會(huì)引起僵尸進(jìn)程;

僵尸進(jìn)程的危害:占用系統(tǒng)資源,造成內(nèi)存泄漏。如果很多,則會(huì)嚴(yán)重影響服務(wù)器的性能;

4、?詳細(xì)說明vmstat輸出結(jié)果的含義

vmstat命令主要用來動(dòng)態(tài)顯示系統(tǒng)資源的使用情況,資源包括:內(nèi)存,磁盤、網(wǎng)絡(luò)、cpu等。
命令用法: vmstat? [options]? ?[delay? [count]]
選項(xiàng)有:
? ? -s:小寫s表示列表顯示內(nèi)存狀態(tài)數(shù)值和一些變化指標(biāo)的統(tǒng)計(jì),只顯示一次。
? ? -S:后可接單位,1000 (k), 1024 (K), 1000000 (m),?或1048576? (M)? bytes.但不會(huì)影響swap (si/so)和? block (bi/bo)的值
? ? -d:? 列出磁盤的讀寫總量統(tǒng)計(jì)表

如果我們用vmstat? 2? 5?可以每隔2秒顯示一次系統(tǒng)資源狀態(tài)值,執(zhí)行5次。
顯示各列如下所示:

procs? ?-----------memory----------? ? ? ? --swap--? ? ? -----io----? ? ? ?-system--? ? ? ? ?------cpu-----

r? b? ? ? ? swpd? free? buff? cache? ? ? ? ? si? so? ? ? ? ? ? ?bi? ? bo? ? ? ?in? cs? ? ? ? ? ? ? ?us sy id wa st

每一列所表示的含義如下:
?procs:進(jìn)程相關(guān)的指標(biāo)
? ? r:等待運(yùn)行的進(jìn)程的個(gè)數(shù)(隊(duì)列長度)
? ? b:處于不可中斷睡眠狀態(tài)的進(jìn)程的個(gè)數(shù)(即IO阻塞隊(duì)列長度)
memory:內(nèi)存相關(guān)指標(biāo)
? ? swpd:交換內(nèi)存使用量
? ? free:物理內(nèi)存空閑量
? ? buffer:用于buffer的內(nèi)存總量
? ? cache:用于cache的內(nèi)存總量
swap:交換分區(qū)相關(guān)指標(biāo)
? ? si:數(shù)據(jù)進(jìn)入swap中的速率(kb/s)
? ? so:數(shù)據(jù)離開swap的速率(kb/s)
io:IO相關(guān)的指標(biāo)
? ? bi:從塊設(shè)備讀入數(shù)據(jù)到系統(tǒng)的速率(kb/s)
? ? bo:保存數(shù)據(jù)至塊設(shè)備的速率(kb/s)
system:系統(tǒng)相關(guān)的指標(biāo)
? ? in:中斷速率,每秒被中斷的次數(shù)
? ? cs:進(jìn)程切換的速率
cpu:cpu相關(guān)的指標(biāo)
? ? us: user space用戶空間運(yùn)行程序占用CPU的百分比
? ? sy:system(kernel space)運(yùn)行于內(nèi)核空間的程序占用CPU的百分比
? ? id:idle空間CPU百分比
? ? wa:wait? io? 等待I/O花費(fèi)時(shí)間
? ? st: stolen?被虛擬機(jī)“偷走”的CPU百分比。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容