監控系統狀態
- 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
等等等,只截取了一部分