【DevOps】Linux 网络命令netstat详解

目录

一、netstat 命令的主要功能

常用 netstat 命令及选项

 二、示例和用法

1. 查看所有连接和监听端口

2. 显示端口和进程信息

3. 使用 netstat 查看路由表

4. 查看接口统计

5. 查看服务和协议的统计信息

6. 持续监控网络状态

7. 组合使用 netstat 选项

8. 其他有用的 netstat 用法

三、结论


netstat(网络统计)是一个强大的命令行工具,常用于检查各种网络相关的统计信息,包括接口统计、路由表、网络连接、监听端口等。这个工具在网络问题诊断和性能分析中非常有用。

一、netstat 命令的主要功能

  • 显示所有连接和监听端口

    • 列出所有端口的状态,包括 TCP 和 UDP 端口。
  • 显示路由表

    • 查看本机的路由表。
  • 显示网络接口信息

    • 查看网络接口的状态,包括每个接口的 IP 地址、MTU、网络流量等。
  • 显示统计信息

    • 提供 TCP、UDP、ICMP 和 IP 等协议的详细统计信息。

常用 netstat 命令及选项

  • -a (all)

    • 显示所有连接和监听端口。这包括 TCP 和 UDP 的所有端口。
  • -t (TCP)

    • 仅显示 TCP 连接。
  • -u (UDP)

    • 仅显示 UDP 连接。
  • -n (numeric)

    • 显示 IP 地址和端口号,不使用域名和服务名。这可以加速显示结果,因为避免了 DNS 解析。
  • -l (listening)

    • 仅显示监听中的服务端口(通常用于查找正在运行的服务器)。
  • -p (program)

    • 显示哪个进程正在监听某个端口。这需要 root 权限来查看非当前用户的进程。
  • -r (routing)

    • 显示路由表。
  • -i (interfaces)

    • 显示网络接口统计信息,如接口状态、MTU、以及发送和接收的数据包数。
  • -s (statistics)

    • 显示协议统计信息,如 TCP、UDP、ICMP 和 IP 的统计数据。
  • -c (continuous)

    • 持续输出选定的信息,通常用于监控网络状态的变化。

 二、示例和用法

以下详细介绍了 netstat 的各种实用示例和用法,这些示例能帮助你更好地理解和使用这个命令。

1. 查看所有连接和监听端口

  • 查看所有连接

    netstat -a
    

    这个命令显示所有的连接和监听端口,包括 TCP 和 UDP。这是检测系统上网络活动的一个快速方式。

  • 查看所有 TCP 连接

    netstat -at
    

    使用 -t 选项来限制输出只显示 TCP 协议的连接。

  • 查看所有 UDP 连接

    netstat -au
    

    使用 -u 选项来限制输出只显示 UDP 协议的连接。

  • 查看所有监听端口

    netstat -l
    

    使用 -l 选项来显示所有处于监听状态的端口,这对于查找所有正在运行的服务特别有用。

  • 查看所有监听的 TCP 端口

    netstat -lt
    

    结合 -l 和 -t 来查看所有监听的 TCP 端口。

  • 查看所有监听的 UDP 端口

    netstat -lu
    

    结合 -l 和 -u 来查看所有监听的 UDP 端口。

2. 显示端口和进程信息

  • 显示监听端口及其服务名称

    netstat -l --tcp --programs --numeric-ports
    

    或简写为

    netstat -ltpn
    

    在这里:

    • -l 表示监听
    • -t 表示 TCP
    • -p 表示显示进程信息
    • -n 表示显示数字形式的端口和 IP 地址
  • 查看谁在监听端口 80

    netstat -lnp | grep ':80'
    

    这对于检查哪个进程 (比如 Web 服务器) 正在使用端口 80 非常有用。

3. 使用 netstat 查看路由表

  • 查看系统路由表

    netstat -r
    

    或者

    netstat -rn
    

    这里 -r 选项表示显示路由表,-n 表示使用数字地址。

4. 查看接口统计

  • 查看网络接口的详细信息

    netstat -i
    

    这将列出所有网络接口及其状态,包括 MTU、数据包统计等。

  • 查看更详细的网络接口信息

    netstat -ie
    

    这里 -e 显示扩展信息,如更多的统计数据。

5. 查看服务和协议的统计信息

  • 查看所有协议的统计信息

    netstat -s
    

    这将显示 TCP、UDP、ICMP 等所有支持的协议的统计信息。

  • 查看 TCP 协议的统计信息

    netstat -st
    

    只显示 TCP 协议的统计信息。

  • 查看 UDP 协议的统计信息

    netstat -su
    

    只显示 UDP 协议的统计信息。

6. 持续监控网络状态

  • 持续报告网络连接状态

    netstat -c
    

    使用 -c 持续输出选定的信息,常用于实时监控网络状态。

7. 组合使用 netstat 选项

  • 查找所有处于 ESTABLISHED 状态的连接

    netstat -atn | grep ESTABLISHED
    

    这里通过组合使用 -a-t-n 并结合 grep 命令,你可以过滤出所有建立了的 TCP 连接。

  • 检查特定服务(如 MySQL)使用的端口

    netstat -tulpn | grep mysql
    

    或者

    netstat -tulpn | grep 3306
    

    这对于找出 MySQL 数据库服务监听的端口非常有用(通常是 3306)。

8. 其他有用的 netstat 用法

  • 查看多播组成员资格

    netstat -g
    

    这将列出网络接口的多播组成员资格信息,对于调试多播问题很有帮助。

  • 列出所有端口,包括监听和非监听状态,以及服务名称

    netstat -atunp
    

    这个命令结合了多个选项,提供了一个全面的网络连接视图。

三、结论

netstat 是一个多功能网络工具,可以提供系统连接、路由表、接口计数器等多样的信息。通过上述示例和用法,你可以有效地监控和诊断网络相关的问题和性能瓶颈。不过,随着 Linux 发展,一些新的工具如 ss 和 ip 命令开始取代 netstat,提供了更高的性能和更多的功能。但在很多系统上,netstat 仍然可用,是理解网络状态的一个重要工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/10509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GEE案例——广东省梅州市梅县区松口镇的梅江横山水灾监测(利用sentinel-1和大津法计算洪水时序面积)

背景 2024年4月5日晚,广东省气象部门发布消息称,4月5日0时到20时,广东中北部出现了暴雨到大暴雨,其中从化吕田累计雨量最大达到225.7毫米。累计降水量达到大暴雨的地方还包括惠州龙门县永汉镇205.2毫米、清远佛冈县水头镇188.6毫米、韶关新丰县梅坑镇174.5毫米、河源东源县…

锐捷EWEB网管系统RCE漏洞

文章目录 免责声明漏洞描述漏洞原理影响版本漏洞复现修复建议 免责声明 该文章只为学习和交流,请不要做违法乱纪的事情,如有与本人无关 漏洞描述 锐捷网管系统是由北京锐捷数据时代科技有限公司开发的新一代基于云的网络管理软件,以"…

哈希表(unordered_set、unordered_map)

文章目录 一、unordered_set、unordered_map的介绍二、哈希表的建立方法2.1闭散列2.2开散列(哈希桶/拉链法) 三、闭散列代码(除留余数法)四、开散列代码(拉链法/哈希桶) 一、unordered_set、unordered_map的…

数据结构之——队列详解

目录 前言: 一、什么是队列 二、队列的实现 2.1 队列结构 2.2 队列初始化 2.3 队列销毁 2.4 入队列 2.5 出队列 2.6 获取队列头部元素 2.7 获取队列尾部元素 2.8 获取队列中有效元素个数 2.9 检测队列是否为空 三、 代码总览 Queue.h test.c 四、例题 前言…

树莓派、ubuntu低版本python3安装库

如果遇到树莓派中自带低版本python3,又不想额外去安装python3时,可能会遇到版本过低,无法安装库的情况,以下用我实际情况举例解决方案。 本次遇到的问题是树莓派低版本中,python3为3.7.3,需要安装numpy&am…

Python专题:八、列表(1)

Python的内置数据类型 数据类型:列表 list类型 可以是字符串,浮点数,整数,列表 列表特性 ①集合性的数据类型 ②列表是有序的 ③列表是可更新的 访问列表元素的方式也是[索引],也是从0开始的,不能超过…

EasyNmon服务器性能监控工具环境搭建

一、安装jdk环境 1、看我这篇博客 https://blog.csdn.net/weixin_54542209/article/details/138704468 二、下载最新easyNmon包 1、下载地址 https://github.com/mzky/easyNmon/releases wget https://github.com/mzky/easyNmon/releases/download/v1.9/easyNmon_AMD64.tar.…

GitLab CI/CD的原理及应用详解(一)

本系列文章简介: 在当今快速变化的软件开发环境中,持续集成(Continuous Integration, CI)和持续交付(Continuous Delivery, CD)已经成为提高软件开发效率、确保代码质量以及快速响应市场需求的重要手段。Gi…

Ansible-inventory和playbook

文章目录 一、inventory 主机清单1、列表表示2、inventory 中的变量3、变量3.1 主机变量3.2 组变量3.3 组嵌套 二、playbook剧本1、playbook的组成2、编写剧本2.1 剧本制作2.2 准备nginx.conf2.3 运行剧本2.4 查看webservers服务器2.5 补充参数 3、剧本定义、引用变量3.1 剧本制…

要将D-SUB电缆连接到工装接口和被测件接口

准备工作: • 确认D-SUB电缆的类型(如DB9、DB25等)与工装接口和被测件接口匹配。 • 检查电缆两端的接口是否完好无损,无弯曲针脚或损坏的屏蔽层。 • 确保工作区域整洁,避免灰尘或异物进入接口。 • 识别接口&…

河源知识付费系统报价,教育机构怎么进行网络推广呢?

中国教育培训领域的市场空间巨大。教育支出在中国已经超过其他生活费用成为仅次于食物的第二大日常支出。做好线上的营销推广成为了各大企业主思索的问题。其实对于教育行业的网络营销推广方式有很多种,其中大部分与其他行业的形式相同。教育机构怎么进行网络推广呢…

kdb 调试内核-延迟驱动加载

说明: 系统在启动过程中,一些要调试的驱动在 "进入kdb 之前" 就已经加载了, 那么,我们就需要延迟 "加载驱动" #define XX_module_platform_driver(__platform_driver) \XX_module_driver(__platform_driver, platform_d…

【Java】高效解决 非降序数组合并 两种方法

欢迎浏览高耳机的博客 希望我们彼此都有更好的收获 感谢三连支持! oj:https://leetcode.cn/problems/merge-sorted-array/submissions/ 合并两个有序数组是个经典问题,它不仅在算法学习中频繁出现,也在实际开发中经常遇到。合并数…

计算机毕业设计】springbootBBS论坛系统

本系统为用户而设计制作 BBS论坛系统,旨在实现BBS论坛智能化、现代化管理。本BBS论坛自动化系统的开发和研制的最终目的是将BBS论坛的运作模式从手工记录数据转变为网络信息查询管理,从而为现代管理人员的使用提供更多的便利和条件。使BBS论坛系统数字化…

ADS基础介绍篇1

一. ADS简介 常用的射频仿真软件有ADS和AWR,ADS(Advanced Design system)最传统,是Agilent公司于2008年推出的电磁场仿真器,可提供原理图设计和layout版图设计。仿真功能十分强大,可提供从无源到有源,从直流到交流&am…

(十一)JSP教程——page对象

page对象用来处理当前请求的JSP页面的实现类的实例,相当于Java类中的this,这个对象在JSP中应用并不是很多。 page对象提供的主要方法及其说明。 getClass()获得对象运行时的类 hashCode ()获得该对象的哈希码值 …

关于 MongoDB 数据库基本操作的详细介绍

MongoDB 是一个基于分布式文件存储的数据库,其设计旨在提供高性能、可扩展性和易用性。以下是关于 MongoDB 数据库基本操作的详细介绍 一、MongoDB 简介 MongoDB 是一个面向文档的数据库,其数据存储在类似 JSON 的 BSON(Binary JSON&#x…

在Chisel3中,不支持对子字(subword)进行赋值。在 Chisel 中,UInt 类型是一个不可变的位宽数据类型,它表示一个固定位宽的无符号整数。

在Chisel3中,不支持对子字(subword)进行赋值。这种设计决策背后的原因涉及到硬件描述语言中类型和数据抽象的最佳实践。 不支持子字赋值的原因 硬件描述的性质: 在硬件设计中,操作和修改单独的位或子字通常与较高的复…

Docker搭建ctfd平台

安装docker和docker-compose (1)安装docker: curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun(2)安装 Docker Compose: yum install docker-compose安装失败参考下面文章 https:/…

stm32——OLED篇

技术笔记! 一、OLED显示屏介绍(了解) 1. OLED显示屏简介 二、OLED驱动原理(熟悉) 1. 驱动OLED驱动芯片的步骤 2. SSD1306工作时序 三、OLED驱动芯片简介(掌握) 1. 常用SSD1306指令 2. …