Linux之netstat命令详解

我们已经学习了网络的很多知识,现在来了解一个重要的命令,netstat。

功能

netstat是基于Netstat这个命令行工具的指令。
它可以用来查询系统上的网络套接字连接情况,包括tcp,udp以及Unix套接字;另外它还能列出路由表,接口状态和多播成员等信息。也就是说可以让我们得知整个Linux系统的网络情况。

选项

选项 含义
-a(- -all) 显示所有连线中的socket
-c(- -continuous) 持续列出网络状态
-C(- -cache) 显示路由器配置的快取信息
-e(- -extend) 显示网络其他相关信息
-F(- -fib) 显示FIB
-g(- -groups) 显示多重广播功能群组织员名单
-h(- -help) 在线帮助
-i(- -interfaces) 显示网络界面信息表单
-l(- -listening) 显示监控中的服务器的socket
-M(–masquerade) 显示伪装的网络连线
-n(- -numeric) 直接使用IP地址,不通过域名解析器
-o(- -timers) 显示计时器
-p(- -programs) 显示正在使用socket的程序识别码和程序名称
-r(- -route) 显示路由表信息
-s(- -statistice) 显示网络工作信息统计表
-t(- -tcp) 显示TCP传输协议的连接状况
-u(- -udp) 显示UDP传输协议的连接状况
-x(- -unix) 显示Unix连线中的连接状况
-V(- -version) 显示版本信息
-v(- -verbose) 显示指令执行过程
-w(- -raw) 显示RAW传输协议的连接情况

实例

  1. 列出所有端口 (包括监听和未监听的)
    这里写图片描述
  2. 列出所有的tcp协议的端口
    这里写图片描述
  3. 列出所有的UDP协议的端口
    这里写图片描述
  4. 同样的,列出常用监听的选项用法:
    netstat -l #只显示监听端口
    netstat -lt #只列出所有监听 tcp 端口
    netstat -lu #只列出所有监听 udp 端口
    netstat -lx #只列出所有监听 UNIX 端口
  5. 显示每个协议的统计信息
    eg:显示所有端口的统计信息
    这里写图片描述
    eg:显示TCP端口的统计信息
    这里写图片描述
    eg:显示UDP端口的统计信息
    这里写图片描述
  6. 在输出中显示 PID 和进程名称
    这里写图片描述
    这个与其它开关一起使用,可以添加“PID/进程名称”到netstat输出中,这样debugging的时候可以很方便的发现特定端口运行的程序。
  7. 持续输出netstat信息(每隔一秒输出网络信息)
    这里写图片描述
  8. 显示系统不支持的地址族(Address Families)
    这里写图片描述
    这个命令是显示指令执行过程的,在最后会出现如下几行:
    这里写图片描述
  9. 显示路由表信息
    这里写图片描述
  10. 找出程序运行的端口
    这里写图片描述
    (grep后接程序名,无权限将不会显示)
  11. 找出运行在指定端口的进程
    grep后接端口号
    这里写图片描述
  12. 显示网络接口列表
    这里写图片描述
    显示详细信息,像是ifconfig的结果可以使用:
    这里写图片描述
    其他的读者可以自行使用。

猜你喜欢

转载自blog.csdn.net/baidu_37964071/article/details/80484909