一、 100.0.0.16/28 對應網段的網關地址、廣播地址、可分配IP地址範圍算法
IP地址轉化爲二進制:01100100 00000000 00000000 00010000
express
子網掩碼:11111111 11111111 11111111 11110000bash
網絡地址爲: 01100100 00000000 00000000 00010000網絡
IP範圍:01100100 00000000 00000000 00010000-01100100 00000000 00000000 00011111dom
轉化爲十進制:100.0.0.16-100.0.0.31
tcp
網關地址:100.0.0.16ide
廣播地址:100.0.0.31函數
IP地址範圍:100.0.0.17-100.0.0.30post
二、 使用man手冊學習tcpdump的使用學習
NAME tcpdump - dump traffic on a network #抓取網絡上的包 SYNOPSIS 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 ] 一、指定端口抓包 -i [root@localhost ~]# tcpdump -i ens33 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 22:47:33.900935 IP localhost.localdomain.59499 > gateway.domain: 12932+ A? www.baidu.com. (31) 22:47:33.901060 IP localhost.localdomain.59499 > gateway.domain: 54414+ AAAA? www.baidu.com. (31) 22:47:33.901189 IP localhost.localdomain.52477 > gateway.domain: 12402+ A? ss1.bdstatic.com. (34) 22:47:33.901287 IP localhost.localdomain.52477 > gateway.domain: 64121+ AAAA? ss1.bdstatic.com. (34) 22:47:33.903088 IP localhost.localdomain.36358 > gateway.domain: 43071+ PTR? 2.2.168.192.in-addr.arpa. (42) 二、只抓10個包 tcpdump -i ens33 -c 10 [root@localhost ~]# tcpdump -c 10 -i ens33 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 22:49:23.146872 IP localhost.localdomain.56946 > gateway.domain: 36132+ A? ss1.bdstatic.com. (34) 22:49:23.147031 IP localhost.localdomain.56946 > gateway.domain: 35127+ AAAA? ss1.bdstatic.com. (34) 22:49:23.147297 IP localhost.localdomain.38626 > gateway.domain: 28615+ A? www.baidu.com. (31) 22:49:23.147406 IP localhost.localdomain.38626 > gateway.domain: 57804+ AAAA? www.baidu.com. (31) 22:49:23.150173 IP localhost.localdomain.34523 > gateway.domain: 31762+ PTR? 2.2.168.192.in-addr.arpa. (42) 22:49:23.150241 IP localhost.localdomain.58912 > 183.232.231.172.https: Flags [S], seq 663413922, win 29200, options [mss 1460,sackOK,TS val 590537 ecr 0,nop,wscale 7], length 0 22:49:23.150384 IP localhost.localdomain.36253 > gateway.domain: 53982+ A? www.baidu.com. (31) 22:49:23.152896 IP gateway.domain > localhost.localdomain.56946: 35127 1/1/0 CNAME sslbdstatic.jomodns.com. (131) 22:49:23.154942 IP gateway.domain > localhost.localdomain.38626: 57804 1/1/0 CNAME www.a.shifen.com. (115) 22:49:23.156571 IP gateway.domain > localhost.localdomain.56946: 36132 2/0/0 CNAME sslbdstatic.jomodns.com., A 111.20.242.32 (84) 10 packets captured 371 packets received by filter 303 packets dropped by kernel 三、數字的方式顯示 tcpdump -nn [root@localhost ~]# tcpdump -nn -i ens33 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 22:56:24.902263 IP 192.168.2.100.58968 > 183.232.231.172.443: Flags [.], ack 2676554439, win 59860, length 0 22:56:24.902707 IP 183.232.231.172.443 > 192.168.2.100.58968: Flags [.], ack 1, win 64240, length 0 22:56:25.032250 IP 192.168.2.100.55043 > 209.97.168.88.123: NTPv4, Client, length 48 22:56:25.092723 IP 192.168.2.100.58964 > 183.232.231.172.443: Flags [.], ack 141766852, win 64240, length 0 22:56:25.093706 IP 183.232.231.172.443 > 192.168.2.100.58964: Flags [.], ack 1, win 64240, length 0 22:56:25.232069 IP 209.97.168.88.123 > 192.168.2.100.55043: NTPv4, Server, length 48 22:56:29.104888 IP 192.168.2.100.34140 > 193.228.143.24.123: NTPv4, Client, length 48 22:56:29.546396 IP 193.228.143.24.123 > 192.168.2.100.34140: NTPv4, Server, length 48 四、顯示報文的以太頭 -e [root@localhost ~]# tcpdump -i ens33 -c 4 -e host www.baidu.com tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 23:05:41.780052 00:0c:29:12:e0:1e (oui Unknown) > 00:50:56:e6:bc:18 (oui Unknown), ethertype IPv4 (0x0800), length 74: localhost.localdomain.58994 > 183.232.231.172.https: Flags [S], seq 4281264146, win 29200, options [mss 1460,sackOK,TS val 1569167 ecr 0,nop,wscale 7], length 0 23:05:41.830814 00:50:56:e6:bc:18 (oui Unknown) > 00:0c:29:12:e0:1e (oui Unknown), ethertype IPv4 (0x0800), length 60: 183.232.231.172.https > localhost.localdomain.58994: Flags [S.], seq 3359722914, ack 4281264147, win 64240, options [mss 1460], length 0 23:05:41.830892 00:0c:29:12:e0:1e (oui Unknown) > 00:50:56:e6:bc:18 (oui Unknown), ethertype IPv4 (0x0800), length 54: localhost.localdomain.58994 > 183.232.231.172.https: Flags [.], ack 1, win 29200, length 0 23:05:41.831130 00:0c:29:12:e0:1e (oui Unknown) > 00:50:56:e6:bc:18 (oui Unknown), ethertype IPv4 (0x0800), length 571: localhost.localdomain.58994 > 183.232.231.172.https: Flags [P.], seq 1:518, ack 1, win 29200, length 517 4 packets captured 122 packets received by filter 55 packets dropped by kernel 五、只抓與某個主機交互的包 host 選項 [root@localhost ~]# tcpdump -i ens33 host www.baidu.com tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 23:12:40.353274 IP localhost.localdomain > 183.232.231.172: ICMP echo request, id 3763, seq 1, length 64 23:12:40.423969 IP 183.232.231.172 > localhost.localdomain: ICMP echo reply, id 3763, seq 1, length 64 23:12:50.433735 IP localhost.localdomain > 183.232.231.172: ICMP echo request, id 3763, seq 2, length 64 23:12:50.496038 IP 183.232.231.172 > localhost.localdomain: ICMP echo reply, id 3763, seq 2, length 64 23:12:51.436260 IP localhost.localdomain > 183.232.231.172: ICMP echo request, id 3763, seq 3, length 64 23:12:51.485216 IP 183.232.231.172 > localhost.localdomain: ICMP echo reply, id 3763, seq 3, length 64 六、只抓tcp報文,udp報文,http報文,https報文 tcpdump -i ens33 -c 4 tcp|udp|http|https 七、只抓指定tcp端口號,udp端口號的報文 tcpdump -i ens33 tcp port 80
三、 詳細敘述殭屍進程產生的緣由以及危害
一、什麼是殭屍進程? 當子進程(child process)先於父進程(parent process)退出,可是父進程沒有調用wait/waitpid回收子進程的資源,則子進程變成殭屍進程。 可是若是該進程的父進程已經結束,那該進程就不會變成殭屍進程,由於每一個進程結束的時候,系統會掃描全部運行中的進程,看看有沒有哪一個進程是剛 剛結束的進程的子進程,若是有就由Init來接管他,成爲他的父進程。 二、危害? 若是父進程不調用wait/waitpid,則子進程的保留信息不會被釋放,形成內核資源的沒法回收,同時進程號會一直被佔用,系統所能使用的進程號是 有限的,大量地產生殭屍進程將會致使系統不能產生新的進程。 三、怎麼避免殭屍進程? 防止的辦法是當父進程fork一個子進程後,必須經過wait/waitpid等函數等待子進程結束,但這會致使父進程掛起,因此一般的作法是用signal函數爲 SIGCHLD安裝handler,在handler函數中調用wait/waitpid函數進行回收。
四、 詳細說明vmstat輸出結果的含義
1)vmstat命令: 用來得到有關進程、虛存、頁面交換空間及 CPU活動的信息。這些信息反映了系統的負載狀況
2)用法
vmstat [-a] [-n] [-S unit] [delay [ count]]
vmstat [-s] [-n] [-S unit]
vmstat [-m] [-n] [delay [ count]]
vmstat [-d] [-n] [delay [ count]]
vmstat [-p disk partition] [-n] [delay [ count]]
vmstat [-f]
vmstat [-V]
-a:顯示活躍和非活躍內存
-f:顯示從系統啓動至今的fork數量 。
-m:顯示slabinfo
-n:只在開始時顯示一次各字段名稱。
-s:顯示內存相關統計信息及多種系統活動數量。
delay:刷新時間間隔。若是不指定,只顯示一條結果。
count:刷新次數。若是不指定刷新次數,但指定了刷新時間間隔,這時刷新次數爲無窮。
-d:顯示磁盤相關統計信息。
-p:顯示指定磁盤分區統計信息
-S:使用指定單位顯示。參數有 k 、K 、m 、M ,分別表明1000、102四、1000000、1048576字節(byte)。默認單位爲K(1024 bytes)
-V:顯示vmstat版本信息。
3)字段含義說明:
類別 |
項目 |
含義 |
說明 |
Procs(進程) |
r |
等待執行的任務數 |
展現了正在執行和等待cpu資源的任務個數。當這個值超過了cpu個數,就會出現cpu瓶頸。 |
B |
等待IO的進程數量 |
||
Memory(內存) |
swpd |
正在使用虛擬的內存大小,單位k |
|
free |
空閒內存大小 |
||
buff |
已用的buff大小,對塊設備的讀寫進行緩衝 |
||
cache |
已用的cache大小,文件系統的cache |
||
inact |
非活躍內存大小,即被標明可回收的內存,區別於free和active |
具體含義見:概念補充(當使用-a選項時顯示) |
|
active |
活躍的內存大小 |
具體含義見:概念補充(當使用-a選項時顯示) |
|
Swap |
si |
每秒從交換區寫入內存的大小(單位:kb/s) |
|
so |
每秒從內存寫到交換區的大小 |
||
IO |
bi |
每秒讀取的塊數(讀磁盤) |
如今的Linux版本塊的大小爲1024bytes |
bo |
每秒寫入的塊數(寫磁盤) |
||
system |
in |
每秒中斷數,包括時鐘中斷 |
這兩個值越大,會看到由內核消耗的cpu時間會越多 |
cs |
每秒上下文切換數 |
||
CPU(以百分比表示) |
Us |
用戶進程執行消耗cpu時間(user time) |
us的值比較高時,說明用戶進程消耗的cpu時間多,可是若是長期超過50%的使用,那麼咱們就該考慮優化程序算法或其餘措施了 |
Sy |
系統進程消耗cpu時間(system time) |
sys的值太高時,說明系統內核消耗的cpu資源多,這個不是良性的表現,咱們應該檢查緣由。 |
|
Id |
空閒時間(包括IO等待時間) |
||
wa |
等待IO時間 |
Wa太高時,說明io等待比較嚴重,這多是因爲磁盤大量隨機訪問形成的,也有多是磁盤的帶寬出現瓶頸。 |