简介
在Internet RFC标准中, Netstat是在内核中访问网络连接状态及其相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
Netstat 是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。
Netstat 用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
作用
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
用法
一般用netstat -an 来显示所有连接的端口并用数字表示。若使用时不带参数,netstat显示活动的 TCP 连接。
1 | [root@hadoop-centos-01 ~]# netstat | more |
输出结果可分为两个部分:
Active Internet connections(有源TCP连接)
Proto :显示连接使用的协议
Recv-Q : 接收队列
Send-Q : 发送队列
Local Address
Foreign Address
State
注: “Recv-Q”和”Send-Q”一般都应该是0。如果不是则表示软件包正在队列中堆积,这种情况非常少见。
Active UNIX domain sockets (有源Unix域套接口)
Proto :显示连接使用的协议
RefCnt :表示连接到本套接口上的进程数量
Flags
Type: 显示套接口的类型
State :显示套接口当前的状态
I-Node
Path :表示连接到套接口的其它进程使用的路径名
语法格式
1 | netstat [-vWeenNcCF] [<Af>] -r |
参数选项
1 | -a或--all:显示所有连线中的Socket; |
参数示例
列出所有端口情况
1 | [root@hadoop-centos-01 ~]# netstat -a # 列出所有端口 |
列出所有处于监听状态的 Sockets
1 | [root@hadoop-centos-01 ~]# netstat -l # 只显示监听端口 |
显示每个协议的统计信息
1 | [root@hadoop-centos-01 ~]# netstat -s # 显示所有端口的统计信息 |
显示 PID 和进程名称
1 | [root@hadoop-centos-01 ~]# netstat -p | more |
显示核心路由信息
1 | [root@hadoop-centos-01 ~]# netstat -r |
查看端口和服务
1 | [root@hadoop-centos-01 ~]# netstat -anp | grep ssh |