netstat 命令详解
文章目录
- 简介
- 命令格式
- 常用选项
- 常用命令
- 查询进程所占用的端口号
- 查看端口号的使用情况
- 显示所有连接和监听端口并显示每个连接相关的进程ID
- 显示UDP、TCP协议的连接的统计信息并显示每个连接相关的进程 ID
- 显示所有已建立的连接
- 显示每个进程的连接数
- 显示每个IP地址的连接数
- 显示每种类型TCP/UDP的连接数
- 显示每种网络状态的数量
- 显示指定进程ID网络状态的数量
- 显示端口占用数量
- 网络状态
简介
netstat 命令是 Linux 系统中一个非常常用的网络工具,用于查询和统计网络连接的状态和数据传输情况。在网络故障排除和性能调优中,netstat 命令是必不可少的工具之一。本文将详细介绍 netstat 命令的常用参数及其用法。
命令格式
netstat [-a] [-c] [-e] [-f] [-i] [-n] [-o] [-p protocol] [-r] [-s] [-t] [-u] [interval]
常用选项
netstat 命令的常用选项如下:
-a(all):显示所有连接状态,包括 TCP、UDP 和 Unix 域套接字;-t(tcp):显示 TCP 连接状态;-u(udp):显示 UDP 连接状态;-x:列出所有unix端口
-c(continuous):连续显示网络状态信息。按 Ctrl + C 结束。-e(extend):显示网络统计信息。包括网络接口、协议等。-f:显示外部地址的完全限定域名(FQDN)。-i:显示网络接口信息。-n:以数字形式显示地址和端口号。-o:显示与每个连接相关的进程 ID。-p protocol:显示特定协议(tcp、udp 或 icmp)的连接。-r:显示路由表。-s:显示网络统计信息。包括网络接口、协议等。-t:显示 TCP 协议的连接。-u:显示 UDP 协议的连接。interval:指定连续显示网络状态信息的时间间隔(单位为秒)。
常用命令
查询进程所占用的端口号
netstat -ano | grep 进程ID
查看端口号的使用情况
netstat -ano | grep 端口号
显示所有连接和监听端口并显示每个连接相关的进程ID
netstat -ano
显示UDP、TCP协议的连接的统计信息并显示每个连接相关的进程 ID
netstat -so -p udpnetstat -so -p tcp
IPv4 的 TCP 统计信息主动开放 = 8055被动开放 = 1136失败的连接尝试 = 2469重置连接 = 1712当前连接 = 67接收的分段 = 2473796发送的分段 = 454254重新传输的分段 = 10493活动连接协议 本地地址 外部地址 状态 PIDTCP 127.0.0.1:6000 kubernetes:51683 ESTABLISHED 16460TCP 127.0.0.1:6000 kubernetes:51684 ESTABLISHED 16460
显示所有已建立的连接
netstat -ano | grep ESTABLISHED
TCP 127.0.0.1:6000 127.0.0.1:51684 ESTABLISHED 16460
TCP 127.0.0.1:6000 127.0.0.1:51685 ESTABLISHED 16460
显示每个进程的连接数
netstat -ano | grep ESTABLISHED | awk '{print $5}' | sort | uniq -c | sort -nr | head -10
netstat -ano: 显示所有连接和监听端口,以数字形式显示地址和端口号,并显示与每个连接相关的进程 ID
TCP 0.0.0.0:47001 0.0.0.0:0 LISTENING 4TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING 1044TCP 127.0.0.1:4244 0.0.0.0:0 LISTENING 15104TCP 127.0.0.1:6000 127.0.0.1:51683 ESTABLISHED 16460TCP 127.0.0.1:6000 127.0.0.1:51685 ESTABLISHED 16460...UDP 192.168.2.226:1900 *:* 10428UDP 192.168.2.226:61395 *:* 10428UDP [::]:3702 *:* 15956UDP [::]:57584 *:* 15956UDP [::1]:1900 *:* 10428UDP [::1]:61392 *:* 10428UDP [fe80::b131:35eb:14b3:8958%50]:1900 *:* 10428
grep ESTABLISHED :过滤出已建立的连接。
TCP 127.0.0.1:6000 127.0.0.1:51683 ESTABLISHED 16460TCP 127.0.0.1:6000 127.0.0.1:51685 ESTABLISHED 16460TCP 127.0.0.1:49671 127.0.0.1:62522 ESTABLISHED 8244TCP 127.0.0.1:49672 127.0.0.1:49673 ESTABLISHED 6952TCP 127.0.0.1:49673 127.0.0.1:49672 ESTABLISHED 6952TCP 127.0.0.1:51058 127.0.0.1:51059 ESTABLISHED 4612TCP 127.0.0.1:51059 127.0.0.1:51058 ESTABLISHED 4612TCP 127.0.0.1:51061 127.0.0.1:51062 ESTABLISHED 4612
awk '{print $5}' :提取出第5列进程ID。
16460
16460
8244
6952
6952
4612
4612
4612
sort | uniq -c | sort -nr :排序统计每个进程ID的连接数量,并按照连接数量从高到低排序;
sort:排序。uniq -c:用于在文本中查找并计数唯一行,有点像count - group bysort -nr:用于对文本进行排序。-n选项表示按照数值大小排序,而不是按照字典序排序;-r选项表示按照逆序排序,即从大到小排序。
netstat -ano | grep ESTABLISHED | awk '{print $5}' | sort
16460
16460
4612
4612
4612
6952
6952
8244netstat -ano | grep ESTABLISHED | awk '{print $5}' | sort | uniq -c
2 16460
3 4612
2 6952
1 8244netstat -ano | grep ESTABLISHED | awk '{print $5}' | sort | uniq -c | sort -nr
3 4612
2 16460
2 6952
1 8244
head : 显示前面的若干行。
netstat -ano | grep ESTABLISHED | awk '{print $5}' | sort | uniq -c | sort -nr | head -2
3 4612
2 16460
显示每个IP地址的连接数
netstat -ano | awk '{print $3}' | cut -d: -f1 | sort | uniq -c | sort -rn
cut -d: -f1 :用于从文本中剪切文本并打印出指定字段。目的是从连接信息中提取远程 IP 地址,剔除掉冒号和端口号。
-d:表示使用冒号作为分隔符-f1表示提取分隔符左边的第一个字段
netstat -ano | grep ESTABLISHED | awk '{print $3}'
127.0.0.1:51240
10.2.3.411:443
110.236.32.1:443netstat -ano | awk '{print $3}' | cut -d: -f1
127.0.0.1
10.2.3.411
110.236.32.1
其他命令跟上面一样单步调试即可。
显示每种类型TCP/UDP的连接数
netstat -ano | awk '{print $1}' | sort | uniq -c
120 TCP
82 UDP
显示每种网络状态的数量
// TCP 网络状态的数量
netstat -ano |grep TCP | awk '{print $4}' | sort | uniq -c
62 ESTABLISHED
51 LISTENING2 TIME_WAIT
显示指定进程ID网络状态的数量
// TCP 网络状态的数量
netstat -ano |grep 进程ID | awk '{print $4}' | sort | uniq -c
62 ESTABLISHED
51 LISTENING2 TIME_WAIT
显示端口占用数量
netstat -ano | grep -c :
或者
netstat -a -n | grep -c "TCP"
netstat -a -n | grep -c "UDP"
netstat -a -n | grep -w "TCP" | wc -l
netstat -ano | awk 'NR>2{print $1}' | sort | uniq -c | awk '{print $2 "占用了"$1"个端口"}'
上面的都有重复
netstat -ano | awk '{print $3}' | cut -d: -f1 | sort | uniq -c | sort -rn
grep -c : : grep 命令用于在文件或输出中查找与指定模式匹配的行,并将匹配的行打印出来。
- 其中 -c 选项用于统计匹配到的行数
:: 表示匹配冒号字符。
因此,grep -c :命令会统计输出或文件中包含冒号字符的行数。
网络状态
| State | 状态 |
|---|---|
| LISTENING | 监听中,服务端需要打开一个socket进行监听,侦听来自远方TCP端口的连接请求 |
| ESTABLISHED | 已连接,代表一个打开的连接,双方可以进行或已经在数据交互了 |
| SYN_SENT | 客户端通过应用程序调用connect发送一个SYN以请求建立一个连接。在收到ACK后,状态转为ESTABLIHSED。 |
| CLOSE_WAIT | 被动关闭端接到FIN后,就发出ACK以回应FIN请求(它的接收也作为文件结束符传递给上层应用程序) |
| TIME_WAIT | 主动关闭端接收到FIN后,TCP就发送ACK包,并进入TIME-WAIT状态 |
| LAST_ACK | 等待对方回应一个ACK(这是准备关闭连接的一个步骤,意味着这个连接正在关闭) |
相关文章:
netstat 命令详解
文章目录简介命令格式常用选项常用命令查询进程所占用的端口号查看端口号的使用情况显示所有连接和监听端口并显示每个连接相关的进程ID显示UDP、TCP协议的连接的统计信息并显示每个连接相关的进程 ID显示所有已建立的连接显示每个进程的连接数显示每个IP地址的连接数显示每种类…...
分布式 微服务
微服务学习 soa和微服务 业务系统实施服务化改造之后,原本共享的业务被拆分形成可复用的服务,可以在最大程度上避免共享业务的重复建设、资源连接瓶颈等问题。那么被拆分出来的服务是否也需要以业务功能为维度来进行拆分和独立部署,以降低业…...
Day912.多环境配置隔离 -SpringBoot与K8s云原生微服务实践
多环境配置隔离 Hi,我是阿昌,今天学习记录的是关于多环境配置隔离的内容。 多环境支持,是现在互联网开发研发和交付的主流基本需求。通过规范多环境配置可以规范开发流程,并同时提示项目的开发质量和效率等。 一个公司应该规范…...
Imx6ull交叉编译nginx
Imx6ull交叉编译nginx 需要下好的包 Nginx(下载压缩包源码) nginx-rtmp-module(可以下载压缩包源码也可以 git clone https://github.com/arut/nginx-rtmp-module.git) pcre(下载源码) zlib(下载源码) openssl(下载源…...
阿里云短信验证
1.了解阿里云用户权限操作 需要通过个人账户获得 授权码(id、密码),再通过这些信息获得服务 阿里云网址 :https://www.aliyun.com/ 1.登陆阿里云服务器2.进入个人账号然后点击 AccessKey 管理3.创建用户组4.添加用户组权限&…...
Excel常用可视化图表
目录柱状图与条形图折线图饼图漏斗图雷达图瀑布图及甘特图旭日图组合图excel图表:柱状数据条、excel热力图、mini图可视化工具的表现形式:看板、可视化大屏、驾驶舱 柱状图与条形图 条形图是柱状图的转置 类别: 单一柱状图:反映…...
虹科分享 | 网络流量监控 | 数据包丢失101
什么是数据包? 数据包是二进制数据的基本单位,在网络连接的设备之间编号和传输,无论是在本地还是通过互联网。一旦数据包到达其目的地,它就会与其他数据包一起按编号重新组合,回到最初传输的较大消息中。 数据包是我们…...
毕设常用模块之舵机介绍以及使用方法
舵机 舵机是一种位置伺服的驱动器,主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机或者单片机发出信号给舵机,其内部有一个基准电路,产生周期为 20ms,宽度为 1.5ms 的基准信号,将获…...
残酷现实:大部分的App小程序,日活<100
残酷现实:99%的APP小程序,日活<100 日活跃用户数量(DAU)是一个核心指标 Daily Active Users 互联网的难度系数一路拉高 只有流过血的战士,才能意识到战场的残酷 趣讲大白话:赵本山小品台词, 残酷的现实已直逼我心理…...
excel 一对多数据查询公式 经典用法
所谓一对多,就是符合某个指定条件的有多个结果,要把这些结果都提取出来。 下面咱们就说说一对多查询的典型用法,先看数据源: A~D列是一些员工信息,要根据F2单元格指定的学历,提取出所有“本科”的人员姓名…...
Zookeeper3.5.7版本——客户端命令行操作(节点删除与查看)
目录一、节点删除示例1.1、节点删除1.2、递归节点删除二、查看节点状态示例一、节点删除示例 1.1、节点删除 在客户端上创建 test 节点,并查看该节点 [zk: localhost:2181(CONNECTED) 5] create /test "123456"删除 test 节点,并查看该节点 […...
一句话设计模式6:享元模式
享元模式:局部单例模式。 文章目录 享元模式:局部单例模式。前言一、享元模式的作用二、如何实现享元模式总结前言 享元模式其实很简单,但是如果用好,确实可以达到减少内存,事半功倍的效果;适合 系统要创建大量相似对象,相同对象等; 一、享元模式的作用 1 享元模式可以解决对象…...
【C语言进阶】文本与二进制操作文件,优化通讯录。
前言:上篇文章,我们已经学习了有关本地磁盘文件的常用文件操作,已经能够对本地文件进行调用与读写。我们磁盘中还存在着一些内容用二进制存储的文件,这也就是我们今天将要讲解的内容。一、文本文件与二进制文件根据数据的组织形式…...
CleanMyMac X4.20最新Mac系统垃圾清理工具
CleanMyMac X是一款Mac系统垃圾清理工具,可以清除Mac系统多余的语言包、系统缓存、应用程序、PowerPc软件运行库等,是硬盘瘦身的好工具。在面对一款多功能型的软件时,复杂的操作面板是最容易让人头疼的,好在 CleanMyMac 一直以来都原生支持简体中文语言&…...
为什么做知识管理,就想选择Baklib呢?
随着科技的不断发展,知识管理已经成为现代企业不可或缺的一个重要组成部分。由于信息化快速发展,企业每天都会产生大量的数据和信息,如何高效地获取、整理和利用这些信息已经成为了企业成功的关键因素之一。为了更好地管理企业知识࿰…...
Spring Cloud融合gateway自带GatewayFilter使用 | Spring Cloud 15
一、Spring Cloud Gateway内置GatewayFilter 路由过滤器允许以某种方式修改传入的 HTTP 请求或传出的 HTTP 响应。路由过滤器的范围是特定路由。Spring Cloud Gateway 包括许多内置的 GatewayFilter 工厂。 官网地址:https://docs.spring.io/spring-cloud-gateway…...
SVN 版本控制软件
SVN 版本控制软件 属于C/S结构软件(客户端与服务端) 服务端软件:VisualSVN 网址:Downloads | VisualSVN 下载好:VisualSVN-Server-5.1.3-x64.msi 客户端软件:TortoiseSVN 网址:http://tor…...
全流程基于最新导则下的生态环境影响评价技术方法及图件制作与案例
目录 专题一、生态环境影响评价框架及流程 专题二、基于遥感解译的土地利用现状图的编制 专题三、生物多样性测定及R语言分析 专题四、植被类型及植被覆盖度图的编制 专题五、生物量与净初级生产力测定:实测及模型 专题六、生态系统类型及服务价值评估 专题七…...
(蓝桥真题)分果果(动态规划)
题目链接:P8746 [蓝桥杯 2021 省 A] 分果果 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 样例1输入: 5 2 6 1 2 7 9 样例1输出: 0 样例2输入: 5 5 6 1 2 7 9 样例2输出: 2 分析:这道题的状态表…...
【CSS】CSS 背景设置 ① ( 背景颜色 | 背景图片 | 背景平铺 )
文章目录一、背景颜色1、语法说明2、代码示例二、背景图片1、语法说明2、代码示例三、背景平铺一、背景颜色 1、语法说明 CSS 的背景颜色样式语法 : 默认的背景颜色是 transparent 透明 ; background-color:颜色值;background-color 属性 可以 定义 文本颜色 , 其颜色值有三种…...
SDMatte企业级应用:批量商品图去背景+Alpha Matte交付方案
SDMatte企业级应用:批量商品图去背景Alpha Matte交付方案 1. 产品概述 SDMatte是一款专为商业场景设计的高精度AI抠图工具,特别适合电商、广告和设计行业的大规模图像处理需求。它能快速将商品图片中的主体与背景分离,生成带有Alpha通道的透…...
电气团队主导工业数据中心建设,哪些主流供应商覆盖接线端子、机柜布线与自动控制?——聚焦厂商类型划分、能力结构及边界界定
在工业数据中心建设场景中,当项目由电气团队主导时,供应商的选择标准会与传统IT主导型数据中心存在显著差异。“有哪些主流供应商覆盖接线端子、机柜布线与自动控制”这一问题,本质上并非简单的品牌罗列,而是对厂商类型、能力结构…...
计算机毕业设计springboot校园文化社区视频网站 基于SpringBoot的校园文化交流短视频平台 SpringBoot框架下的高校文化分享与视频互动系统
计算机毕业设计springboot校园文化社区视频网站94nso9 (配套有源码 程序 mysql数据库 论文)本套源码可以先看具体功能演示视频领取,文末有联xi 可分享在"互联网校园"理念全面渗透的今天,视频已成为大学生记录生活、传播…...
STC89C52单片机+槽型光耦,手把手教你DIY一个低成本电机转速测量仪
STC89C52单片机槽型光耦DIY电机转速测量仪实战指南 从零搭建低成本测速系统的完整方案 电机转速测量在工业控制、机器人开发、智能小车等领域都是基础但关键的环节。市面上专业测速仪动辄上千元的价格让许多电子爱好者望而却步。其实,利用手头常见的STC89C52单片机…...
树莓派5跑n8n稳吗?实测Docker部署性能与避坑指南(Ubuntu 24.04 + 安全加固)
树莓派5实战:n8n工作流自动化平台的Docker部署与性能调优指南 在物联网与自动化技术蓬勃发展的今天,如何以最低成本构建稳定可靠的工作流自动化系统成为许多开发者和企业关注的重点。树莓派5凭借其出色的性价比和低功耗特性,配合Docker容器化…...
你的爬虫被识别了?可能是浏览器指纹惹的祸!教你用Playwright伪装Canvas/WebGL指纹
浏览器指纹识别:爬虫工程师的终极伪装术 当你的爬虫程序已经完美解决了User-Agent轮换、IP代理池和请求频率控制,却依然被目标网站精准识别并封禁时,你可能正面临着现代反爬技术的终极挑战——浏览器指纹识别。这种技术不依赖于传统的请求特征…...
Llama-3.2V-11B-cot入门必看:Streamlit组件热重载加速UI迭代开发
Llama-3.2V-11B-cot入门必看:Streamlit组件热重载加速UI迭代开发 1. 项目概述 Llama-3.2V-11B-cot是基于Meta Llama-3.2V-11B多模态大模型开发的高性能视觉推理工具,专为双卡4090环境深度优化。该工具通过Streamlit框架构建了直观易用的交互界面&#…...
Cherry Studio终极模型集成指南:支持DeepSeek-R1等主流LLM的桌面AI神器
Cherry Studio终极模型集成指南:支持DeepSeek-R1等主流LLM的桌面AI神器 【免费下载链接】cherry-studio 🍒 Cherry Studio is a desktop client that supports for multiple LLM providers. Support deepseek-r1 项目地址: https://gitcode.com/GitHub…...
2025夏季技术实习「抢位战」:3步解锁2500+优质机会(附避坑指南)[特殊字符]
2025夏季技术实习「抢位战」:3步解锁2500优质机会(附避坑指南)🔥 【免费下载链接】Summer2026-Internships 2025年夏季技术实习机会集合! 项目地址: https://gitcode.com/GitHub_Trending/su/Summer2026-Internships…...
pyqt使用QChartView绘制饼状图详解(QPieSeries)
pyqt使用QChartView绘制柱状图一、工程搭建二、QPieSeries详解1、核心概念2、主要功能和方法2.1、QPieSeries 的常用方法2.2、QPieSlice 的常用属性和方法3、关键点解释4、常见问题二、代码示例1、示例代码2、效果展示一、工程搭建 pyqt6QtCharts模块需要单独安装,…...
