Netstat 是一个网络工具,用于显示网络连接、路由表、接口统计信息、伪装连接和多播成员。它可以帮助用户了解系统的网络状态,并进行故障排查。
基本用法
netstat
命令的基本格式如下:
netstat [选项]
常用的选项包括:
-a
:显示所有活动的 TCP 连接以及监听的 TCP 和 UDP 端口。-n
:显示数字形式的地址和端口号,而不是转换成名称。-t
:仅显示 TCP 协议相关的连接。-u
:仅显示 UDP 协议相关的连接。-l
:仅显示监听的端口。-p
:显示与每个连接相关的进程 ID (PID) 和程序名称。-r
:显示路由表。-i
:显示网络接口的信息。
示例
显示所有活动的 TCP 和 UDP 连接
netstat -atun
显示监听的 TCP 端口
netstat -lt
显示监听的 UDP 端口
netstat -lu
显示监听的端口及其对应的 PID 和程序名称
netstat -plnt
显示路由表
netstat -r
或 netstat --route
可以显示当前系统的路由表信息。
路由表字段解释
- Destination:目标地址或网络。
- Gateway:网关地址。
- Genmask:子网掩码。
- Flags:标志位,表示路由的类型和状态。
- Metric:路由度量值。
- Ref:引用计数。
- Use:使用次数。
- Iface:接口名称。
示例
查看当前的路由表:
netstat -r
显示网络接口信息
netstat -i
或 netstat --interfaces
显示系统中的网络接口信息。
接口信息字段解释
- Iface:接口名称。
- MTU:最大传输单元。
- Met:路由度量。
- RX-OK:接收成功包的数量。
- RX-ERR:接收错误包的数量。
- RX-DRP:接收丢弃包的数量。
- RX-OVR:接收溢出包的数量。
- TX-OK:发送成功包的数量。
- TX-ERR:发送错误包的数量。
- TX-DRP:发送丢弃包的数量。
- TX-OVR:发送溢出包的数量。
- Flg:接口标志。
示例
查看当前的网络接口信息:
netstat -i
显示统计信息
netstat -s
或 netstat --statistics
显示各种协议的统计信息。
统计信息字段解释
- Tcp:TCP 协议统计信息。
- Udp:UDP 协议统计信息。
- Ip:IP 协议统计信息。
- Icmp:ICMP 协议统计信息。
- TcpExt:TCP 扩展统计信息。
- UdpLite:UDP-Lite 协议统计信息。
示例
查看当前的协议统计信息:
netstat -s
显示伪连接
netstat -an | grep ESTABLISHED
可以显示当前处于 ESTABLISHED 状态的伪连接。
示例
显示当前处于 ESTABLISHED 状态的 TCP 连接:
netstat -an | grep ESTABLISHED
显示多播成员
netstat -g
或 netstat --groups
显示系统上的多播组成员。
多播成员字段解释
- Interface:接口名称。
- Address:多播地址。
- NCount:成员数量。
- MCount:成员数量。
示例
查看当前的多播组成员:
netstat -g
总结
通过以上命令,我们可以详细地了解系统当前的网络状态,包括连接、路由、接口统计和多播成员等信息。这些信息对于诊断和优化网络性能非常有用。