2018-06-08 (第十三課)系統(tǒng)性能監(jiān)測(cè)實(shí)戰(zhàn)

目錄

  1. 系統(tǒng)負(fù)載監(jiān)測(cè)
    1.1 查看系統(tǒng)平均負(fù)載:w潭千、uptime
    1.2 查看 CPU 的硬件信息:/proc/cpuinfo
    1.3 查看更全面的系統(tǒng)負(fù)載信息:vmstat
    1.4 系統(tǒng)監(jiān)控神器:sar
  2. 硬盤監(jiān)測(cè)
    2.1 iostat
    2.2 iotop
  3. 內(nèi)存監(jiān)測(cè)
    3.1 free
  4. 進(jìn)程監(jiān)測(cè)
    4.1 靜態(tài)地查看系統(tǒng)進(jìn)程:ps
    4.2 動(dòng)態(tài)排行系統(tǒng)進(jìn)程:top
  5. 網(wǎng)絡(luò)監(jiān)測(cè)
    5.1 實(shí)時(shí)監(jiān)控網(wǎng)卡流量查看:nload
    5.2 查看服務(wù)端口狀態(tài):netstat
  6. 網(wǎng)絡(luò)抓包
    6.1 tcpdump
    6.2 tshark

1. 系統(tǒng)負(fù)載監(jiān)測(cè)

1.1 查看系統(tǒng)平均負(fù)載:wuptime

命令很簡(jiǎn)單, 直接輸入 w 或 uptime 即可, 不需要輸入什么選項(xiàng)

1.1.1 w 顯示信息解釋

$ w
 12:13:37 up  1:43,  2 users,  load average: 0.00, 0.01, 0.05
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1      12:12    1:21   0.00s  0.00s -bash
root     pts/0     12:13    1.00s  0.02s  0.01s w
  • 12:13:37:系統(tǒng)當(dāng)前時(shí)間
  • up 1:43:系統(tǒng)已運(yùn)行時(shí)間
  • 2 users:當(dāng)前在線用戶數(shù)
  • load average:?jiǎn)挝粫r(shí)間內(nèi),使用 CPU 的活動(dòng)的進(jìn)程有多少個(gè)楔敌,分別為1分鐘唆缴、5分鐘忍坷、10分鐘的平均載負(fù),越小證明負(fù)載越低宫盔,一般重點(diǎn)看1分鐘的平均負(fù)載,該值如與當(dāng)前系統(tǒng)的CPU 核數(shù)相同則為最佳
  • USER:用戶名
  • TTY:使用何種方式登錄享完,tty 為直接在控制臺(tái)登錄灼芭,pts 為遠(yuǎn)程登錄
  • LOGIN@:何時(shí)登錄的
  • IDLE:空閑了多久,從用戶上一次執(zhí)行完命令還是算
  • JCPU PCPU:與用戶登陸后執(zhí)行命令消耗的 CPU 時(shí)間有關(guān)
  • WHAT:用戶當(dāng)前正在執(zhí)行什么命令

1.1.2 uptime顯示信息解釋(其實(shí)就是 w 命令顯示的頭信息)

$ uptime
 12:34:54 up 9 min,  1 user,  load average: 0.00, 0.01, 0.02

1.2 查看 CPU 的硬件信息:/proc/cpuinfo

$ cat /proc/cpuinfo
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 60
model name  : Intel(R) Core(TM) i5-4570S CPU @ 2.90GHz
stepping    : 3
microcode   : 0x24
cpu MHz     : 2893.090
cache size  : 6144 KB
physical id : 0
siblings    : 1
core id     : 0
cpu cores   : 1
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
bogomips    : 5786.18
clflush size    : 64
cache_alignment : 64
address sizes   : 43 bits physical, 48 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model       : 60
model name  : Intel(R) Core(TM) i5-4570S CPU @ 2.90GHz
stepping    : 3
microcode   : 0x24
cpu MHz     : 2893.090
cache size  : 6144 KB
physical id : 2
siblings    : 1
core id     : 0
cpu cores   : 1
apicid      : 2
initial apicid  : 2
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
bogomips    : 5786.18
clflush size    : 64
cache_alignment : 64
address sizes   : 43 bits physical, 48 bits virtual
power management:
  • processor #:第 # 顆 CPU 般又,從 0 開始排
  • cpu cores:這顆 CPU 所具有的核數(shù)彼绷,

1.3 查看更全面的系統(tǒng)負(fù)載信息:vmstat

不需要什么復(fù)雜的選項(xiàng)或參數(shù),直接查看結(jié)果即可

1.3.1 習(xí)慣用法

vmstat <frequency> <times>
如:vmstat 1 5:表示每 1 秒執(zhí)行一次 vmstat茴迁,總共執(zhí)行 5 次

1.3.2 vmstat 顯示信息解釋

$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 758876    692  77624    0    0    35     2   20   30  0  0 100  0  0
  • procs 類:顯示與進(jìn)程相關(guān)的內(nèi)容
    • rrunning寄悯,正處于運(yùn)行隊(duì)列中的進(jìn)程數(shù)
    • bblock,正處于等待中的進(jìn)程數(shù)堕义,往往是因?yàn)橛脖P猜旬、網(wǎng)卡等問(wèn)題造成堵塞的進(jìn)程
  • memory 類:顯示與內(nèi)存相關(guān)的內(nèi)容
    • swpd: 內(nèi)存不夠的時(shí)候才會(huì)占用 swap,如果該字段不變則為正常倦卖,如果頻繁變化則表示內(nèi)存不夠了
    • free
    • buff
    • cache
  • swap 類:顯示與 swap 相關(guān)的內(nèi)容洒擦,input/output 以內(nèi)存為參照物,即 input 為從 swap 進(jìn)入到 內(nèi)存
    • si:有多少kb 的數(shù)據(jù)糖耸,由 swap input 到內(nèi)存中
    • so:有多少 kb 的數(shù)據(jù)秘遏,由內(nèi)存 output 到 swap 中
  • io 類:顯示與硬盤相關(guān)的內(nèi)容,input/output 以內(nèi)存為參照物嘉竟,即 input 為從硬盤進(jìn)入到內(nèi)存
    • bi:有多少kb 的數(shù)據(jù)邦危,由磁盤 input 到內(nèi)存中
    • bo:有多少 kb 的數(shù)據(jù)洋侨,由內(nèi)存 output 到磁盤中
  • cpu 類:顯示與 cpu 相關(guān)的內(nèi)容, us+sys+id 數(shù)字總和等于100
    • us: user倦蚪,用戶的進(jìn)程希坚,占用 CPU 的百分比
    • sy: system,系統(tǒng)的進(jìn)程陵且,占用 CPU 的百分比
    • id:idle裁僧,閑置的 CPU 百分比
    • wa:wait,等待 cpu 的進(jìn)程數(shù)慕购,如果存在聊疲,則表示 CPU 不夠用了
    • st:stealed,安裝虛擬機(jī)可能會(huì)偷走一部分 CPU 資源

1.4 系統(tǒng)監(jiān)控神器:sar

如需使用沪悲,提前安裝 yum -y install sysstat
功能相當(dāng)強(qiáng)大获洲,可謂 Linux 下的瑞士軍刀
由于 sar 會(huì)自動(dòng)保存日志,所以往往用來(lái)查看歷史的系統(tǒng)狀態(tài)

1.4.1 sar 的日志

  • sar 一旦安裝成功殿如,便會(huì)每隔10分鐘抓一次系統(tǒng)狀態(tài)贡珊,放到 /var/log/sa/sa## 中,日志以 sa 加當(dāng)天的日期命名涉馁,保留1個(gè)月门岔,但是該日志為二進(jìn)制文件,只能用 sar -f <log_name> 來(lái)進(jìn)行查看
  • sar 運(yùn)行到第二天時(shí)烤送,會(huì)生成昨日的 /var/log/sa/sar## 日志文件寒随,該文件可以直接使用 cat 查看

1.4.2 Options

  • sar [Options] <frequency> <times>:手動(dòng)執(zhí)行查看,并指定查看的頻率與次數(shù)胯努,類似 vmstat 的用法
  • -n DEV:查看網(wǎng)卡流量
  • -q:查看系統(tǒng)負(fù)載
  • -b:查看磁盤讀寫
  • -f:指定日志文件牢裳,如 sar -n DEV -f /var/log/sa/sa11sar -q -f /var/log/sa/sa11

1.4.3 使用方法

1. sar -n DEV 1 1查看網(wǎng)卡流量

$ sar -n DEV 1 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain)     2018年06月11日     _x86_64_    (2 CPU)

13時(shí)56分28秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
13時(shí)56分29秒 eno16777736      0.00      0.00      0.00      0.00      0.00      0.00      0.00
13時(shí)56分29秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00

平均時(shí)間:     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
平均時(shí)間: eno16777736      0.00      0.00      0.00      0.00      0.00      0.00      0.00
平均時(shí)間:        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
  • IFACE: 說(shuō)明是哪塊網(wǎng)卡
  • rxpck/s:每秒接受的數(shù)據(jù)包數(shù),幾千個(gè)數(shù)據(jù)包是基本正常的叶沛,上萬(wàn)可能就有問(wèn)題了
  • txpck/s:每秒發(fā)送的數(shù)據(jù)包數(shù)
  • rxkB/s:每秒接受的數(shù)據(jù)大小
  • txkB/s:每秒發(fā)送的數(shù)據(jù)大小

2. sar -q 1 1查看系統(tǒng)負(fù)載

其實(shí)也是主要看 ldavg-1蒲讯、ldavg-5、ldavg-15灰署,與 w 基本相同
$ sar -q -f /var/log/sa/sa11
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) 2018年06月11日 x86_64 (2 CPU)

14時(shí)00分01秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
14時(shí)10分02秒         1       364      0.00      0.01      0.03         0
平均時(shí)間:         1       364      0.00      0.01      0.03         0

3 sar -b 1 1查看硬盤信息

$ sar -b 1 1
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain)     2018年06月11日     _x86_64_    (2 CPU)

14時(shí)21分48秒       tps      rtps      wtps   bread/s   bwrtn/s
14時(shí)21分49秒      0.00      0.00      0.00      0.00      0.00
平均時(shí)間:      0.00      0.00      0.00      0.00      0.00

2. 硬盤監(jiān)測(cè)

當(dāng)通過(guò)觀察系統(tǒng)負(fù)載時(shí)發(fā)現(xiàn) block 或 wait 的進(jìn)程較多時(shí)判帮,需要更具體地查看硬盤的 io 信息

2.1 iostat

用法:iostat <frequency> <times>,與 vmstat溉箕、sar 類似

  1. 直接 iostat

查看的信息跟 sar -b看到的基本沒(méi)差

$ iostat
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain)     2018年06月11日     _x86_64_    (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       0.04    0.00    0.14    0.02    0.00   99.80

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               0.82        17.78         9.48     148921      79409
sdb               0.04         0.17         0.00       1449          0
  1. iostat -x

重點(diǎn)看%util晦墙,該字段大致含義為:在系統(tǒng)負(fù)載中, CPU 等待硬盤 IO 的次數(shù)的占比肴茄,若較大則硬盤性能已經(jīng)成為系統(tǒng)瓶頸

$ iostat -x
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain)     2018年06月11日     _x86_64_    (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       0.04    0.00    0.14    0.02    0.00   99.80

Device:  rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda      0.07     0.02    0.59    0.24    17.78     9.48    66.24     0.00    1.88    1.50    2.81   0.76   0.06
sdb      0.13     0.00    0.04    0.00     0.17     0.00     8.09     0.00    0.13    0.13    0.00   0.13   0.00

2.2 iotop

如需使用晌畅,提前安裝yum -y install iotop
與 top 命令類似,查看哪些進(jìn)程占用 IO 比較狠

$ iotop
Total DISK READ :   0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ:   0.00 B/s | Actual DISK WRITE:       0.00 B/s
   TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
     1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % systemd --switched-root --system --deserialize 23
     2 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kthreadd]
     3 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksoftirqd/0]

3. 內(nèi)存監(jiān)測(cè)

3.1 free

3.1.1 Options

  • -m:以 MB 為單位
  • -b:以 Byte 為單位
  • -h: 自動(dòng)人性化單位

3.1.2 示例

$ free -h
                       total       used       free     shared    buffers     cachde
Mem:                    979M       372M       607M       6.6M       692K       198M
-/+ buffers/cache:      173M       805M
Swap:                   2.0G         0B       2.0G

3.1.3 內(nèi)存小常識(shí)

  • 什么是 cache 和 buffer 呢寡痰?


    cache 與 buffer
  • 有時(shí) used+free 不等于 total抗楔,是因?yàn)橛袝r(shí)將內(nèi)存分配給了 buffer 和 cache 了棋凳,所以


  • avaliable 包含兩塊內(nèi)容,分別是 free 部分及 buffer/cache 的剩余部分:


4. 進(jìn)程監(jiān)測(cè)

4.1 靜態(tài)地查看系統(tǒng)進(jìn)程:ps

何為靜態(tài)连躏?就是該命令僅借取某個(gè)時(shí)間點(diǎn)的 process 狀態(tài)

4.1.1 Options

  • u :顯示面向用戶的信息格式
  • x:通常與 a 一起使用剩岳,可列出較為完整的信息
  • l:顯示比 u 更詳細(xì)的信息
  • -A-e:顯示所有的 process
  • -f:更完整地顯示
  • -u <userllist>:顯示指定用戶相關(guān)的 process

4.1.2 習(xí)慣用法

ps auxps -elf

4.1.3 顯示信息解釋

  1. 常用的 aux 參數(shù)顯示信息
$ ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          2  0.0  0.0      0     0 ?        S    09:53   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    09:53   0:00 [ksoftirqd/0]
root          5  0.0  0.0      0     0 ?        S<   09:53   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        S    09:53   0:00 [kworker/u256:0]
  • USER:使用該進(jìn)程的用戶名
  • PID:進(jìn)程號(hào)
  • %CPU:CPU 使用率
  • %MEM:內(nèi)存使用率
  • VSZ:虛擬內(nèi)存使用量
  • RSS:物理內(nèi)存使用量
  • TTY:該 process 是在哪個(gè)終端上運(yùn)行的,若與終端無(wú)關(guān)則為入热?
  • STAT:該 process 目前的狀態(tài)
    • D:不可被喚醒的睡眠狀態(tài)拍棕,通常
    • R:Running,運(yùn)行中的進(jìn)程
    • S:Sleeping勺良,暫時(shí)不進(jìn)行的進(jìn)程
    • T:sToped绰播,如使用Ctrl+z被丟至后臺(tái)且置為暫停的進(jìn)程
    • Z:Zombie,僵尸進(jìn)程(已經(jīng)執(zhí)行完畢的進(jìn)程尚困,但該進(jìn)程的父進(jìn)程無(wú)法完整地將該進(jìn)程結(jié)束幅垮,從而造成該進(jìn)程一直存在內(nèi)存中)
    • +:前臺(tái)進(jìn)程
    • <:高優(yōu)先級(jí)的 process
    • N:低優(yōu)先級(jí)的 process
    • L:內(nèi)存中被鎖了內(nèi)存分頁(yè)
    • s:主進(jìn)程
    • l:多線程進(jìn)程
  • START:該 process 啟動(dòng)的時(shí)間
  • TIME:該 process 實(shí)際使用 CPU 運(yùn)行的時(shí)間
  • COMMAND:該 process 是由哪條指令觸發(fā)的
  1. -l能夠顯示更全面的信息
$ ps ax -l
F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY        TIME CMD
1 S     0      2      0  0  80   0 -     0 kthrea ?          0:00 [kthreadd]
1 S     0      3      2  0  80   0 -     0 smpboo ?          0:00 [ksoftirqd/0]
1 S     0      5      2  0  60 -20 -     0 worker ?          0:00 [kworker/0:0H]
  • F:Flag
  • S:State
  • PPID:父進(jìn)程的 PID
  • C:同%CPU
  • PRI
  • NI
  • ADDR:指出該 process 在內(nèi)存的哪個(gè)部分,如果為 Running 的 process尾组,一般顯示-
  • SZ:代表內(nèi)存的用量

4.2 動(dòng)態(tài)排行系統(tǒng)進(jìn)程:top

很綜合的一款工具,包含了 w示弓、vmstat 中的信息讳侨,并能夠動(dòng)態(tài)地顯示進(jìn)程所占用的進(jìn)程

4.2.1 Options

  • -c:在 COMMAND 列,能查看到具體的命令奏属,并且為絕度路徑
  • -bn1:一次性列出靜態(tài)的 top 信息跨跨,寫腳本時(shí)常用

4.2.2 top顯示信息解釋

top - 13:31:21 up  1:06,  1 user,  load average: 0.00, 0.01, 0.03
Tasks: 346 total,   1 running, 345 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:   1003456 total,   246128 used,   757328 free,      692 buffers
KiB Swap:  2097148 total,        0 used,  2097148 free.    78060 cached Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
     1 root      20   0   49864   6384   3708 S   0.0  0.6   0:01.73 systemd
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.04 kthreadd
     3 root      20   0       0      0      0 S   0.0  0.0   0:00.00 ksoftirqd/0
     5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H
     6 root      20   0       0      0      0 S   0.0  0.0   0:00.06 kworker/u256:0
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.56 migration/0
     8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh
     9 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcuob/0
    10 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcuob/1
    11 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcuob/2
    12 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcuob/3
  • 第一行:與w命令及uptime命令顯示結(jié)果相同
  • 第二行:進(jìn)程信息匯總,列出了各種狀態(tài)的進(jìn)程數(shù)量及進(jìn)程的總數(shù)量
  • 第三行:CPU 相關(guān)囱皿,與vmstat輸出結(jié)果基本相同
  • 第四行:內(nèi)存統(tǒng)計(jì)信息
  • 第五行:swap 統(tǒng)計(jì)信息
  • 動(dòng)態(tài)排列部分(默認(rèn)按 %CPU 進(jìn)行排序)
    • PID:進(jìn)程號(hào)
    • USER:進(jìn)程所屬的用戶名
    • PR
    • NI
    • VIRT:虛擬內(nèi)存使用量勇婴,單位是 KB
    • RES:物理內(nèi)存使用量,單位是 KB
    • SHR:共享的內(nèi)存嘱腥,單位是 KB
    • S:進(jìn)程狀態(tài)
    • %CPU:CPU 占用百分比
    • %MEM:內(nèi)存占用百分比
    • TIME+:運(yùn)行了多久
    • COMMAND:觸發(fā)該進(jìn)程的命令

4.2.3 使用技巧

  • 快捷按鍵
    *按 q耕渴,退出
    *按大寫的 M,以內(nèi)存使用率排序
    *按大寫的 P齿兔,以 CPU 使用率排序
  • 進(jìn)入 top 后橱脸,按1,查看到的 CPU 統(tǒng)計(jì)信息會(huì)在總 CPU 與每顆 CPU 之間進(jìn)行切換
top - 13:37:31 up  1:12,  1 user,  load average: 0.00, 0.01, 0.03
Tasks: 346 total,   2 running, 344 sleeping,   0 stopped,   0 zombie
%Cpu0  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:   1003456 total,   246240 used,   757216 free,      692 buffers
KiB Swap:  2097148 total,        0 used,  2097148 free.    78060 cached Mem

5. 網(wǎng)絡(luò)監(jiān)測(cè)

5.1 實(shí)時(shí)監(jiān)控網(wǎng)卡流量查看:nload

若需使用分苇,提前安裝yum -y install nload

5.1.1 使用方式

  • q:退出
  • 左右方向鍵:切換網(wǎng)卡信息

5.1.2 示例

Device eno16777736 [172.16.166.254] (1/2):
===================================================================================
Incoming:

                                                      Curr: 1.02 kBit/s
                                                      Avg: 1.07 kBit/s
                                                      Min: 1.01 kBit/s
                                                      Max: 2.03 kBit/s
                                                      Ttl: 5.18 MByte
Outgoing:

                                                      Curr: 9.34 kBit/s
                                                      Avg: 9.23 kBit/s
                                                      Min: 3.89 kBit/s
                                                      Max: 9.86 kBit/s
                                                      Ttl: 1.24 MByte
  • Curr:當(dāng)前值
  • Avg:平均值
  • Min:最小值
  • Max: 最大值

5.2 查看服務(wù)端口狀態(tài):netstat

5.2.1 Options

  • -a:顯示所有的連接狀態(tài)添诉,包括 tcp/udp/unix socket
  • -t:僅列出 TCP 連接
  • -u:僅列出 UDP 連接
  • -l:僅列出處于 Listen 狀態(tài)的連接
  • -n:不顯示主機(jī)名及服務(wù)名,而是以 IP 及端口號(hào)代替
  • -p:列出 PID 與 Program 的檔名
  • -c #:可以設(shè)定幾秒種后自動(dòng)更新一次

5.2.2 習(xí)慣用法

netstat -lnp
netstat -lntp
netstat -an

5.2.3 顯示信息解釋

$ netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      886/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1168/master
tcp6       0      0 :::22                   :::*                    LISTEN      886/sshd
tcp6       0      0 ::1:25                  :::*                    LISTEN      1168/master
  • Proto:說(shuō)明鏈接的協(xié)議 TCP/UDP/Unix Socket
  • Local Address:該鏈接中医寿,本端的 IP 地址及端口號(hào)
  • Foreign Address:該鏈接中栏赴,對(duì)端的 IP 地址及端口號(hào)
  • State:說(shuō)明處于哪種狀態(tài) Listening/Connected等等,與三次握手靖秩、四次揮手有關(guān)
  • PID/Program name

5.2.4 技巧與注意事項(xiàng)

  1. 技巧 - 查看各種鏈接的總數(shù)

netstat -an | awk '/^tcp/ {++sta[$NF]} END {for (key in sta) print key,"\t",sta[key]}'

6. 網(wǎng)絡(luò)抓包

6.1 tcpdump

若需使用须眷,提前安裝yum -y install tcpdump
Linux 下的抓包工具竖瘾,類似 Win 下的 wireshark

6.1.1 Options

  • -I <Iface>:指定待抓包的網(wǎng)卡
  • -nn:取消主機(jī)名與端口名的翻譯
  • -c #:指定抓包數(shù)
  • -w <file_name>:將抓包情況導(dǎo)出到某一文件
  • -r <file_name>:讀取某個(gè)抓包文件

6.1.2 用法示例

  • tcpdump -nn port 22:篩選端口為22的流量

  • tcpdump -nn not port 22:篩選端口非22的流量

  • tcpdump -nn not port 22 and host 192.168.1.1:篩選端口非22且與192.168.1.1通信的流量

  • tcpdump -nn -c 100 -w 1.cap:抓100個(gè)包,寫入1.cap 文件

  • tcpdump -r 1.cap:讀取1.cap 文件

6.1.3 注意事項(xiàng)

  • 抓包文件無(wú)法直接查看柒爸,必須用 tcpdump -r 進(jìn)行讀取准浴。其實(shí)抓取到的是整個(gè)數(shù)據(jù)包,但使用 tcpdump -r 讀取到的只是流量信息捎稚。

6.2 tshark

若需使用乐横,提前安裝yum -y install wireshark
其實(shí)這就是 WireShark 的 Linux 版本
在此不做過(guò)多介紹,僅記住一條命令

tshark -n -t a -R http.request -T fields\
-e "frame.time" -e "ip.src" -e "http.host"\
-e "http.request.method" -e "http.request.uri"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末今野,一起剝皮案震驚了整個(gè)濱河市葡公,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌条霜,老刑警劉巖催什,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異宰睡,居然都是意外死亡蒲凶,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門拆内,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)旋圆,“玉大人,你說(shuō)我怎么就攤上這事麸恍×榍桑” “怎么了?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵抹沪,是天一觀的道長(zhǎng)刻肄。 經(jīng)常有香客問(wèn)我,道長(zhǎng)融欧,這世上最難降的妖魔是什么敏弃? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮蹬癌,結(jié)果婚禮上权她,老公的妹妹穿的比我還像新娘。我一直安慰自己逝薪,他們只是感情好隅要,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著董济,像睡著了一般步清。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天廓啊,我揣著相機(jī)與錄音欢搜,去河邊找鬼。 笑死谴轮,一個(gè)胖子當(dāng)著我的面吹牛炒瘟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播第步,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼疮装,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了粘都?” 一聲冷哼從身側(cè)響起廓推,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎翩隧,沒(méi)想到半個(gè)月后樊展,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡堆生,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年专缠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片淑仆。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡藤肢,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出糯景,到底是詐尸還是另有隱情,我是刑警寧澤省骂,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布蟀淮,位于F島的核電站,受9級(jí)特大地震影響钞澳,放射性物質(zhì)發(fā)生泄漏怠惶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一轧粟、第九天 我趴在偏房一處隱蔽的房頂上張望策治。 院中可真熱鬧,春花似錦兰吟、人聲如沸通惫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)履腋。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間遵湖,已是汗流浹背悔政。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留延旧,地道東北人谋国。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像迁沫,于是被迫代替她去往敵國(guó)和親芦瘾。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359