天天看点

n-netstat 查看网络状态命令

文章目录

  • ​​前言​​
  • ​​语法格式​​
  • ​​输出含义​​
  • ​​使用实例​​
  • ​​列出端口占用情况 (包括监听和未监听的)​​
  • ​​列出所有处于监听状态的 Sockets​​
  • ​​显示每个协议的统计信息​​
  • ​​在 netstat 输出中显示 PID 和进程名称​​
  • ​​在 netstat 输出中不显示主机,端口和用户名 (host, port or user)​​
  • ​​持续输出 netstat 信息​​
  • ​​显示系统不支持的地址族 (Address Families)​​
  • ​​显示核心路由信息​​
  • ​​查询进程运行端口​​
  • ​​显示网络接口列表​​

前言

打印网络链接情况,路由表,接口状态,masquerade连接,多播成员信息(multicast memberships)

语法格式

​netstat [address_family_options] [--tcp|-t] [--udp|-u] [--udplite|-U] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--numeric-hosts] [--numeric-ports] [--numeric-users] [--symbolic|-N] [--extend|-e[--extend|-e]] [--timers|-o] [--program|-p] [--ver? bose|-v] [--continuous|-c] [--wide|-W] [delay]​

​netstat {--route|-r} [address_family_options] [--extend|-e[--extend|-e]] [--verbose|-v] [--numeric|-n] [--numeric-hosts] [--numeric-ports] [--numeric-users] [--continuous|-c] [delay]​

​ …

详细格式可以参考​

​man netstat​

n-netstat 查看网络状态命令
  • -a (all)显示所有选项,默认不显示LISTEN相关
  • -t (tcp)仅显示tcp相关选项
  • -u (udp)仅显示udp相关选项
  • -n 拒绝显示别名,能显示数字的全部转化成数字。
  • -l 仅列出有在 Listen (监听) 的服務状态
  • -p 显示建立相关链接的程序名
  • -r 显示路由信息,路由表
  • -e 显示扩展信息,例如uid等
  • -s 按各个协议进行统计
  • -c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

输出含义

n-netstat 查看网络状态命令

整体上netstat的输出可以分为两部分:

  • ​Active Internet connections (w/o servers)​

    ​​ 称为有源TCP连接

    其中​​

    ​Recv-Q​

    ​​和​

    ​Send-Q​

    ​​指的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到.​

    ​Local Address​

    ​​ 本机ip地址,​

    ​Foreign Address​

    ​​外接ip地址, ​

    ​State​

    ​ 连接的状态
  • ​Active UNIX domain sockets (w/o servers)​

    ​​ 称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

    ​​

    ​Proto​

    ​​显示连接使用的协议,​

    ​RefCnt​

    ​​表示连接到本套接口上的进程号,​

    ​Types​

    ​显示套接口的类型,State显示套接口当前的状态,Path表示连接到套接口的其它进程使用的路径名。

使用实例

列出端口占用情况 (包括监听和未监听的)

​netstat -a​

​ 列出所有端口占用情况

n-netstat 查看网络状态命令

​netstat -at​

​ 列出tcp端口占用情况

n-netstat 查看网络状态命令

​netstat -au​

​ 列出udp端口占用情况

n-netstat 查看网络状态命令
列出所有处于监听状态的 Sockets

​netstat -l​

​ 只显示监听端口

n-netstat 查看网络状态命令

​netstat -lt​

​ 只显示监听tcp的端口

n-netstat 查看网络状态命令

​netstat -lu​

​ 只显示监听udp的端口

n-netstat 查看网络状态命令

​netstat -lx​

​ 只显示监听unix的端口

n-netstat 查看网络状态命令
显示每个协议的统计信息

​netstat -s​

​ 显示所有端口的统计信息

n-netstat 查看网络状态命令

​netstat -st​

​ 显示tcp端口的统计信息

n-netstat 查看网络状态命令

​netstat -su​

​ 显示udp端口的统计信息

n-netstat 查看网络状态命令
在 netstat 输出中显示 PID 和进程名称

​nestat -p​

​ 查看所有进程已经进程名称使用的端口以及通信协议

​netstat -pt​

​ 查看使用tcp协议通信的进程名称以及端口号

n-netstat 查看网络状态命令
在 netstat 输出中不显示主机,端口和用户名 (host, port or user)

​netstat -n​

​ 不显示主机,端口号,用户名

n-netstat 查看网络状态命令

如果只是不想让这三个名称中的一个被显示,使用以下命令

netsat -a --numeric-ports
netsat -a --numeric-hosts
netsat -a --numeric-users      
持续输出 netstat 信息

​netstat -c​

​ 每隔一秒输出网络信息

n-netstat 查看网络状态命令
显示系统不支持的地址族 (Address Families)

​netstat -v​

​​ 或者​

​netstat --verbose​

​ 输出的末尾会打印如下信息

n-netstat 查看网络状态命令
显示核心路由信息

​netstat -r​

n-netstat 查看网络状态命令
查询进程运行端口

​netstat -anp |grep ceph-mon​

​ 查看mon进程运行时占用的端口号

n-netstat 查看网络状态命令

找出正在运行指定端口的进程

​netstat -anp |grep ":6789"​

显示网络接口列表

​netstat -i​

​ 查看网络接口信息

n-netstat 查看网络状态命令

​netstat -ie​

​ 查看网口详细信息,类似与ifconfig

n-netstat 查看网络状态命令

继续阅读