蚊章汇 - netstat
type: channel
link: https://linuxcn.bwsl.wang/tag/netstat/
items: 使用 netstat 查看你的 Linux 服务器网络连接
items: 通过示例学习使用 netstat
items: ss：查看网络连接的另一种方法
items: 如何在 Linux/Unix 系统中验证端口是否打开
items: 在Linux中的使用 ss 命令检查套接字/网络连接
items: iproute2 对决 net-tools
items: 使用netstat检测及监测网络连接
items: netstat 的10个基本用法

使用 netstat 查看你的 Linux 服务器网络连接
type: item
date: 2022-04-12T17:59:00+08:00
description: netstat 命令为你的 Linux 服务器提供了监测和网络故障排除的重要观察手段。在 之前的文章中，我分享了一些管理你的个人 Linux 服务器的首要步骤。我简要的提到了监测网络连接的监听端口，我想通过 Linux 系统的 netstat 命令来扩展开讲讲。服务监测和端口扫描是标准的行业惯例。有很好的软件，如 Prometheus 协助这个过程自动化，SELinux 协助上下文和保护系统访问权限。然而，我相信了解你的服务器是如何连接到其他网络和设备的，是建立正常服务器基准的关键，能够帮助你识别有可能表明错误和入侵等异常情况。作为一个初学者，我已经掌握了 netstat 命令为我的服务器提供了监测和网络故障排除的重要观察手段。Netstat 和类似的一些网络监测工具被归入 net-tools 软件包 里，用来显示关于活动连接的信息。因为运行在开放的端口的服务往往容易被利用，定期进行网络监测能够帮助你及早探测到可疑的活动。安装 netstatnetstat 经常预装在 Linux 发行版上。如果 netstat 没有在你的服务器上安装，用你的包管理器安装它。下面是在基于 Debian 的系统上：$ sudo apt-get install net-tools 在基于 Fedora 的系统上：$ dnf install net-tools 使用 netstat就其本身而言，netstat 命令显示了全部建立成功的连接。你可以使用 netstat 的参数指定进一步预期的输出。举个例子，要显示所有监听和非监听的连接，使用 --all（-a 为简写）的参数。这将返回许多结果，所以在例子中我用管道符输出给 head 命令来显示输出的前 15 行：$ netstat --all | head -n 15 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:27036 *:* LISTEN tcp 0 0 localhost:27060 *:* LISTEN tcp 0 0 *:16001 *:* LISTEN tcp 0 0 localhost:6463 *:* LISTEN tcp 0 0 *:ssh *:* LISTEN tcp 0 0 localhost:57343 *:* LISTEN tcp 0 0 *:ipp *:* LISTEN tcp 0 0 *:4713 *:* LISTEN tcp 0 0 10.0.1.222:48388 syd15s17-in-f5.1e:https ESTABLISHED tcp 0 0 10.0.1.222:48194 ec2-35-86-38-2.us:https ESTABLISHED tcp 0 0 10.0.1.222:56075 103-10-125-164.va:27024 ESTABLISHED tcp 0 0 10.0.1.222:46680 syd15s20-in-f10.1:https ESTABLISHED tcp 0 0 10.0.1.222:52730 syd09s23-in-f3.1e:https ESTABLISHED 要只显示 TCP 端口，使用 --all 和 --tcp 参数，或者简写成 -at ：$ netstat -at | head -n 5 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:27036 *:* LISTEN tcp 0 0 localhost:27060 *:* LISTEN tcp 0 0 *:16001 *:* LISTEN 要只显示 UDP 端口，使用 --all 和 --udp 参数，或者简写成 -au ：$ netstat -au | head -n 5 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 *:27036 *:* udp 0 0 10.0.1.222:44741 224.0.0.56:46164 ESTABLISHED udp 0 0 *:bootpc netstat 命令参数常常是简单易懂的。举个例子，要显示带有全部进程 ID（PID）和数字地址的监听 TC…

通过示例学习使用 netstat
type: item
date: 2017-12-11T09:00:52+08:00
description: netstat 是一个告诉我们系统中所有 tcp/udp/unix socket 连接状态的命令行工具。它会列出所有已经连接或者等待连接状态的连接。 该工具在识别某个应用监听哪个端口时特别有用，我们也能用它来判断某个应用是否正常的在监听某个端口。netstat 命令还能显示其它各种各样的网络相关信息，例如路由表， 网卡统计信息， 虚假连接以及多播成员等。本文中，我们会通过几个例子来学习 netstat。(推荐阅读: 通过示例学习使用 CURL 命令 )1 - 检查所有的连接使用 a 选项可以列出系统中的所有连接，$ netstat -a 这会显示系统所有的 tcp、udp 以及 unix 连接。2 - 检查所有的 tcp/udp/unix socket 连接使用 t 选项只列出 tcp 连接，$ netstat -at 类似的，使用 u 选项只列出 udp 连接，$ netstat -au 使用 x 选项只列出 Unix socket 连接，$ netstat -ax 3 - 同时列出进程 ID/进程名称使用 p 选项可以在列出连接的同时也显示 PID 或者进程名称，而且它还能与其他选项连用，$ netstat -ap 4 - 列出端口号而不是服务名使用 n 选项可以加快输出，它不会执行任何反向查询（LCTT 译注：这里原文有误），而是直接输出数字。 由于无需查询，因此结果输出会快很多。$ netstat -an 5 - 只输出监听端口使用 l 选项只输出监听端口。它不能与 a 选项连用，因为 a 会输出所有端口，$ netstat -l 6 - 输出网络状态使用 s 选项输出每个协议的统计信息，包括接收/发送的包数量，$ netstat -s 7 - 输出网卡状态使用 I 选项只显示网卡的统计信息，$ netstat -i 8 - 显示 多播组 multicast group 信息使用 g 选项输出 IPV4 以及 IPV6 的多播组信息，$ netstat -g 9 - 显示网络路由信息使用 r 输出网络路由信息，$ netstat -r 10 - 持续输出使用 c 选项持续输出结果$ netstat -c 11 - 过滤出某个端口与 grep 连用来过滤出某个端口的连接，$ netstat -anp | grep 3306 12 - 统计连接个数通过与 wc 和 grep 命令连用，可以统计指定端口的连接数量$ netstat -anp | grep 3306 | wc -l 这会输出 mysql 服务端口（即 3306）的连接数。这就是我们简短的案例指南了，希望它带给你的信息量足够。 有任何疑问欢迎提出。via: http://linuxtechlab.com/learn-use-netstat-with-examples/作者：Shusain 译者：lujun9972 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出

ss：查看网络连接的另一种方法
type: item
date: 2017-07-27T22:36:55+08:00
description: 在之前的文章中，我提到过 ss，它是 iproute2 包附带的另一个工具，允许你查询 socket 的有关统计信息。可以完成 netstat 同样的任务，但是，ss 稍微快一点而且命令更简短。直接输入 ss，默认会显示与 netstat 同样的内容，并且输入类似的参数可以获取你想要的类似输出。例如：$ ss -t State Recv-Q Send-Q Local Address:Port Peer Address:Port ESTAB 0 0 127.0.0.1:postgresql 127.0.0.1:48154 ESTAB 0 0 192.168.0.136:35296 192.168.0.120:8009 ESTAB 0 0 192.168.0.136:47574 173.194.74.189:https […]ss -t 只显示 TCP 连接。ss -u 用于显示 UDP 连接，-l 参数只会显示监听的端口，而且可以进一步过滤到任何想要的信息。我并没有测试所有可用参数，但是你甚至可以使用 -K 强制关闭 socket。ss 真正耀眼的地方是其内置的过滤能力。让我们列出所有端口为 22（ssh）的连接：$ ss state all sport = :ssh Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 *:ssh *:* tcp ESTAB 0 0 192.168.0.136:ssh 192.168.0.102:46540 tcp LISTEN 0 128 :::ssh :::*如果只想看已建立的 socket（排除了 listening 和 closed ）：$ ss state connected sport = :ssh Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp ESTAB 0 0 192.168.0.136:ssh 192.168.0.102:46540类似的，可以列出指定的 host 或者 ip 段。例如，列出到达 74.125.0.0/16 子网的连接，这个子网属于 Google：$ ss state all dst 74.125.0.0/16 Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp ESTAB 0 0 192.168.0.136:33616 74.125.142.189:https tcp ESTAB 0 0 192.168.0.136:42034 74.125.70.189:https tcp ESTAB 0 0 192.168.0.136:57408 74.125.202.189:httpsss与 iptables 的语法非常相同，如果已经熟悉了其语法，ss 非常容易上手。也可以安装 iproute2-doc 包， 通过 /usr/share/doc/iproute2-doc/ss.html 获得完整文档。还不快试试! 你就可以知道它有多棒。无论如何，让我输入的字符越少我越高兴。via: https://insights.ubuntu.com/2017/07/25/ss-another-way-to-get-socket-statistics/作者：Mathieu Trudel-Lapierre 译者：VicYu 校对：wxy本文由 LCTT 原创编译，Linux中国 荣誉推出

如何在 Linux/Unix 系统中验证端口是否打开
type: item
date: 2017-01-01T16:09:00+08:00
description: 在 Linux 或者类 Unix 中，我该如何检查某个端口是否被占用？我又该如何验证 Linux 服务器中有哪些端口处于监听状态？验证哪些端口在服务器的网络接口上处于监听状态是非常重要的。你需要注意那些开放端口来检测网络入侵。除了网络入侵，为了排除故障，确认服务器上的某个端口是否被其他应用程序占用也是必要的。比方说，你可能会在同一个系统中安装了 Apache 和 Nginx 服务器，所以了解是 Apache 还是 Nginx 占用了 # 80/443 TCP 端口真的很重要。这篇快速教程会介绍使用 netstat 、 nmap 和 lsof 命令来检查端口使用信息并找出哪些程序正在使用这些端口。如何检查 Linux 中的程序和监听的端口1、 打开一个终端，如 shell 命令窗口。 2、 运行以下任意一行命令：sudo lsof -i -P -n | grep LISTEN sudo netstat -tulpn | grep LISTEN sudo nmap -sTU -O IP地址 下面我们看看这些命令和它们的详细输出内容：方式 1：lsof 命令语法如下：$ sudo lsof -i -P -n $ sudo lsof -i -P -n | grep LISTEN $ doas lsof -i -P -n | grep LISTEN ### OpenBSD 输出如下：图 1：使用 lsof 命令检查监听端口和程序仔细看上面输出的最后一行：sshd 85379 root 3u IPv4 0xffff80000039e000 0t0 TCP 10.86.128.138:22 (LISTEN) sshd 是程序的名称10.86.128.138 是 sshd 程序绑定 (LISTEN) 的 IP 地址22 是被使用 (LISTEN) 的 TCP 端口85379 是 sshd 任务的进程 ID (PID)方式 2：netstat 命令你可以如下面所示使用 netstat 来检查监听的端口和程序。Linux 中 netstat 语法$ netstat -tulpn | grep LISTEN FreeBSD/MacOS X 中 netstat 语法$ netstat -anp tcp | grep LISTEN $ netstat -anp udp | grep LISTEN OpenBSD 中 netstat 语法$ netstat -na -f inet | grep LISTEN $ netstat -nat | grep LISTEN 方式 3：nmap 命令语法如下：$ sudo nmap -sT -O localhost $ sudo nmap -sU -O 192.168.2.13 ### 列出打开的 UDP 端口 $ sudo nmap -sT -O 192.168.2.13 ### 列出打开的 TCP 端口 示例输出如下：图 2：使用 nmap 探测哪些端口监听 TCP 连接你可以用一句命令合并 TCP/UDP 扫描：$ sudo nmap -sTU -O 192.168.2.13 赠品：对于 Windows 用户在 windows 系统下可以使用下面的命令检查端口使用情况：netstat -bano | more netstat -bano | grep LISTENING netstat -bano | findstr /R /C:"[LISTING]" via: https://www.cyberciti.biz/faq/unix-linux-check-if-port-is-in-use-command/作者：VIVEK GITE 译者：GHLandy 校对：oska874本文由 LCTT 原创编译，Linux中国 荣誉推出

在Linux中的使用 ss 命令检查套接字/网络连接
type: item
date: 2014-12-04T18:11:15+08:00
description: ss是iproute2包的一部分（控制TCP/IP网络和流量的工具）。iproute2的目标是替代先前用于配置网络接口、路由表和管理ARP表的标准Unix网络工具套装（通常称之为“net-tools”）。ss工具用于导出套接字统计，它可以显示与netstat类似的信息，且可以显示更多的TCP和状态信息。因为它直接从内核空间获取信息，所以会更快。ss的操作和netstat很像，所以这让它可以很容易就可以取代netstat。使用和常见选项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 - 列出指定状态的套接字ss 命令示例1. 显示所有的的TCP端口和使用它们的进程：# ss -tnap 2. 你可以使用-4 标志来显示IPv4链接，-6标志来显示IPv6链接，比如：# ss -tnap6 3. 跟上面的行为一样，你只需用u代替t就会显示所有开放的UDP端口。# ss -unap 4. 你可以使用-s标志来打印各种有用的统计数据：# ss -s 5. 你可以使用-o标志来检查所有不同状态下的链接，比如显示所有已经建立的连接。# ss -tn -o state established -p via: http://linoxide.com/linux-command/ss-sockets-network-connection/作者：Adrian Dinu 译者：geekpi 校对：wxy本文由 LCTT 原创翻译，Linux中国 荣誉推出

iproute2 对决 net-tools
type: item
date: 2014-11-28T05:04:12+08:00
description: 如今很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具（统称为net-tools）来配置网络功能，解决网络故障。net-tools起源于BSD的TCP/IP工具箱，后来成为老版本Linux内核中配置网络功能的工具。但自2001年起，Linux社区已经对其停止维护。同时，一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools，只支持iproute2。作为网络配置工具的一份子，iproute2的出现旨在从功能上取代net-tools。net-tools通过procfs(/proc)和ioctl系统调用去访问和改变内核网络配置，而iproute2则通过netlink套接字接口与内核通讯。抛开性能而言，iproute2的用户接口比net-tools显得更加直观。比如，各种网络资源（如link、IP地址、路由和隧道等）均使用合适的对象抽象去定义，使得用户可使用一致的语法去管理不同的对象。更重要的是，到目前为止，iproute2仍处在持续开发中。如果你仍在使用net-tools，而且尤其需要跟上新版Linux内核中的最新最重要的网络特性的话，那么是时候转到iproute2的阵营了。原因就在于使用iproute2可以做很多net-tools无法做到的事情。对于那些想要转到使用iproute2的用户，有必要了解下面有关net-tools和iproute2的众多对比。显示所有已连接的网络接口下面的命令显示出所有可用网络接口的列表（无论接口是否激活）。使用net-tools：$ ifconfig -a 使用iproute2：$ ip link show 激活或停用网络接口使用这些命令来激活或停用某个指定的网络接口。使用net-tools：$ sudo ifconfig eth1 up $ sudo ifconfig eth1 down 使用iproute2：$ sudo ip link set down eth1 $ sudo ip link set up eth1 为网络接口分配IPv4地址使用这些命令配置网络接口的IPv4地址。使用net-tools：$ sudo ifconfig eth1 10.0.0.1/24 使用iproute2：$ sudo ip addr add 10.0.0.1/24 dev eth1 值得注意的是，可以使用iproute2给同一个接口分配多个IP地址，ifconfig则无法这么做。使用ifconfig的变通方案是使用IP别名。$ sudo ip addr add 10.0.0.1/24 broadcast 10.0.0.255 dev eth1 $ sudo ip addr add 10.0.0.2/24 broadcast 10.0.0.255 dev eth1 $ sudo ip addr add 10.0.0.3/24 broadcast 10.0.0.255 dev eth1 移除网络接口的IPv4地址就IP地址的移除而言，除了给接口分配全0地址外，net-tools没有提供任何合适的方法来移除网络接口的IPv4地址。相反，iproute2则能很好地完全。使用net-tools：$ sudo ifconfig eth1 0 使用iproute2：$ sudo ip addr del 10.0.0.1/24 dev eth1 显示网络接口的IPv4地址按照如下操作可查看某个指定网络接口的IPv4地址。使用net-tools：$ ifconfig eth1 使用iproute2：$ ip addr show dev eth1 同样，如果接口分配了多个IP地址，iproute2会显示出所有地址，而net-tools只能显示一个IP地址。为网络接口分配IPv6地址使用这些命令为网络接口添加IPv6地址。net-tools和iproute2都允许用户为一个接口添加多个IPv6地址。使用net-tools：$ sudo ifconfig eth1 inet6 add 2002:0db5:0:f102::1/64 $ sudo ifconfig eth1 inet6 add 2003:0db5:0:f102::1/64 使用iproute2：$ sudo ip -6 addr add 2002:0db5:0:f102::1/64 dev eth1 $ sudo ip -6 addr add 2003:0db5:0:f102::1/64 dev eth1 显示网络接口的IPv6地址按照如下操作可显示某个指定网络接口的IPv6地址。net-tools和iproute2都可以显示出所有已分配的IPv6地址。使用net-too…

使用netstat检测及监测网络连接
type: item
date: 2014-09-12T22:24:16+08:00
description: 大家好，我是邪恶君子！今天，邪恶就给大家分享一下，使用小小的一个netstat命令，就能让你检测出系统是否处于安全状态！！！这篇文档，复杂°：简单；难易°：易。坚决让小白都看得懂，学得会，掌握牢，上手快！好，废话不多说，看招：大家都知道，Linux上的web服务每天都要面临成千上万的连接，这些连接都是要遵循TCP协议的，这都是众所周知的（至于TCP协议，这里就不在过多的介绍，不懂的同学可以自己搜索，友好多）。既然都是TCP协议连接，那就不得不面临一个网路最大的安全问题，DOS攻击及DDOS攻击，这些攻击是没有办法抹除的，因为这是针对TCP协议本身的一个设计缺陷儿造成的。所以，这就要求运维人员，时刻监测系统安全，是否处于被DOS攻击状态。那么是怎么监测及检测的呢？这就要用到我一开始就要提到的netstat命令。先简单的介绍一下netstat命令的主要作用：可以查看系统当前的连接状态，不管是TCP连接还是udp协议连接，以及每个连接的进程号、是哪个应用程序、连接所用的端口号，这些都可以陈列出来。是不是很强大。在讲监测检测之前，先给大家在普及一个知识，那就是TCP连接的状态，TCP进行3次握手，其过程有很多状态，不同的连接状态，都有想对应的状态码，看下面列表：LISTEN：侦听来自远方的TCP端口的连接请求SYN-SENT：再发送连接请求后等待匹配的连接请求SYN-RECEIVED：再收到和发送一个连接请求后等待对方对连接请求的确认ESTABLISHED：代表一个打开的连接FIN-WAIT-1：等待远程TCP连接中断请求，或先前的连接中断请求的确认FIN-WAIT-2：从远程TCP等待连接中断请求CLOSE-WAIT：等待从本地用户发来的连接中断请求CLOSING：等待远程TCP对连接中断的确认LAST-ACK：等待原来的发向远程TCP的连接中断请求的确认TIME-WAIT：等待足够的时间以确保远程TCP接收到连接中断请求的确认CLOSED：没有任何连接状态大家最好一定要记住这些状态，因为运维人员在监控系统并发连接状态时，监控系统返回的也是这些状态码！了解完这些后，还要再了解一个Linux系统的脚本中的一个小知识点，那就是“|”管道符，管道符的作用就不多说了，这里就简单提一下，因为下面的例子要用到。好了，终于可以进入正题了，是不是都有点心急了呢 ？嘿嘿以下这条命令将会显示出netstat的帮助信息，不懂的以及不太了解这个命令有哪些参数可用的都可以在这个命令的返回信息中看到：#netstat --help显示当前所有活动的网络连接：#netstat -na显示出所有处于监听状态的应用程序及进程号和端口号：#netstat -aultnp如果想对一个单一的进行查询，只需要在命令后面再加上“| grep $”。这里就用到了管道符，以及grep筛选命令，$代表参数，也就是你要查询的那个。如要显示所有80端口的网络连接：#netstat -aultnp | grep 80如果还想对返回的连接列表进行排序，这就要用到sort命令了，命令如下：#netstat -aultnp | grep :80 | sort当然，如果还想进行统计的话，就可以再往后面加wc命令。如：#netstat -aultnp | grep :80 | wc -l其实，要想监测出系统连接是否安全，要进行多状态的查询，以及要分析，总结，还有就是经验。总的下来，才可以判断出连接是否处于安全状态。下面就给大家再举一些例子，让大家彻底的明白，及彻底的理解这个命令的用处，使其发挥出最大功能。#netstat -n -p|grep SYN_REC | wc -l这个命令可以查找出当前服务器有多少个活动的 SYNC\_REC 连接。正常来说这个值很小，最好小于5。 当有Dos攻击或者邮件炸弹的时候，这个值相当的高。尽管如此，这个值和系统有很大关系，有的服务器值就很高，也是正常现象。#netstat -n -p | grep SYN_REC | sort -u列出所有连接过的IP地址。#netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'列出所有发送SYN\_REC连接节点的IP地址。#netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n使用netstat命令计算每个主机连接到本机的连接数。#netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n列出所有连接到本机的UDP或者TCP连接的IP数…

netstat 的10个基本用法
type: item
date: 2014-01-03T04:46:00+08:00
description: Netstat 简介Netstat 是一款命令行工具，可用于列出系统上所有的网络套接字连接情况，包括 tcp, udp 以及 unix 套接字，另外它还能列出处于监听状态（即等待接入请求）的套接字。如果你想确认系统上的 Web 服务有没有起来，你可以查看80端口有没有打开。以上功能使 netstat 成为网管和系统管理员的必备利器。在这篇教程中，我会列出几个例子，教大家如何使用 netstat 去查找网络连接信息和系统开启的端口号。以下的简单介绍来自 netstat 的 man 手册：netstat - 打印网络连接、路由表、连接的数据统计、伪装连接以及广播域成员。1. 列出所有连接第一个要介绍的，是最简单的命令：列出所有当前的连接。使用 -a 选项即可。$ netstat -a Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 enlightened:domain *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp 0 0 enlightened.local:54750 li240-5.members.li:http ESTABLISHED tcp 0 0 enlightened.local:49980 del01s07-in-f14.1:https ESTABLISHED tcp6 0 0 ip6-localhost:ipp [::]:* LISTEN udp 0 0 enlightened:domain *:* udp 0 0 *:bootpc *:* udp 0 0 enlightened.local:ntp *:* udp 0 0 localhost:ntp *:* udp 0 0 *:ntp *:* udp 0 0 *:58570 *:* udp 0 0 *:mdns *:* udp 0 0 *:49459 *:* udp6 0 0 fe80::216:36ff:fef8:ntp [::]:* udp6 0 0 ip6-localhost:ntp [::]:* udp6 0 0 [::]:ntp [::]:* udp6 0 0 [::]:mdns [::]:* udp6 0 0 [::]:63811 [::]:* udp6 0 0 [::]:54952 [::]:* Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 12403 @/tmp/dbus-IDgfj3UGXX unix 2 [ ACC ] STREAM LISTENING 40202 @/dbus-vfs-daemon/socket-6nUC6CCx 上述命令列出 tcp, udp 和 unix 协议下所有套接字的所有连接。然而这些信息还不够详细，管理员往往需要查看某个协议或端口的具体连接情况。2. 只列出 TCP 或 UDP 协议的连接使用 -t 选项列出 TCP 协议的连接：$ netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 enlightened:domain *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp 0 0 enlightened.local:36310 del01s07-in-f24.1:https ESTABLISHED tcp 0 0 enlightened.local:45038 a96-17-181-10.depl:http ESTABLISHED tcp 0 0 enlightened.local:37892 ABTS-North-Static-:http ESTABLISHED ..... 使用 -u 选项列出 UDP 协议的连接：$ netstat -au Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 *:34660 *:* udp 0 0 enlighte…