netstat 命令详解
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
1、-a 选项列出所有连接
2、使用 -t 选项列出 TCP 协议的连接
3、使用 -u 选项列出 UDP 协议的连接
4、禁用反向域名解析,加快查询速度
默认情况下 netstat 会通过反向域名解析技术查找每个 IP 地址对应的主机名。这会降低查找速度。如果你觉得 IP 地址已经足够,而没有必要知道主机名,就使用 -n 选项禁用域名解析功能。
5、使用 -l 选项列出正在监听中的端口
6、获取进程名、进程号以及用户 ID
查看端口和连接的信息时,能查看到它们对应的进程名和进程号对系统管理员来说是非常有帮助的。举个栗子,Apache 的 httpd 服务开启80端口,如果你要查看 http 服务是否已经启动,或者 http 服务是由 apache 还是 nginx 启动的,这时候你可以看看进程名。
使用 -p 选项查看进程信息。
7、打印统计数据
netstat 可以打印出网络统计数据,包括某个协议下的收发包数量。
如果想只打印出 TCP 或 UDP 协议的统计数据,只要加上对应的选项(-t 和 -u)即可
8、显示内核路由信息
使用 -r 选项打印内核路由信息。打印出来的信息与 route 命令输出的信息一样。我们也可以使用 -n 选项禁止域名解析。
9、打印网络接口
netstat 也能打印网络接口信息,-i 选项就是为这个功能而生。
上面输出的信息比较原始。我们将 -e 选项和 -i 选项搭配使用,可以输出用户友好的信息。
输出信息与 ifconfig 输出的信息一样。
10、netstat 持续输出
我们可以使用 netstat 的 -c 选项持续输出信息。
11、显示多播组信息
选项 -g 会输出 IPv4 和 IPv6 的多播组信息。