查看网络状态
netstat 命令
netstat 命令:
介绍:查看linux网络服务和监听的端口
格式:netstat [option]
用法:
-an :查看系统所有网络连接状况
同
ss -an
-lnp :t查看当前系统所有监听端口
-t :tcp
-u :udp
[root@localhost ~]# netstat -tnlp
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 919/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1053/master
tcp6 0 0 :::22 :::* LISTEN 919/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1053/master
[root@localhost ~]# netstat -nlp
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 919/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1053/master
tcp6 0 0 :::22 :::* LISTEN 919/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1053/master
udp 0 0 127.0.0.1:323 0.0.0.0:* 553/chronyd
udp6 0 0 ::1:323 :::* 553/chronyd
raw6 0 0 :::58 :::* 7 591/NetworkManager
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 21159 1053/master private/tlsmgr
unix 2 [ ACC ] STREAM LISTENING 13097 1/systemd /run/lvm/lvmpolld.socket
unix 2 [ ACC ] STREAM LISTENING 21165 1053/master private/rewrite
unix 2 [ ACC ] STREAM LISTENING 21168 1053/master private/bounce
unix 2 [ ACC ] STREAM LISTENING 21171 1053/master private/defer
unix 2 [ ACC ] STREAM LISTENING 21155 1053/master public/qmgr
unix 2 [ ACC ] STREAM LISTENING 21180 1053/master public/flush
unix 2 [ ACC ] STREAM LISTENING 21174 1053/master private/trace
unix 2 [ ACC ] STREAM LISTENING 21195 1053/master public/showq
unix 2 [ ACC ] STREAM LISTENING 21177 1053/master private/verify
unix 2 [ ACC ] STREAM LISTENING 21183 1053/master private/proxymap
unix 2 [ ACC ] STREAM LISTENING 21186 1053/master private/proxywrite
unix 2 [ ACC ] STREAM LISTENING 21189 1053/master private/smtp
unix 2 [ ACC ] STREAM LISTENING 21192 1053/master private/relay
unix 2 [ ACC ] STREAM LISTENING 21198 1053/master private/error
unix 2 [ ACC ] STREAM LISTENING 21201 1053/master private/retry
unix 2 [ ACC ] STREAM LISTENING 21204 1053/master private/discard
unix 2 [ ACC ] STREAM LISTENING 21207 1053/master private/local
unix 2 [ ACC ] STREAM LISTENING 21210 1053/master private/virtual
unix 2 [ ACC ] STREAM LISTENING 21213 1053/master private/lmtp
unix 2 [ ACC ] STREAM LISTENING 21216 1053/master private/anvil
unix 2 [ ACC ] STREAM LISTENING 21219 1053/master private/scache
unix 2 [ ACC ] STREAM LISTENING 13142 1/systemd /run/lvm/lvmetad.socket
unix 2 [ ACC ] SEQPACKET LISTENING 13167 1/systemd /run/udev/control
unix 2 [ ACC ] STREAM LISTENING 21152 1053/master public/cleanup
unix 2 [ ACC ] STREAM LISTENING 17807 541/VGAuthService /var/run/vmware/guestServicePipe
unix 2 [ ACC ] STREAM LISTENING 16818 1/systemd /run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 21148 1053/master public/pickup
unix 2 [ ACC ] STREAM LISTENING 8671 1/systemd /run/systemd/journal/stdout
unix 2 [ ACC ] STREAM LISTENING 13045 1/systemd /run/systemd/private
netstat中的各种状态:
CLOSED :初始(无连接)状态。
LISTEN :侦听状态,等待远程机器的连接请求。
SYN_SEND :在TCP三次握手期间,主动连接端发送了SYN包后,进入SYN_SEND状态,等待对方的ACK包。
SYN_RECV :在TCP三次握手期间,主动连接端收到SYN包后,进入SYN_RECV状态。
ESTABLISHED : 完成TCP三次握手后,主动连接端进入ESTABLISHED状态。此时,TCP连接已经建立,可以进行通信。
FIN_WAIT_1 :在TCP四次挥手时,主动关闭端发送FIN包后,进入FIN_WAIT_1状态。
FIN_WAIT_2 :在TCP四次挥手时,主动关闭端收到ACK包后,进入FIN_WAIT_2状态。
TIME_WAIT :在TCP四次挥手时,主动关闭端发送了ACK包之后,进入TIME_WAIT状态,等待最多MSL时间,让被动关闭端收到ACK包。
CLOSING:在TCP四次挥手期间,主动关闭端发送了FIN包后,没有收到对应的ACK包,却收到对方的FIN包,此时,进入CLOSING状态。
CLOSE_WAIT :在TCP四次挥手期间,被动关闭端收到FIN包后,进入CLOSE_WAIT状态。
LAST_ACK :在TCP四次挥手时,被动关闭端发送FIN包后,进入LAST_ACK状态,等待对方的ACK包。
netstat 查看各种state有一个小技巧,就是 netstat -an|awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key, "\t", sta[key]}'
[root@localhost ~]# netstat -an|awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key, "\t", sta[key]}'
LISTEN 4
ESTABLISHED 1
最后更新于
这有帮助吗?