关于Linux系统中netstat命令的用法说明
netstat命令的作用
作用: 打印Linux中网络系统的状态信息,得知linux 系统的网络情况。
命令选项:
-a 显示所有连线中的Socket
-A 列出网络类型连线中的相关地址
-c 持续列出网络状态
-C 显示路由器配置的快取信息
-e 显示网络其他相关信息
-g 显示多重群组名单
-l 显示监控中的服务器的socket
-n 直接使用ip 地址,不通过域名服务器
-N 显示网络硬件外围设备的符号链接名称
-p 显示正在使用Socket 的程序识别码和程序名称
-t 显示TCP 传输协议的连线状况
-u 显示UDP 传输协议的连线状况
-x --unix
netstat命令的用法
使用实例:
列出所有端口(包括监听和未监听的)
netstat -a 列出所有端口
netstat -at 列出所有tcp 端口
netstat -au 列出所有udp 端口
列出所有出于监听状态的socket
netstat -l 只显示监听端口
netstat -lt 只列出所有监听的tcp 端口
netstat -lu 只列出所有监听的udp 端口
netstat -lx 只列出所有监听的 unix 端口
显示每个协议的统计信息
netstat -s 显示所有端口的统计信息
netstat -st 显示TCP 端口的统计信息
netstat -su 显示UDP 端口的统计信息
在netstat 输出中显示PID和进程名称
netstat -pt
在netstat 输出中不显示主机, 端口和用户名(host , port or user)
netstat -an
netstat -a --numeric-ports/hosts/users
持续输出netstat信息
netstat -c #每一秒输出网络信息
显示核心路由信息
netstat -r / route -n
显示网络接口列表
netstat -i
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 412469225 0 0 0 374093441 0 0 0 BMRU
lo 16436 0 1417 0 0 0 1417 0 0 0 LRU
netstat -ie /ifconfig -a
IP 和 TCP分析 查看链接某服务器端口最多的IP地址
netstat -ntu | grep :80 | awk '{print $5}' | cut -d: -f1 | awk '{++ip[$1]} END {for(i in ip) print ip[i],"\t",i}' | sort -nr
4 172.16.5.177
4 172.16.5.143
3 172.20.44.23
2 172.16.5.163
2 172.16.5.140
2 172.16.210.133
1 172.20.99.2
TCP各种状态列表
netstat -nt | grep -e 127.0.0.1 -e 0.0.0.0 -e ::: -v | awk '/^tcp/ {++state[$NF]} END {for(i in state) print i,"\t",state[i]}'
TIME_WAIT 4
CLOSE_WAIT 1
ESTABLISHED 53
查看phpcgi 进程数, 如果接近预设值, 说明不够用
netstat -anpo | grep "php-cgi" |wc -l
netstat -anpo | grep "unix" |wc -l
60
netstat命令的实例说明
Linux系统中敲入下面指令:
netstat | wc -l
可以得到一个数,这个数表示什么意思? 哪些因素会影响这个数?
netstat的功能是打印网络连接数的信息;
wc -l 则是统计netstat输出信息的行数;
符号"|"为管道,意为将netstat的输出送到wc -l的输入;
本机的网络连接数越多这个数字就会越大。