1、100.0.0.16/28 對(duì)應(yīng)網(wǎng)段的網(wǎng)關(guān)地址、廣播地址、可分配IP地址范圍
網(wǎng)絡(luò)號(hào):100.0.0.16
掩碼:255.255.255.240
網(wǎng)段:100.0.0.16-100.0.0.31
可分配IP地址范圍:100.0.0.17-100.0.0.30
網(wǎng)關(guān)地址在可分配IP地址范圍中選一個(gè)
廣播地址: 100.0.0.31計(jì)算:
32-28=4 2^4=16
網(wǎng)段:100.0.0.0-100.0.0.15
100.0.0.16-100.0.0.31
2、使用man手冊(cè)學(xué)習(xí)tcpdump的使用
tcpdump [ -adeflnNOpqStvx ] [ -c 數(shù)量 ] [ -F 文件名 ][ -i 網(wǎng)絡(luò)接口 ] [ -r 文件名] [ -s snaplen ] [ -T 類型 ] [ -w 文件名 ] [表達(dá)式 ]
-a 將網(wǎng)絡(luò)地址和廣播地址轉(zhuǎn)變成名字;
-d 將匹配信息包的代碼以人們能夠理解的匯編格式給出;
-dd 將匹配信息包的代碼以c語(yǔ)言程序段的格式給出;
-ddd 將匹配信息包的代碼以十進(jìn)制的形式給出;
-e 在輸出行打印出數(shù)據(jù)鏈路層的頭部信息,包括源mac和目的mac,以及網(wǎng)絡(luò)層的協(xié)議;
-f 將外部的Internet地址以數(shù)字的形式打印出來(lái);
-l 使標(biāo)準(zhǔn)輸出變?yōu)榫彌_行形式;
-n 指定將每個(gè)監(jiān)聽(tīng)到數(shù)據(jù)包中的域名轉(zhuǎn)換成IP地址后顯示,不把網(wǎng)絡(luò)地址轉(zhuǎn)換成名字;
-nn: 指定將每個(gè)監(jiān)聽(tīng)到的數(shù)據(jù)包中的域名轉(zhuǎn)換成IP、端口從應(yīng)用名稱轉(zhuǎn)換成端口號(hào)后顯示
-t 在輸出的每一行不打印時(shí)間戳;
-v 輸出一個(gè)稍微詳細(xì)的信息,例如在ip包中可以包括ttl和服務(wù)類型的信息;
-vv 輸出詳細(xì)的報(bào)文信息;
-c 在收到指定的包的數(shù)目后,tcpdump就會(huì)停止;
-F 從指定的文件中讀取表達(dá)式,忽略其它的表達(dá)式;
-i 指定監(jiān)聽(tīng)的網(wǎng)絡(luò)接口;
-p 將網(wǎng)卡設(shè)置為非混雜模式,不能與host或broadcast一起使用
-r 從指定的文件中讀取包(這些包一般通過(guò)-w選項(xiàng)產(chǎn)生);
-w 直接將包寫(xiě)入文件中,并不分析和打印出來(lái);
-s snaplen snaplen表示從一個(gè)包中截取的字節(jié)數(shù)。0表示包不截?cái)啵ネ暾臄?shù)據(jù)包。默認(rèn)的話 tcpdump 只顯示部分?jǐn)?shù)據(jù)包,默認(rèn)68字節(jié)。
-T 將監(jiān)聽(tīng)到的包直接解釋為指定的類型的報(bào)文,常見(jiàn)的類型有rpc (遠(yuǎn)程過(guò)程調(diào)用)和snmp(簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議;)
-X 告訴tcpdump命令,需要把協(xié)議頭和包內(nèi)容都原原本本的顯示出來(lái)(tcpdump會(huì)以16進(jìn)制和ASCII的形式顯示),這在進(jìn)行協(xié)議分析時(shí)是絕對(duì)的利器。tcpdump的輸出結(jié)果
tcpdump.jpg
第一行:tcpdump: verbose output suppressed, use -v or -vv for full protocol decode 提示使用選項(xiàng)-v和-vv,可以看到更全的輸出內(nèi)容。
第二行:listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes監(jiān)聽(tīng)的是通過(guò)ens33這個(gè)NIC設(shè)備的網(wǎng)絡(luò)包,且它的鏈路層是基于以太網(wǎng)的,要抓的包大小限制是262144字節(jié)。包大小限制值可以通過(guò)-s選項(xiàng)來(lái)設(shè)置。
第三行04:32:56.462536 IP 10.10.1.111.22 > 10.10.1.121.54063: Flags [P.], seq 2918245247:2918245435, ack 4017468812, win 252, length 188
04:32:56.462536 分別對(duì)應(yīng)著這個(gè)包被抓到的“時(shí)”、“分”、“秒”、“微妙”.
IP 10.10.1.111.22 > 10.10.1.121.54063 這個(gè)包的源IP為 10.10.1.111,源端口為22,’>’表示數(shù)據(jù)包的傳輸方向,這個(gè)數(shù)據(jù)包的目的端ip為 10.10.1.121,目的端口為54063,F(xiàn)lags [P.]表明是推標(biāo)志。該標(biāo)志置位時(shí),接收端不將該數(shù)據(jù)進(jìn)行隊(duì)列處理,而是盡可能快地將數(shù)據(jù)轉(zhuǎn)由應(yīng)用處理。 seq2918245247:2918245435
為 序號(hào)。 win 252窗口大小為252字節(jié).
過(guò)濾語(yǔ)句
1.類型的關(guān)鍵字,主要包括host,net,port
2.傳輸方向的關(guān)鍵字,主要包括src , dst ,dst or src, dst and src
3.協(xié)議的關(guān)鍵字,主要包括 ether,ip,ip6,arp,rarp,tcp,udp等類型。這幾個(gè)的包的協(xié)議內(nèi)容。如果沒(méi)有指定任何協(xié)議,則tcpdump將會(huì)監(jiān)聽(tīng)所有協(xié)議的
proto [ expr : size] expr用來(lái)指定數(shù)據(jù)報(bào)字節(jié)單位的偏移量
4.其他重要的關(guān)鍵字,gateway, broadcast,less,greater,還有三種邏輯運(yùn)算,取非運(yùn)算是 'not ' '! ', 與運(yùn)算是'and','&&';或運(yùn)算是'or' ,'||'
3、詳細(xì)敘述僵尸進(jìn)程產(chǎn)生的原因以及危害
僵尸進(jìn)程產(chǎn)生的原因
僵尸進(jìn)程:是當(dāng)子進(jìn)程比父進(jìn)程先結(jié)束,而父進(jìn)程又沒(méi)有回收子進(jìn)程,釋放子進(jìn)程占用的資源,此時(shí)子進(jìn)程將成為一個(gè)僵尸進(jìn)程。如果父進(jìn)程先退出 ,子進(jìn)程被init接管,子進(jìn)程退出后init會(huì)回收其占用的相關(guān)資源
原因:1.子進(jìn)程被直接殺死;2.子進(jìn)程無(wú)法正常關(guān)閉
危害
在進(jìn)程退出的時(shí)候,內(nèi)核釋放該進(jìn)程所有的資源,包括打開(kāi)的文件,占用的內(nèi)存等。但是仍然為其保留一定的信息(包括進(jìn)程號(hào) PID,退出狀態(tài) the termination status of the process,運(yùn)行時(shí)間 the amount of CPU time taken by the process 等)。直到父進(jìn)程通過(guò) wait / waitpid 來(lái)取時(shí)才釋放。
如果進(jìn)程不調(diào)用 wait / waitpid 的話, 那么保留的那段信息就不會(huì)釋放,其進(jìn)程號(hào)就會(huì)一直被占用,但是系統(tǒng)所能使用的進(jìn)程號(hào)是有限的,如果大量的產(chǎn)生僵死進(jìn)程,將因?yàn)闆](méi)有可用的進(jìn)程號(hào)而導(dǎo)致系統(tǒng)不能產(chǎn)生新的進(jìn)程。
4、詳細(xì)說(shuō)明vmstat輸出結(jié)果的含義
vmstat [options][delay[count]]
[options]
-a:顯示活躍和非活躍內(nèi)存
-f:顯示從系統(tǒng)啟動(dòng)至今的fork數(shù)量 。
-m:顯示slabinfo
-n:只在開(kāi)始時(shí)顯示一次各字段名稱。
-s:顯示內(nèi)存相關(guān)統(tǒng)計(jì)信息及多種系統(tǒng)活動(dòng)數(shù)量。
delay:刷新時(shí)間間隔。如果不指定,只顯示一條結(jié)果。
count:刷新次數(shù)。如果不指定刷新次數(shù),但指定了刷新時(shí)間間隔,這時(shí)刷新次數(shù)為無(wú)窮。
-d:顯示磁盤相關(guān)統(tǒng)計(jì)信息。
-p:顯示指定磁盤分區(qū)統(tǒng)計(jì)信息
-S:使用指定單位顯示。參數(shù)有 k 、K 、m 、M ,分別代表1000、1024、1000000、1048576字節(jié)(byte)。默認(rèn)單位為K(1024 bytes)
-V:顯示vmstat版本信息。
procs
r:在運(yùn)行隊(duì)列中等待的進(jìn)程數(shù) 。
b:在等待io的進(jìn)程數(shù) 。
memory
swpd:現(xiàn)時(shí)可用的交換內(nèi)存(單位KB)。
free:空閑的內(nèi)存(單位KB)。
buff: 緩沖去中的內(nèi)存數(shù)(單位:KB)。
cache:被用來(lái)做為高速緩存的內(nèi)存數(shù)(單位:KB)。
swap交換頁(yè)面
si: 從磁盤交換到內(nèi)存的交換頁(yè)數(shù)量,單位:KB/秒。
so: 從內(nèi)存交換到磁盤的交換頁(yè)數(shù)量,單位:KB/秒。
io塊設(shè)備
bi: 發(fā)送到塊設(shè)備的塊數(shù),單位:塊/秒。
bo: 從塊設(shè)備接收到的塊數(shù),單位:塊/秒。
system系統(tǒng)
in: 每秒的中斷數(shù),包括時(shí)鐘中斷。
cs: 每秒的環(huán)境(上下文)切換次數(shù)。
cpu中央處理器
cs:用戶進(jìn)程使用的時(shí)間 。以百分比表示。
sy:系統(tǒng)進(jìn)程使用的時(shí)間。 以百分比表示。
id:中央處理器的空閑時(shí)間 。以百分比表示。