Linux网络工具lsof和netstat

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux网络工具lsof和netstat相关的知识,希望对你有一定的参考价值。

lsof全名为list opened files,即列举系统中已经被打开的文件,基本使用如下:

(1) 查看/etc/passwd使用情况

lsof /etc/password

(2) 查看监听的socket网络服务

lsof -i

其通用输出格式的几个字段的内容如下:

  • COMMAND 默认以9个字符长度显示的命令名称
  • PID 进程的ID号
  • USER 命令的执行UID或系统中登陆的用户名称
  • FD 该文件的文件描述符
  • TYPE 协议类型
  • DEVICE 使用Linux设备管理的设备号
  • SIZE 文件大小
  • NODE 本地文件的node号码
  • NAME 挂载点和文件的全路径,或者连接双方的地址和端口、状态等

(3) 查看某个网络连接

lsof [email protected]地址

(4) 显示指定PID已打开的文件的信息

lsof -p 4401

 

netstat命令用来显示活动的TCP连接、计算机监听的端口、以太网统计信息、IP路由表、IPv4和IPv6统计信息等。其基本使用格式如下:

netstat [-a] [-e] [-n] [-o] [-p Protocol] [-r] [-s] [Interval]

使用时如果不带参数,netstat则显示活动的TCP连接。

(1) 显示活动的TCP连接

netstat -p TCP

  • Proto 协议的名称
  • Local Address 本地计算机的IP地址和正在使用的端口号
  • Foreign Address 远程计算机的IP地址和端口号码
  • State 表示TCP连接的状态

(2)  显示以太网统计信息和所有协议的统计信息

netstat -e -s

(3) 仅显示TCP和UDP的统计信息

netstat -s -p tcp udp

以上是关于Linux网络工具lsof和netstat的主要内容,如果未能解决你的问题,请参考以下文章

linux 查看哪些端口被监听

Linux系统之查看进程监听端口方法

Linux下查看端口被哪个程序占用

linux命令总结

Linux查看端口被那个进程占用?

linux如何查看端口被哪个进程占用