监控系统状态
- netstat 查看网络状态
- netstat -lnp 查看监听端口
- netstat -an 查看系统的网络链接情况
- netstat -lntp 只看出tcp的,不包含socket
- ss -an和netstat殊途同归
- 技巧:
- netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t" ,sta[key]}'
netstat命令
- netstat命令,查看linux中网络系统的状态信息
netstat命令,查看监听端口
- netstat -lnp 查看监听端口
- l 就是监听的意思
- tcp
- 25端口,是发邮件的端口
- 22 端口,有两个,一个是tcp,另外一个是tcp6
- udp
- UNIX中有一种文件叫socket
- 也是进程间相互通讯的(前提:同一台服务器,两个进程相互通讯,使用socket文件)
[root@hf-01 ~]# netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1522/master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1178/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1522/master
tcp6 0 0 :::3306 :::* LISTEN 1525/mysqld
tcp6 0 0 :::22 :::* LISTEN 1178/sshd
udp 0 0 0.0.0.0:51407 0.0.0.0:* 557/avahi-daemon: r
udp 0 0 0.0.0.0:5353 0.0.0.0:* 557/avahi-daemon: r
raw6 0 0 :::58 :::* 7 650/NetworkManager
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 18892 1522/master private/tlsmgr
unix 2 [ ACC ] STREAM LISTENING 18880 1522/master public/pickup
unix 2 [ ACC ] STREAM LISTENING 18895 1522/master private/rewrite
unix 2 [ ACC ] STREAM LISTENING 18898 1522/master private/bounce
unix 2 [ ACC ] STREAM LISTENING 18901 1522/master private/defer
unix 2 [ ACC ] STREAM LISTENING 18904 1522/master private/trace
unix 2 [ ACC ] STREAM LISTENING 18907 1522/master private/verify
unix 2 [ ACC ] STREAM LISTENING 18913 1522/master private/proxymap
unix 2 [ ACC ] STREAM LISTENING 18916 1522/master private/proxywrite
unix 2 [ ACC ] STREAM LISTENING 18919 1522/master private/smtp
unix 2 [ ACC ] STREAM LISTENING 18922 1522/master private/relay
unix 2 [ ACC ] STREAM LISTENING 18928 1522/master private/error
unix 2 [ ACC ] STREAM LISTENING 18931 1522/master private/retry
unix 2 [ ACC ] STREAM LISTENING 18934 1522/master private/discard
unix 2 [ ACC ] STREAM LISTENING 18937 1522/master private/local
unix 2 [ ACC ] STREAM LISTENING 11300 1/systemd /run/lvm/lvmpolld.socket
unix 2 [ ACC ] STREAM LISTENING 18940 1522/master private/virtual
unix 2 [ ACC ] STREAM LISTENING 18943 1522/master private/lmtp
unix 2 [ ACC ] STREAM LISTENING 18946 1522/master private/anvil
unix 2 [ ACC ] STREAM LISTENING 18949 1522/master private/scache
unix 2 [ ACC ] STREAM LISTENING 6719 1/systemd /run/systemd/journal/stdout
unix 2 [ ACC ] STREAM LISTENING 11092 1/systemd /run/lvm/lvmetad.socket
unix 2 [ ACC ] STREAM LISTENING 15756 650/NetworkManager /var/run/NetworkManager/private-dhcp
unix 2 [ ACC ] STREAM LISTENING 13965 1/systemd /var/run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 18884 1522/master public/cleanup
unix 2 [ ACC ] STREAM LISTENING 13979 1/systemd /var/run/avahi-daemon/socket
unix 2 [ ACC ] STREAM LISTENING 18887 1522/master public/qmgr
unix 2 [ ACC ] STREAM LISTENING 18910 1522/master public/flush
unix 2 [ ACC ] STREAM LISTENING 18925 1522/master public/showq
unix 2 [ ACC ] STREAM LISTENING 19266 1525/mysqld /tmp/mysql.sock
unix 2 [ ACC ] SEQPACKET LISTENING 11220 1/systemd /run/udev/control
unix 2 [ ACC ] STREAM LISTENING 15580 650/NetworkManager /var/run/NetworkManager/private
unix 2 [ ACC ] STREAM LISTENING 10994 1/systemd /run/systemd/private
[root@hf-01 ~]#
netstat命令 查看全部的链接状态
[root@hf-01 ~]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 52 192.168.74.129:22 192.168.74.1:49322 ESTABLISHED
tcp6 0 0 ::1:25 :::* LISTEN
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
udp 0 0 0.0.0.0:51407 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
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 18892 private/tlsmgr
unix 2 [ ACC ] STREAM LISTENING 18880 public/pickup
unix 2 [ ACC ] STREAM LISTENING 18895 private/rewrite
unix 2 [ ACC ] STREAM LISTENING 18898 private/bounce
等等等,只截取了一部分
netstat命令 只查看tcp
[root@hf-01 ~]# netstat -ltnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1522/master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1178/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1522/master
tcp6 0 0 :::3306 :::* LISTEN 1525/mysqld
tcp6 0 0 :::22 :::* LISTEN 1178/sshd
[root@hf-01 ~]#
netstat命令 只查看tcp和udp
- netstat -ltunp //只查看tcp和udp
[root@hf-01 ~]# netstat -ltunp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1522/master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1178/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1522/master
tcp6 0 0 :::3306 :::* LISTEN 1525/mysqld
tcp6 0 0 :::22 :::* LISTEN 1178/sshd
udp 0 0 0.0.0.0:51407 0.0.0.0:* 557/avahi-daemon: r
udp 0 0 0.0.0.0:5353 0.0.0.0:* 557/avahi-daemon: r
[root@hf-01 ~]#
netstat命令和awk相关的
- 查看全部状态的数字
- netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t" ,sta[key]}'
[root@hf-01 ~]# netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t"
LISTEN 5
ESTABLISHED 1
[root@hf-01 ~]#
- 查看netstat须要关注一个值,就是ESTABLISHED,这个数字如果很大,说明系统很忙
- 一般ESTABLISHED 这个数字在一千之内,服务器都是能够接受的
- 网站并发链接数,并发链接数就是指同一时刻有多少个客户端在链接你,而咱们就能够拿ESTABLISHED 这个数字去说明,并发链接数有多少
ss -an命令和netstat命令类似
[root@hf-01 ~]# ss -an
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
nl UNCONN 0 0 0:4194954 *
nl UNCONN 0 0 0:650 *
nl UNCONN 0 0 0:557 *
nl UNCONN 0 0 0:0 *
nl UNCONN 4352 0 4:2922 *
nl UNCONN 768 0 4:0 *
nl UNCONN 0 0 6:0 *
nl UNCONN 0 0 7:554 *
nl UNCONN 0 0 7:1 *
nl UNCONN 0 0 7:0 *
nl UNCONN 0 0 9:0 *
nl UNCONN 0 0 9:514 *
nl UNCONN 0 0 9:1 *
nl UNCONN 0 0 10:0 *
nl UNCONN 0 0 11:0 *
nl UNCONN 0 0 15:650 *
等等等,只截取了一部分
[root@hf-01 ~]# ss -an |grep -i listen //由于listen是大写,因此加-i 参数
u_str LISTEN 0 100 private/tlsmgr 18892 * 0
u_str LISTEN 0 100 public/pickup 18880 * 0
u_str LISTEN 0 100 private/rewrite 18895 * 0
u_str LISTEN 0 100 private/bounce 18898 * 0
u_str LISTEN 0 100 private/defer 18901 * 0
u_str LISTEN 0 100 private/trace 18904 * 0
u_str LISTEN 0 100 private/verify 18907 * 0
u_str LISTEN 0 100 private/proxymap 18913 * 0
u_str LISTEN 0 100 private/proxywrite 18916 * 0
等等等,只截取了一部分