netstat 的10个基本用法

文章简洁实用,转载至此学习、复习。

关于netstat命令的简单介绍

netstat - 为你的 Linux 服务器提供了监测和网络故障排除的重要观察手段。

几个选项的解释

-p :显示进程名和进程PID(需要root权限)
-e : 显示进程的用户名,如果配合-n选项一起,则User列的属性就是用户ID
-s : 打印出网络统计数据,包括某个协议下的收发包数量,配合-t-u则只打印TCP、UDP协议的统计数据
-c : 持续输出

其他

(1)打印active状态的连接

active 状态的套接字连接用 "ESTABLISHED" 字段表示,所以我们可以使用 grep 命令获得 active 状态的连接:

配合 watch 命令监视 active 状态的连接:

watch -d -n0 "netstat -atnp | grep ESTA"

重要的新网络监控命令

其实, netstat命令比较经典,如今又更优秀的工具ss.

ss工具用于导出套接字统计,它可以显示与netstat类似的信息,且可以显示更多的TCP和状态信息。因为它直接从内核空间获取信息,所以会更快。ss的操作和netstat很像,所以这让它可以很容易就可以取代netstat.

ss命令使用的常见选项

ss和netstat很像,默认它会显示已经建立连接的开放的非监听TCP套接字列表。并且你可以用下面的选项过滤输出:

-n : 不要尝试解析服务名。
-r : 尝试解析数字的地址/端口。
-a : 显示所有套接字。
-l : 显示监听套接字。
-p : 显示使用该套接字的进程。
-s : 打印统计数据
-t : 只显示TCP套接字。
-u : 只显示UDP套接字。
-d : 只显示DCCP套接字
-w : 只显示RAW套接字。
-x : 只显示Unix域套接字
-f : FAMILY, 显示FAMILY套接字的类型。目前支持下面这些族:unix、inet、inet6、link、netlink。
-A : QUERY, 指定要列出的套接字列表,通过逗号分隔。可以识别下面的标识符:all、inet、tcp、udp、raw、unix、packet、netlink、unixdgram、unixstream、packetraw、packetdgram。
-o : STATUS, 列出指定状态的套接字

参考文献

  1. netstat 的10个基本用法
  2. 在Linux中的使用 ss 命令检查套接字/网络连接
posted @ 2022-04-24 20:37  时间的风景  阅读(772)  评论(0编辑  收藏  举报