导言:netstat可以显示系统中Internet和UNIX域套接字的状态,当编写套接字程序时,netstat是个非常有用的调试工具。
关于netstat的具体用法,请查看具体手册man netstat
。
例如,一些常用选项:
# 显示所有套接字的信息
-a
# 只显示监听套接字的信息
-l
# 显示进程ID号,以及套接字所归属的程序名称
-p
# 显示IP地址,端口号,并以数字形式显示出用户名称
-n
# 连续重新显示套接字信息(每秒刷新显示一次)
-c
netstat的输出格式如下所示:
例如,显示当前系统上所有的Internet域套接字信息。
Proto
:表示套接字所使用的协议,例如,tcp或udp
Recv-Q
:表示套接字缓冲区中还未被本地应用读取的字节数
Send-Q
:表示套接字发送缓冲区中排队等待发送的字节数
Local Address
:表示套接字绑定到的地址,以IP:Port
的形式表示。默认情况下,主机地址和端口号都以名称形式来显示,如果指定选项-n
,会以数值形式显示。地址中主机部分的星号(*)表示这是一个通配IP地址。
Foreign Address
:这是对端套接字所绑定的地址。字符串*:*
表示没有对端地址。
State
:表示当前套接字所处的状态。
netstat的输出信息来源于
/proc/net
目录下的文件。