10月24日任务

10.6 监控io性能

10.7 free命令

10.8 ps命令

10.9 查看网络状态

10.10 linux下抓包

扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html

tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html 

10.6 监控io性能

磁盘状态的两个命令

iostat -x 磁盘使用
iotop   磁盘使用

我们在运维工作中,除了查看内存 cpu工作情况外,磁盘io也是非常重要的指标。

有时候,内存和CPU明明还有剩余,但是系统负载很高,用vmstat查看状态,会发现b和wa比较大,这说明系统的磁盘有瓶颈。所以,要更加详细去查看磁盘的状态。

监控系统状态

iostat命令 在安装sysstat的时候已经安装好了

用法可以是#iostat 也可以#iostat 1

用法和vmstat挺相似的

[root@centos7 sed]# iostat
Linux 3.10.0-693.el7.x86_64 (centos7.4-01) 2018年03月20日 _x86_64_(1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.06    0.00    0.16    0.08    0.00   99.69
Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               0.68         8.63         1.40     107340      17392
sdb               0.02         0.29         0.00       3612          0
dm-0              0.00         0.08         0.00       1036          0

这里可以看到sda sdb两块硬盘 和 读、写速度 这个命令看的东西不太丰富,

因为这些#sar -b都可以看到的。

[root@centos7 sed]#  sar -b
Linux 3.10.0-693.el7.x86_64 (centos7.4-01) 2018年03月20日 _x86_64_(1 CPU)
11时25分06秒       LINUX RESTART
11时30分02秒       tps      rtps      wtps   bread/s   bwrtn/s
11时40分01秒      0.07      0.00      0.07      0.00      1.27
11时50分01秒      0.30      0.14      0.16      3.84      3.76
12时00分01秒      0.07      0.01      0.06      0.78      0.68
12时10分01秒      0.11      0.02      0.09      0.31      1.14
12时20分01秒      0.88      0.41      0.47     11.15     11.03
12时30分01秒      0.04      0.00      0.04      0.00      0.55
12时40分01秒      0.05      0.00      0.05      0.00      0.53

[root@centos7 sed]# iostat -x
Linux 3.10.0-693.el7.x86_64 (centos7.4-01) 2018年03月20日 _x86_64_(1 CPU)
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.06    0.00    0.15    0.07    0.00   99.72
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.00     0.01    0.36    0.23     7.32     1.23    29.14     0.01   15.13    5.89   29.42   2.64   0.15
sdb               0.00     0.00    0.02    0.00     0.25     0.00    29.25     0.00    1.53    1.53    0.00   0.93   0.00
dm-0              0.00     0.00    0.00    0.00     0.07     0.00    48.19     0.00    3.53    3.53    0.00   1.47   0.00

关注点

  1. %util 这一列表示io等待 
  2. 磁盘使用,有多少时间占用cpu的,CPU有一部分是给进程处理的,计算的。也有一部分是要等待io的,等待磁盘读和写。
  3. 这个等待的时间比是多少 就是%util 
  4. 如果这个等待时间比大,读和写跟着大。证明磁盘读写处于繁忙状态,如果读和写不大,只是%util大就说明硬盘可能存在问题,有故障。如果硬盘很慢的话,肯定会影响性能,即使是CPU再厉害,运算再快,硬盘跟不上,也是会存在很大的瓶颈。

比如发现磁盘io很忙,很频繁,可以使用#iotop (第一次运行需要安装)

它和top很相似,也是动态显示,排序。

[root@centos7 sed]# iotop 

10.7 free命令

free 命令可以查看当前系统的总内存大小以及使用情况。

CentOS 7系统的free命令显示结果比CentOS 6更加简洁了一些,但大体上的内容是一致的。

[root@centos7 ~]# free
              total        used        free      shared  buff/cache   available
Mem:        1008152      126864      605284        6880      276004      702136
Swap:       2097148           0     2097148

三行,第一行是说明,第二行内存使用情况,第三行swap交换分区使用情况。需要关注的是第二行内存。

添加-m 使其输出单位是M,

[root@centos7 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         123         591           6         269         685
Swap:          2047           0        2047

-h显示当前适当的单位 *常用

[root@centos7 ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           984M        123M        591M        6.7M        269M        685M
Swap:          2.0G          0B        2.0G

解释:

linux系统 会把内存预分配一部分给 buff/cache

buffer和cache的区别方法

000是数据

000(磁盘)-->内存(cache)-->CPU

CPU要计算时,需要把数据从磁盘中读出来,临时放到内存中,这部分内存就是cache。

cpu(000)-->内存(buffer)-->磁盘

数据经过CPU计算,即将要写入磁盘,这时用的内存为buffer。

因为磁盘和CPU之间的数据转换速度有点差别,所以需要通过内存来缓解这种速度换算。

total=used+free+buff/cache

avaiable:系统可使用内存有多大。

avaiable包含了free和buffer/cache剩余部分。(available是关注点)

total和available是不同的。

如果发现cache/buff占用超过真实物理内存的50%,可以考虑释放它,处理方法http://blog.51cto.com/13578154/2150303 

10.8 ps命令

PS命令是专门显示系统进程,作用是汇报当前进程的快照。相当于windows的任务管理器。

#ps aux 把系统的所有进程都列出来

[root@DD-Server-9F ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  51632  3688 ?        Ss   6月11   0:49 /usr/lib/systemd/systemd --system --deserialize 21
root         2  0.0  0.0      0     0 ?        S    6月11   0:01 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    6月11   0:01 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   6月11   0:00 [kworker/0:0H]
root         8  0.0  0.0      0     0 ?        S    6月11   0:00 [migration/0]
root         9  0.0  0.0      0     0 ?        S    6月11   0:00 [rcu_bh]
root        10  0.0  0.0      0     0 ?        S    6月11   1:45 [rcu_sched]
root        11  0.0  0.0      0     0 ?        S    6月11   1:36 [watchdog/0]
root        12  0.0  0.0      0     0 ?        S    6月11   0:13 [watchdog/1]
root        13  0.0  0.0      0     0 ?        S    6月11   0:00 [migration/1]
root        14  0.0  0.0      0     0 ?        S    6月11   0:03 [ksoftirqd/1]
root        16  0.0  0.0      0     0 ?        S<   6月11   0:00 [kworker/1:0H]
root        17  0.0  0.0      0     0 ?        S    6月11   0:27 [kworker/u34:0]
root        18  0.0  0.0      0     0 ?        S    6月11   0:12 [watchdog/2]
root        19  0.0  0.0      0     0 ?        S    6月11   0:00 [migration/2]
root        20  0.0  0.0      0     0 ?        S    6月11   0:00 [ksoftirqd/2]
root        22  0.0  0.0      0     0 ?        S<   6月11   0:00 [kworker/2:0H]
root        23  0.0  0.0      0     0 ?        S    6月11   0:13 [watchdog/3]
root        24  0.0  0.0      0     0 ?        S    6月11   0:00 [migration/3]
root        25  0.0  0.0      0     0 ?        S    6月11   0:00 [ksoftirqd/3]
root        27  0.0  0.0      0     0 ?        S<   6月11   0:00 [kworker/3:0H]
root        30  0.0  0.0      0     0 ?        S    6月11   0:15 [kdevtmpfs]
root        31  0.0  0.0      0     0 ?        S<   6月11   0:00 [netns]
root        32  0.0  0.0      0     0 ?        S    6月11   0:01 [khungtaskd]
root        33  0.0  0.0      0     0 ?        S<   6月11   0:00 [writeback]
root        34  0.0  0.0      0     0 ?        S<   6月11   0:00 [kintegrityd]
root        35  0.0  0.0      0     0 ?        S<   6月11   0:00 [bioset]
root        36  0.0  0.0      0     0 ?        S<   6月11   0:00 [kblockd]
root        37  0.0  0.0      0     0 ?        S<   6月11   0:00 [md]
root        43  0.0  0.0      0     0 ?        S    6月11   0:00 [kswapd0]
root        44  0.0  0.0      0     0 ?        S    6月11   0:00 [kswapd1]
root        45  0.0  0.0      0     0 ?        SN   6月11   0:00 [ksmd]
root        46  0.0  0.0      0     0 ?        SN   6月11   0:11 [khugepaged]
root        47  0.0  0.0      0     0 ?        S<   6月11   0:00 [crypto]
root        55  0.0  0.0      0     0 ?        S<   6月11   0:00 [kthrotld]
root        56  0.0  0.0      0     0 ?        S    6月11   0:00 [kworker/u33:1]
root        57  0.0  0.0      0     0 ?        S<   6月11   0:00 [kmpath_rdacd]
root        58  0.0  0.0      0     0 ?        S<   6月11   0:00 [kpsmoused]
root        60  0.0  0.0      0     0 ?        S<   6月11   0:00 [ipv6_addrconf]
root        79  0.0  0.0      0     0 ?        S<   6月11   0:00 [deferwq]
root       114  0.0  0.0      0     0 ?        S    6月11   0:00 [kauditd]
root       251  0.0  0.0      0     0 ?        S<   6月11   0:00 [ata_sff]
root       252  0.0  0.0      0     0 ?        S    6月11   0:00 [scsi_eh_0]
root       254  0.0  0.0      0     0 ?        S<   6月11   0:00 [scsi_tmf_0]
root       258  0.0  0.0      0     0 ?        S    6月11   0:00 [scsi_eh_1]
root       259  0.0  0.0      0     0 ?        S<   6月11   0:00 [scsi_tmf_1]
root       263  0.0  0.0      0     0 ?        S<   6月11   0:00 [mpt_poll_0]
root       264  0.0  0.0      0     0 ?        S<   6月11   0:00 [mpt/0]
root       280  0.0  0.0      0     0 ?        S<   6月11   0:00 [ttm_swap]
root       290  0.0  0.0      0     0 ?        S<   6月11   0:06 [kworker/1:1H]
root       292  0.0  0.0      0     0 ?        S    6月11   0:00 [scsi_eh_2]
root       293  0.0  0.0      0     0 ?        S<   6月11   0:00 [scsi_tmf_2]
root       311  0.0  0.0      0     0 ?        S<   6月11   0:00 [kworker/2:1H]
root       312  0.0  0.0      0     0 ?        S<   6月11   0:43 [kworker/0:1H]
root       317  0.0  0.0      0     0 ?        S<   6月11   0:00 [bioset]
root       318  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfsalloc]
root       319  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs_mru_cache]
root       320  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-buf/sdc3]
root       321  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-data/sdc3]
root       322  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-conv/sdc3]
root       323  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-cil/sdc3]
root       324  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-reclaim/sdc]
root       325  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-log/sdc3]
root       326  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-eofblocks/s]
root       327  0.0  0.0      0     0 ?        S    6月11  13:37 [xfsaild/sdc3]
root       395  0.0  0.3  69580 28520 ?        Ss   6月11   2:42 /usr/lib/systemd/systemd-journald
root       422  0.0  0.0  43768  1672 ?        Ss   6月11   4:53 /usr/lib/systemd/systemd-udevd
root       452  0.0  0.0      0     0 ?        SN   6月11   0:00 [kipmi0]
root       472  0.0  0.0      0     0 ?        S<   6月11   0:00 [kvm-irqfd-clean]
root       473  0.0  0.0      0     0 ?        S<   6月11   0:00 [edac-poller]
root       483  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-buf/sdc1]
root       484  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-data/sdc1]
root       485  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-conv/sdc1]
root       486  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-cil/sdc1]
root       487  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-reclaim/sdc]
root       488  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-log/sdc1]
root       489  0.0  0.0      0     0 ?        S<   6月11   0:00 [xfs-eofblocks/s]
root       490  0.0  0.0      0     0 ?        S    6月11   0:00 [xfsaild/sdc1]
root       509  0.0  0.0  55452  1072 ?        S<sl 6月11   0:03 /sbin/auditd
polkitd    532  0.0  0.1 534888 12932 ?        Ssl  6月11   0:04 /usr/lib/polkit-1/polkitd --no-debug
root       533  0.0  0.2 519392 19004 ?        Ssl  6月11   3:46 /usr/sbin/rsyslogd -n
root       534  0.0  0.0  21576  1228 ?        Ss   6月11   4:28 /usr/sbin/irqbalance --foreground
dbus       538  0.0  0.0  24544  1824 ?        Ss   6月11   0:11 /bin/dbus-daemon --system --address=systemd: --nofork --nopid
root       546  0.0  0.0  24600  2044 ?        Ss   6月11   1:01 /usr/lib/systemd/systemd-logind
root       553  0.0  0.0 110044   800 tty1     Ss+  6月11   0:00 /sbin/agetty --noclear tty1 linux
chrony     560  0.0  0.0 115640  1728 ?        S    6月11   0:11 /usr/sbin/chronyd
root       570  0.0  0.1 472244  9080 ?        Ssl  6月11   0:46 /usr/sbin/NetworkManager --no-daemon
root       884  0.0  0.2 562388 16664 ?        Ssl  6月11   5:35 /usr/bin/python -Es /usr/sbin/tuned -l -P
root       885  0.0  0.0 105996  4040 ?        Ss   6月11   0:00 /usr/sbin/sshd -D
root      1097  0.0  0.0  89544  2148 ?        Ss   6月11   0:18 /usr/libexec/postfix/master -w
postfix   1099  0.0  0.0  89716  3976 ?        S    6月11   0:03 qmgr -l -t unix -u
root      1161  0.0  0.0      0     0 ?        S<   6月11   0:12 [kworker/3:1H]
root      3476  0.0  0.0 113308  1588 pts/1    S    7月24   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysq
mysql     3626  0.0  5.7 1629132 460856 pts/1  Sl   7月24   2:13 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --data
root      5454  0.0  0.0 123660  5028 ?        Ss   7月18   1:33 php-fpm: master process (/usr/local/php-fpm/etc/php-fpm.conf)
php-fpm   5455  0.0  0.0 123660  5800 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5456  0.0  0.0 123660  5732 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5457  0.0  0.0 123660  5736 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5458  0.0  0.0 123660  4756 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5459  0.0  0.0 123660  4760 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5460  0.0  0.0 123660  4760 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5461  0.0  0.0 123660  4760 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5462  0.0  0.0 123660  4760 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5463  0.0  0.0 123660  4760 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5464  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5465  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5466  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5467  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5468  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5469  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5470  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5471  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5472  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5473  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
php-fpm   5474  0.0  0.0 123660  4764 ?        S    7月18   0:00 php-fpm: pool kevin.com
root      5679  0.0  0.0 126308  1620 ?        Ss   6月11   0:08 /usr/sbin/crond -n
root      8758  0.0  0.0      0     0 ?        S    7月25   0:00 [kworker/u32:2]
nobody    9313  0.0  0.0  23368  3588 ?        S    00:00   0:00 nginx: worker process
nobody    9314  0.0  0.0  23368  3588 ?        S    00:00   0:00 nginx: worker process
root     10402  0.0  0.0  21488  1832 ?        Ss   7月19   0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/loc
root     10622  0.0  0.0      0     0 ?        S    05:17   0:00 [kworker/u32:0]
postfix  11369  0.0  0.0  89696  3996 ?        S    09:00   0:00 pickup -l -t unix -u
root     11481  0.0  0.0      0     0 ?        S    09:30   0:00 [kworker/2:2]
root     11570  0.0  0.0      0     0 ?        S    09:58   0:00 [kworker/1:3]
root     11610  0.0  0.0      0     0 ?        S    10:06   0:00 [kworker/3:2]
root     11643  0.0  0.0      0     0 ?        S    10:17   0:00 [kworker/3:0]
root     11647  0.2  0.0      0     0 ?        S    10:18   0:01 [kworker/0:0]
root     11666  0.0  0.0      0     0 ?        S    10:22   0:00 [kworker/2:0]
root     11668  0.0  0.0      0     0 ?        S    10:22   0:00 [kworker/3:1]
root     11677  0.0  0.0      0     0 ?        S    10:23   0:00 [kworker/1:0]
root     11695  0.1  0.0      0     0 ?        S    10:23   0:00 [kworker/0:2]
root     11703  0.0  0.0      0     0 ?        S    10:27   0:00 [kworker/2:1]
root     11708  0.0  0.0      0     0 ?        S    10:28   0:00 [kworker/1:1]
root     11709  0.0  0.0      0     0 ?        S    10:29   0:00 [kworker/0:1]
root     11712  0.0  0.0 151104  1788 pts/1    R+   10:29   0:00 ps aux
root     16098  3.8  6.7 5713804 541568 ?      Sl   7月20 320:02 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/u
root     16125  1.0  1.2 3064644 103568 ?      Sl   7月20  86:14 /usr/local/jdk1.8/jre/bin/java -Xms8m -Xmx32m -Dfile.encoding
root     16162  1.0  1.3 3199820 107396 ?      Sl   7月20  87:45 /usr/local/jdk1.8/jre/bin/java -Xms8m -Xmx32m -Dfile.encoding
root     28443  0.0  0.0 148552  5700 ?        Ss   7月16   0:07 sshd: root@pts/1
root     28445  0.0  0.0 116616  3304 pts/1    Ss   7月16   0:15 -bash
root     29014  0.0  0.0 262780  2340 ?        Ssl  7月23   0:00 /usr/sbin/gssproxy -D
rpcuser  29015  0.0  0.0  42420  1704 ?        Ss   7月23   0:00 /usr/sbin/rpc.statd
root     29021  0.0  0.0      0     0 ?        S<   7月23   0:00 [rpciod]
root     29022  0.0  0.0      0     0 ?        S<   7月23   0:00 [xprtiod]
rpc      29345  0.0  0.0  65392  1684 ?        Ss   7月23   0:00 /sbin/rpcbind -w
root     29362  0.0  0.0      0     0 ?        S    7月23   0:00 [kworker/u33:2]
root     29561  0.0  0.0      0     0 ?        S    7月23   0:00 [kworker/u34:2]
root     29630  0.0  0.0  43860   544 ?        Ss   7月23   0:00 /usr/sbin/rpc.idmapd
root     29631  0.0  0.1  49596  8444 ?        Ss   7月23   0:00 /usr/sbin/rpc.mountd
root     29641  0.0  0.0      0     0 ?        S<   7月23   0:00 [nfsd4_callbacks]
root     29642  0.0  0.0      0     0 ?        S    7月23   0:00 [lockd]
root     29645  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29646  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29647  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29648  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29649  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29650  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29651  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]
root     29652  0.0  0.0      0     0 ?        S    7月23   0:00 [nfsd]

查看系统某个进程 利用grep来筛选 

格式# ps aux |grep 进程名称

[root@centos7 ~]# ps aux |grep nginx
root      1831  0.0  0.0 112676   984 pts/0    R+   17:45   0:00 grep --color=auto nginx

#这种用法和#ps aux差不多。都是显示所有进程
[root@centos7 ~]# ps -elf

关注点

PID表示进程的ID。

  • kill pid可以把相关进程杀死 用法格式是#kill 1346。如果这样都不能把终止进程的话,可以使用“kill -9 进程pid”,这样有点暴力,严重的话会丢失数据,一般少用,所以慎用。
  • 每个进程都有一个目录/proc/505(pid)/

**test **

[root@centos7 ~]# 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
3  0      0 604728   2076 274284    0    0     8     2   48   54  0  0 100  0  0
[root@centos7 ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
2  0      0 604868   2076 274316    0    0     8     2   48   54  0  0 100  0  0
0  0      0 604852   2076 274316    0    0     0     0   45   41  0  0 100  0  0
0  0      0 604852   2076 274316    0    0     0     0   63   53  1  0 99  0  0
^Z
[1]+  已停止               vmstat 1

[root@centos7 ~]# ps aux |grep vmstat显示T状态
root      1878  0.0  0.1 148316  1356 pts/0    T    18:09   0:00 vmstat 1
root      1884  0.0  0.0 112676   980 pts/0    S+   18:09   0:00 grep --color=auto vmstat

[root@centos7 ~]#  fg调回前台
vmstat 1
2  0      0 604224   2076 274452    0    0   124   149 23199 21059  0  0 100  0  0
0  0      0 604224   2076 274452    0    0     0     0   47   43  0  0 100  0  0
[root@centos7 ~]# ps aux |grep vmstat 此时vmstat已经处于S+状态,S+状态表示sleep且处于前台。+表示前台。
root      1878  0.0  0.1 148316  1356 pts/0    S+   18:09   0:00 vmstat 1
root      1917  0.0  0.0 112676   980 pts/1    R+   18:18   0:00 grep --color=auto vmstat

注释:

STAT状态

  • Z僵尸进程。
  • <:高优先级进程。CPU资源会优先给此进程使用。
  • N:低优先级进程。
  • L:在内存中被锁了内存分页。
  • s:主进程,后面nginx或者php-fpm服务会经常有它的影子。
  • l:多线程进程,意思就是,这个进程有多个线程。
  • 线程和进程的最大的区别就是:
  • 1 进程里包含了线程,线程是进程的子单元,一个进程有多个线程。
  • 2 同一个进程下的线程全部共享相同的内存(线程与线程之间的内存互相共享),而进程之间内存相互隔离。
  • +:前台进程。
  • D 不能中断的进程,通常是IO。这个状态直接影响系统的负载。
  • R run状态的进程,某个时间段在使用CPU。
  • S sleep状态的进程。
  • T已经停止或暂停的进程。如果我们运行一个命令,例如vmstat 1,我们按一下ctrl+z暂停进程时,用ps命令就会显示T状态。

START开始的时间

TIME开始的时长

COMMAND命令,和top的command是一样的

10.9 查看网络状态

本节学到netstat命令,此命令是用来查看网络状态的。 

linux服务器上面有很多服务,服务往往跟客户端之间进行相互通讯的,意味着,它要有监听端口,有对外通讯的端口。 netstat就是查看tcp/ip通讯的一个状态。

给系统安装一个服务,安装一个Nginx,提供一个web服务。。。。有了这些服务之后,就需要给这些服务监听一个端口。正常情况下,一台机器,它是没有任何端口监听的,如果没有任何端口,是没办法进行监听的。

*了解一下socket文件的作用。

[root@centos7 ~]#  netstat -lnp 监听端口,打印当前系统启动哪些端口。

# 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:111             0.0.0.0:*               LISTEN      29345/rpcbind
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      29631/rpc.mountd
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      9313/nginx: worker
tcp        0      0 0.0.0.0:44083           0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:45491           0.0.0.0:*               LISTEN      29015/rpc.statd
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      885/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1097/master
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -
tcp6       0      0 127.0.0.1:44299         :::*                    LISTEN      16162/java
tcp6       0      0 127.0.0.1:24299         :::*                    LISTEN      16162/java
tcp6       0      0 :::34093                :::*                    LISTEN      29015/rpc.statd
tcp6       0      0 :::111                  :::*                    LISTEN      29345/rpcbind
tcp6       0      0 :::20048                :::*                    LISTEN      29631/rpc.mountd
tcp6       0      0 :::8080                 :::*                    LISTEN      16098/java
tcp6       0      0 :::22                   :::*                    LISTEN      885/sshd
tcp6       0      0 127.0.0.1:50935         :::*                    LISTEN      16125/java
tcp6       0      0 ::1:25                  :::*                    LISTEN      1097/master
tcp6       0      0 :::36699                :::*                    LISTEN      -
tcp6       0      0 127.0.0.1:54299         :::*                    LISTEN      16162/java
tcp6       0      0 :::2049                 :::*                    LISTEN      -
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      16098/java
tcp6       0      0 127.0.0.1:40935         :::*                    LISTEN      16125/java
tcp6       0      0 127.0.0.1:20935         :::*                    LISTEN      16125/java
tcp6       0      0 :::8009                 :::*                    LISTEN      16098/java
tcp6       0      0 :::3306                 :::*                    LISTEN      3626/mysqld

[root@centos7 ~]#  netstat -an查看tcp/ip状态

# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:44083           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:45491           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN
tcp        0      0 192.88.24.200:20048     192.88.34.196:60898     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61624     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60864     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60598     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61649     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61603     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61618     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60872     ESTABLISHED
tcp        0    300 192.88.24.200:22        192.88.34.196:60499     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61643     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60664     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60668     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60894     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61620     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60892     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60674     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60600     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60602     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60868     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60666     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60866     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60613     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60596     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61613     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60874     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60680     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60896     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60678     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61647     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60604     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60594     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61611     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61607     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60607     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60670     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60609     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60611     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61622     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60672     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60870     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60662     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:60676     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61605     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61609     ESTABLISHED
tcp        0      0 192.88.24.200:20048     192.88.34.196:61645     ESTABLISHED
tcp6       0      0 127.0.0.1:44299         :::*                    LISTEN
tcp6       0      0 127.0.0.1:24299         :::*                    LISTEN
tcp6       0      0 :::34093                :::*                    LISTEN
tcp6       0      0 :::111                  :::*                    LISTEN
tcp6       0      0 :::20048                :::*                    LISTEN
tcp6       0      0 :::8080                 :::*                    LISTEN
tcp6       0      0 :::22                   :::*                    LISTEN
tcp6       0      0 127.0.0.1:50935         :::*                    LISTEN
tcp6       0      0 ::1:25                  :::*                    LISTEN
tcp6       0      0 :::36699                :::*                    LISTEN
tcp6       0      0 127.0.0.1:54299         :::*                    LISTEN
tcp6       0      0 :::2049                 :::*                    LISTEN
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN
tcp6       0      0 127.0.0.1:40935         :::*                    LISTEN
tcp6       0      0 127.0.0.1:20935         :::*                    LISTEN
tcp6       0      0 :::8009                 :::*                    LISTEN
tcp6       0      0 :::3306                 :::*                    LISTEN
tcp6       0      0 127.0.0.1:46926         127.0.0.1:54299         ESTABLISHED
tcp6       0      0 127.0.0.1:50935         127.0.0.1:45208         ESTABLISHED
tcp6       0      0 127.0.0.1:40210         127.0.0.1:3306          ESTABLISHED
tcp6       0      0 127.0.0.1:3306          127.0.0.1:40212         ESTABLISHED
tcp6       0      0 127.0.0.1:3306          127.0.0.1:40210         ESTABLISHED
tcp6       0      0 127.0.0.1:40212         127.0.0.1:3306          ESTABLISHED
tcp6       0      0 127.0.0.1:45208         127.0.0.1:50935         ESTABLISHED
tcp6       0      0 127.0.0.1:54299         127.0.0.1:46926         ESTABLISHED
udp        0      0 0.0.0.0:20048           0.0.0.0:*
udp        0      0 0.0.0.0:49041           0.0.0.0:*
udp        0      0 0.0.0.0:111             0.0.0.0:*
udp        0      0 127.0.0.1:323           0.0.0.0:*
udp        0      0 0.0.0.0:688             0.0.0.0:*
udp        0      0 127.0.0.1:783           0.0.0.0:*
udp        0      0 0.0.0.0:54816           0.0.0.0:*
udp        0      0 0.0.0.0:2049            0.0.0.0:*
udp6       0      0 :::20048                :::*
udp6       0      0 :::111                  :::*
udp6       0      0 ::1:323                 :::*
udp6       0      0 :::688                  :::*
udp6       0      0 :::38073                :::*
udp6       0      0 :::2049                 :::*
udp6       0      0 :::47155                :::*
raw6       0      0 :::58                   :::*                    7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     18836    public/pickup
unix  2      [ ACC ]     STREAM     LISTENING     18840    public/cleanup
unix  2      [ ACC ]     STREAM     LISTENING     18843    public/qmgr
unix  2      [ ACC ]     STREAM     LISTENING     18865    public/flush
unix  2      [ ACC ]     STREAM     LISTENING     18853    private/bounce
unix  2      [ ACC ]     STREAM     LISTENING     18856    private/defer
unix  2      [ ACC ]     STREAM     LISTENING     18859    private/trace
unix  2      [ ACC ]     STREAM     LISTENING     18847    private/tlsmgr
unix  2      [ ACC ]     STREAM     LISTENING     18862    private/verify
unix  2      [ ACC ]     STREAM     LISTENING     18868    private/proxymap
unix  2      [ ACC ]     STREAM     LISTENING     18871    private/proxywrite
unix  2      [ ACC ]     STREAM     LISTENING     18874    private/smtp
unix  2      [ ACC ]     STREAM     LISTENING     18877    private/relay
unix  2      [ ACC ]     SEQPACKET  LISTENING     13615    /run/udev/control
unix  2      [ ]         DGRAM                    12598    /run/systemd/shutdownd
unix  2      [ ]         DGRAM                    13166    /var/run/chrony/chronyd.sock
unix  2      [ ACC ]     STREAM     LISTENING     10863    /var/run/dbus/system_bus_socket
unix  2      [ ACC ]     STREAM     LISTENING     2947208  /run/gssproxy.sock
unix  2      [ ACC ]     STREAM     LISTENING     3024750  /tmp/mysql.sock
unix  2      [ ACC ]     STREAM     LISTENING     41886    /run/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     2597738  /data/web/kevin.com/kevin.com.sock
unix  2      [ ]         DGRAM                    8898     /run/systemd/notify
unix  2      [ ]         DGRAM                    8900     /run/systemd/cgroups-agent
unix  2      [ ACC ]     STREAM     LISTENING     2944463  /var/run/rpcbind.sock
unix  2      [ ACC ]     STREAM     LISTENING     8918     /run/systemd/journal/stdout
unix  5      [ ]         DGRAM                    8921     /run/systemd/journal/socket
unix  16     [ ]         DGRAM                    8923     /dev/log
unix  2      [ ACC ]     STREAM     LISTENING     18880    public/showq
unix  2      [ ACC ]     STREAM     LISTENING     18850    private/rewrite
unix  2      [ ACC ]     STREAM     LISTENING     18883    private/error
unix  2      [ ACC ]     STREAM     LISTENING     18886    private/retry
unix  2      [ ACC ]     STREAM     LISTENING     18889    private/discard
unix  2      [ ACC ]     STREAM     LISTENING     18892    private/local
unix  2      [ ACC ]     STREAM     LISTENING     18895    private/virtual
unix  2      [ ACC ]     STREAM     LISTENING     18898    private/lmtp
unix  2      [ ACC ]     STREAM     LISTENING     2947207  /var/lib/gssproxy/default.sock
unix  2      [ ACC ]     STREAM     LISTENING     18901    private/anvil
unix  2      [ ACC ]     STREAM     LISTENING     18904    private/scache
unix  3      [ ]         STREAM     CONNECTED     18906
unix  2      [ ]         DGRAM                    13000
unix  2      [ ]         DGRAM                    13127
unix  3      [ ]         STREAM     CONNECTED     13134    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     18902
unix  2      [ ]         DGRAM                    16273
unix  3      [ ]         STREAM     CONNECTED     14219
unix  3      [ ]         STREAM     CONNECTED     18903
unix  2      [ ]         DGRAM                    14330
unix  3      [ ]         STREAM     CONNECTED     15633    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     18905
unix  2      [ ]         DGRAM                    2463463
unix  3      [ ]         STREAM     CONNECTED     13001
unix  3      [ ]         STREAM     CONNECTED     2605095
unix  2      [ ]         DGRAM                    14265
unix  2      [ ]         STREAM     CONNECTED     2953926
unix  3      [ ]         STREAM     CONNECTED     18845
unix  3      [ ]         STREAM     CONNECTED     13133
unix  3      [ ]         STREAM     CONNECTED     18899
unix  2      [ ]         DGRAM                    18910
unix  3      [ ]         STREAM     CONNECTED     18900
unix  3      [ ]         STREAM     CONNECTED     15445
unix  3      [ ]         STREAM     CONNECTED     13002
unix  3      [ ]         STREAM     CONNECTED     18894
unix  3      [ ]         STREAM     CONNECTED     18896
unix  3      [ ]         STREAM     CONNECTED     18897
unix  3      [ ]         STREAM     CONNECTED     2947206
unix  3      [ ]         STREAM     CONNECTED     18890
unix  3      [ ]         STREAM     CONNECTED     2605096
unix  3      [ ]         STREAM     CONNECTED     18891
unix  3      [ ]         STREAM     CONNECTED     11038    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     13219
unix  3      [ ]         STREAM     CONNECTED     18893
unix  2      [ ]         DGRAM                    2947203
unix  3      [ ]         STREAM     CONNECTED     2947205
unix  3      [ ]         STREAM     CONNECTED     12713    /run/systemd/journal/stdout
unix  2      [ ]         DGRAM                    3091559
unix  3      [ ]         STREAM     CONNECTED     18887
unix  3      [ ]         STREAM     CONNECTED     18888
unix  3      [ ]         STREAM     CONNECTED     14461
unix  3      [ ]         STREAM     CONNECTED     18884
unix  3      [ ]         STREAM     CONNECTED     18885
unix  3      [ ]         STREAM     CONNECTED     14218
unix  3      [ ]         STREAM     CONNECTED     18852
unix  3      [ ]         STREAM     CONNECTED     18872
unix  3      [ ]         STREAM     CONNECTED     15519
unix  3      [ ]         STREAM     CONNECTED     18869
unix  2      [ ]         STREAM     CONNECTED     2755236
unix  3      [ ]         DGRAM                    10604
unix  3      [ ]         STREAM     CONNECTED     18870
unix  2      [ ]         DGRAM                    3150919
unix  3      [ ]         STREAM     CONNECTED     2947271
unix  2      [ ]         DGRAM                    11027
unix  3      [ ]         STREAM     CONNECTED     18875
unix  3      [ ]         STREAM     CONNECTED     15615
unix  2      [ ]         DGRAM                    10594
unix  3      [ ]         STREAM     CONNECTED     18637
unix  2      [ ]         DGRAM                    36755
unix  3      [ ]         STREAM     CONNECTED     18876
unix  3      [ ]         STREAM     CONNECTED     16089
unix  3      [ ]         STREAM     CONNECTED     18873
unix  3      [ ]         STREAM     CONNECTED     2951046
unix  3      [ ]         STREAM     CONNECTED     13074    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18879
unix  3      [ ]         STREAM     CONNECTED     18639    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18752    /var/run/dbus/system_bus_socket
unix  2      [ ]         DGRAM                    11146
unix  3      [ ]         STREAM     CONNECTED     15616    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     43144
unix  2      [ ]         DGRAM                    2944964
unix  3      [ ]         STREAM     CONNECTED     36748    /var/run/dbus/system_bus_socket
unix  2      [ ]         STREAM     CONNECTED     2754184
unix  3      [ ]         STREAM     CONNECTED     18878
unix  3      [ ]         STREAM     CONNECTED     18881
unix  3      [ ]         STREAM     CONNECTED     3114864
unix  3      [ ]         STREAM     CONNECTED     18638    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18882
unix  2      [ ]         DGRAM                    15618
unix  3      [ ]         STREAM     CONNECTED     13030    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18834
unix  2      [ ]         DGRAM                    2951052
unix  3      [ ]         STREAM     CONNECTED     2951045
unix  2      [ ]         STREAM     CONNECTED     2755210
unix  3      [ ]         STREAM     CONNECTED     18855
unix  3      [ ]         STREAM     CONNECTED     3114865
unix  3      [ ]         STREAM     CONNECTED     2947277  /run/gssproxy.sock
unix  3      [ ]         STREAM     CONNECTED     18837
unix  3      [ ]         STREAM     CONNECTED     15722
unix  2      [ ]         STREAM     CONNECTED     2755238
unix  3      [ ]         STREAM     CONNECTED     11224    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     18854
unix  3      [ ]         STREAM     CONNECTED     13143    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     11015
unix  3      [ ]         STREAM     CONNECTED     41930
unix  3      [ ]         STREAM     CONNECTED     18849
unix  3      [ ]         STREAM     CONNECTED     3114866
unix  3      [ ]         STREAM     CONNECTED     18848
unix  3      [ ]         STREAM     CONNECTED     18841
unix  2      [ ]         STREAM     CONNECTED     2754223
unix  3      [ ]         STREAM     CONNECTED     18860
unix  3      [ ]         STREAM     CONNECTED     18857
unix  3      [ ]         STREAM     CONNECTED     18858
unix  3      [ ]         STREAM     CONNECTED     18863
unix  3      [ ]         STREAM     CONNECTED     2947157  /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18844
unix  3      [ ]         STREAM     CONNECTED     18864
unix  3      [ ]         STREAM     CONNECTED     2946263
unix  3      [ ]         STREAM     CONNECTED     18835
unix  3      [ ]         STREAM     CONNECTED     18861
unix  3      [ ]         STREAM     CONNECTED     3114867
unix  3      [ ]         STREAM     CONNECTED     36753    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     18842
unix  2      [ ]         STREAM     CONNECTED     2755212
unix  3      [ ]         STREAM     CONNECTED     18867
unix  3      [ ]         DGRAM                    10605
unix  3      [ ]         STREAM     CONNECTED     18851
unix  3      [ ]         STREAM     CONNECTED     10933
unix  3      [ ]         STREAM     CONNECTED     18751
unix  3      [ ]         STREAM     CONNECTED     18838
unix  3      [ ]         STREAM     CONNECTED     18866

查看tcp udp状态

[root@centos7 ~]#  netstat -ltunp
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      949/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1055/master        
tcp6       0      0 :::22                   :::*                    LISTEN      949/sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1055/master        
udp        0      0 127.0.0.1:323           0.0.0.0:*                           577/chronyd        
udp6       0      0 ::1:323                 :::*                                577/chronyd

[root@centos7 ~]# netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}'
LISTEN  4
ESTABLISHED  1

关注ESTABLISHED ,如果这数字很大,说明系统很忙。

#ss -an 也可以查看tcp/ip状态

查看listen状态

#ss -an |grep -i listen

ppt在*centos7.aminglinux.com 

*了解一下socket文件的作用。三次握手过程。

10.10 Linux下抓包

大纲

抓包工具

有时也许想看一下某个网卡上都有哪些数据包,尤其是当你初步绑定服务器上有流量时,使用抓包工具来获取数据包就可以知道有哪些IP在了。

#tcpdump -nn -i 网卡名字 (网卡名称可以在ifconfig查看)

# ifconfig
enp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.88.24.200  netmask 255.255.255.0  broadcast 192.88.24.255
        inet6 fe80::2ad9:5a78:700c:eaee  prefixlen 64  scopeid 0x20<link>
        ether 00:1e:c9:2b:1a:e5  txqueuelen 1000  (Ethernet)
        RX packets 3565263  bytes 1091650130 (1.0 GiB)
        RX errors 0  dropped 242  overruns 0  frame 0
        TX packets 509115  bytes 67701952 (64.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

# tcpdump -nn -i enp4s0 源地址IP地址显示
10:53:05.900482 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18463892:18464072, ack 2581, win 641, length 180
10:53:05.900507 IP 192.88.34.196.60499 > 192.88.24.200.22: Flags [.], ack 18463712, win 16069, length 0
10:53:05.900530 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18464072:18464252, ack 2581, win 641, length 180
10:53:05.900642 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18464252:18464432, ack 2581, win 641, length 180
10:53:05.900748 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18464432:18464596, ack 2581, win 641, length 164
10:53:05.900856 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18464596:18464904, ack 2581, win 641, length 308
10:53:05.900962 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18464904:18465084, ack 2581, win 641, length 180
10:53:05.901068 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18465084:18465264, ack 2581, win 641, length 180
10:53:05.901175 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18465264:18465444, ack 2581, win 641, length 180
10:53:05.901282 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18465444:18465624, ack 2581, win 641, length 180
10:53:05.901713 IP 192.88.34.196.60499 > 192.88.24.200.22: Flags [.], ack 18465624, win 16425, length 0
10:53:05.901741 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18465624:18465984, ack 2581, win 641, length 360
10:53:05.901852 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18465984:18466148, ack 2581, win 641, length 164
10:53:05.901964 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18466148:18466508, ack 2581, win 641, length 360
10:53:05.902082 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18466508:18466688, ack 2581, win 641, length 180
10:53:05.902197 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18466688:18466868, ack 2581, win 641, length 180
10:53:05.902313 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18466868:18467048, ack 2581, win 641, length 180
10:53:05.902429 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18467048:18467228, ack 2581, win 641, length 180
10:53:05.902544 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18467228:18467408, ack 2581, win 641, length 180
10:53:05.902661 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18467408:18467588, ack 2581, win 641, length 180
10:53:05.902782 IP 192.88.24.200.22 > 192.88.34.196.60499: Flags [P.], seq 18467588:18467768, ack 2581, win 641, length 180
10:53:05.902976 IP 192.88.34.196.60499 > 192.88.24.200.22: Flags [P.], seq 2581:2633, ack 18465624, win 16425, length 52
^C10:53:05.903039 IP 192.88.34.196.60499 > 192.88.24.200.22: Flags [.], ack 18467768, win 15889, length 0

104225 packets captured
104228 packets received by filter
0 packets dropped by kernel

关于数据信息:

第一列是时间,第二列是ip,源IP,源端口 > 到哪里去 方向去 目标ip 目标ip端口 flage开始 数据包的信息。

主要关注源ip和源端口。

-nn 第一个n ip用数字显示出来,如果不加,会显示主机名。 一般使用-nn

[root@centos7 ~]# tcpdump -n -i enp4s0 源地址主机名显示
10:55:50.640134 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2094760:2094940, ack 261, win 641, length 180
10:55:50.640252 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2094940:2095120, ack 261, win 641, length 180
10:55:50.640370 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2095120:2095300, ack 261, win 641, length 180
10:55:50.640487 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2095300:2095480, ack 261, win 641, length 180
10:55:50.640604 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2095480:2095660, ack 261, win 641, length 180
10:55:50.640684 IP 192.88.34.196.60499 > 192.88.24.200.ssh: Flags [P.], seq 261:313, ack 2093568, win 16114, length 52
10:55:50.640791 IP 192.88.24.200.ssh > 192.88.34.196.60499: Flags [P.], seq 2095660:2095840, ack 313, win 641, length 180
^C
11850 packets captured
11851 packets received by filter
0 packets dropped by kernel

所看到的ssh是22端口,如果不知道ssh表示22端口,例如其他名称的 不知道指定端口的,那就容易看不到详细信息了。

信息一一对应 有来有回

#了解 DDOS**,udp flood  udp洪水***。
#指定端口
[root@centos7 ~]#  tcpdump -nn -i ens33 port 22
#排除端口用法
[root@centos7 ~]#  tcpdump -nn -i ens33 not port 22
#指定端口,指定主机ip
[root@centos7 ~]# tcpdump -nn -i ens33  port 22 and host 192.168.189.128

数据包指定长度,指定个数,存到一个文件上

例如,指定长度,指定100个。

[root@centos7 ~]# tcpdump -nn -i ens33 -c 100 -w /tmp/1.cap

抓包过程中,是比较缓慢的,类似暂停状态。此时可以打开一个新的终端。

如果在这个终端不去产生一些数据流的话,那么它就不会产生那么多的数据包。 

例如在使用tcpdump查看数据包的时候,其实就是在通讯产生数据流,所以有数据包产生,这是一个内循环。

如果此终端不产生任何数据,不产生任何的信息,那它就没有任何的数据包。 产生数据包了,屏幕(暂停的界面)自然而然会有数据了。所以打开一个新的终端,利用新的终端去产生数据包,这样就能继续进行抓包。

抓包成功提示,

数据包 1.cap

用#file查看属性,不能用cat查看,因为这是网卡捕获的信息,其实它是一个真正的通讯数据包信息,而不是文本格式。

抓包命令常用示例:

tcpdump -nn -i ens33 -c 100
#指定抓100个包
tcpdump -nn -i ens33 port 22
#指定只抓22端口的包
tcpdump -nn -i ens33 tcp and not port 22
#指定抓tcp的包,但是不要22端口的
tcpdump -nn -i ens33 port 22 and port 53
#指定抓22和53端口的包

读数据流(数据包里面的数据就叫数据流),需要利用#tcpdump -r /tmp/1.cap 

[root@centos7 ~]# file /tmp/1.cap
/tmp/1.cap: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 262144)

#wireshark 工具

#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"

转载于:https://my.oschina.net/u/3960075/blog/2251999

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值