Linux Netstat命令及其示例

京东自营,扫码进入

Linux为网络管理和可见性提供了很多工具。 netstat 是许多系统和网络管理员使用的另一种流行且有用的工具。在本教程中,我们将查看netstat的使用示例。

语法

我们将使用以下语法 netstat 命令。

netstat [address_family_options] [options]
Syntax
语法

列出所有连接

一个典型的Linux系统会有很多不同的连接。这些连接类型可以是Unix套接字、IPX套接字、IPv4、IPv6等。有关这些类型的所有连接都可以用 -a 参数。

$ netstat -a
List All Connections
列出所有连接

仅列出TCP连接

列出连接时,可能只需要TCP连接。只有TCP连接可以与一起列出 -t 参数。这里将列出所有正在侦听和已建立的TCP连接。请记住,这也将列出IPv6。

$ netstat -at
List Only TCP Connections
仅列出TCP连接

仅列出UDP连接

另一个有用的特性是只列出UDP连接。 请记住,这也将列出IPv6。

$ netstat -au
List Only UDP Connections
仅列出UDP连接

列出TCP和UDP连接

TCP和UDP连接和端口可以在单个快照中列出。只需提供前面检查过的UDP和TCP参数,如下所示。

$ netstat -a -t -u
List Both TCP and UDP Connections
列出TCP和UDP连接

仅列出侦听 端口

列出时,默认情况下会列出所有连接和端口。有 -l 将列出所有 LISTEN 接口,表示端口正在侦听新连接。

$ netstat  -l
List Only Listening Ports
仅列出侦听端口

您可能会注意到,TCP协议端口提供如下状态: LISTEN 但是UDP端口没有任何状态信息。因为UDP是一个无连接的协议。

仅列出Unix套接字/端口

Netstat能够列出应用程序在本地使用的操作系统级Unix或Linux套接字。在列出Unix套接字信息(如引用计数、标志、类型、状态和提供的i节点)时。

$ netstat -x
List Only Unix Sockets/Ports
仅列出Unix套接字/端口

以数字方式打印端口

打印有关端口和协议的信息时,默认情况下打印文本表示。例如,列出ssh协议 ssh 不使用 22 . 这可以通过 --numeric-ports 选项。

$ netstat -l --numeric-ports
Print Ports Numerically
以数字方式打印端口

禁用DNS查找

列出现有连接时,DNS名称将打印到屏幕上。要获取有关IP地址的DNS信息,必须进行DNS解析。如果我们不需要它们,这可能是一个浪费时间的操作。或者我们只需要IP地址。

$ netstat -n -a
Disable DNS Lookup
禁用DNS查找

获取侦听进程所有者用户 身份证件

所有侦听端口都有一些与进程相关的端口。这些进程将打开用于侦听或连接的端口。这些进程具有关联的用户。此用户信息可以通过 -e . 此功能需要根权限。所以我们会提供 sudo 或者直接以root用户身份运行此命令。还有inode信息可用。

$ sudo netstat -l -e
Get Listening Process Id
获取侦听进程Id

获取倾听过程 身份证件

正如我们在上一个示例中所列出的那样,可以列出用户id和进程id。用于此操作的参数为 -p 而且这个特性也需要root权限。

$ sudo netstat -l -p
Get Listening Process Id
获取侦听进程Id

打印网络统计信息

Linux网络栈支持不同类型的协议。在使用这些协议时,会产生大量的通信量。这些交通信息和统计数据可以用 -s 参数。这将打印所有统计信息,如TCP、UDP、ICMP

$ netstat -s
Print Network Statistics
打印网络统计信息

打印TCP的统计信息

通过提供TCP filter参数,只能列出有关TCP协议栈的统计信息。

$ netstat -s -t
Print Statistics of TCP
打印TCP的统计信息

打印UDP的统计信息

通过提供TCP filter参数,只能列出有关TCP协议栈的统计信息。

$ netstat -s -u
Print Statistics of UDP
打印UDP的统计信息

打印路由表

路由表可以打印不同的工具。Netstat还提供路由表信息。

$ netstat -r
Print Route Table
打印路由表

打印网络接口

出于信息目的,网络接口可以如下打印。将有关于MTU、RX、TX错误的信息

$ netstat -i
Print Network Interfaces
打印网络接口

连续打印统计数据

正常运行的命令将生成输出并只发送到终端一次。如果我们需要连续发送相同命令的输出,我们应该提供 -c 参数。

$ netstat -t -c
Print Stats Continuously
连续打印统计数据

打印活动TCP连接

打印时有很多信息。当我们只需要已经建立的活动连接时,这些信息会压倒我们。这可以借助于 grep 命令。

$ netstat -a | grep 'EST|TIM'
Print Active Connections
打印活动连接

相关文章: UEFI或统一可扩展固件接口

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0 分享