Skip to main content

Command Palette

Search for a command to run...

Linux下网络管理常用工具

Updated
Linux下网络管理常用工具

ip

Ip工具可以查看当台主机的一些基本信息。

场景

  • 查看基本信息:查看网络接口、mtu等。

  • 查看docker虚拟网络相关信息

Ping

ping 是 Linux 下一个非常常用且基础的网络工具,用于测试网络连接的可达性。

场景

  • 测试网络连通性: 判断本机是否能够到达目标主机。分别ping lo地址、本机对外地址、gateway地址、公网地址,可以一步一步的进行问题的排查。

  • 测量网络性能: 查看RTT、丢包等信息,即数据包从发送到接收到回复所花费的时间。

  • 域名解析验证: 当使用域名作为目标时,ping 命令会先解析域名为 IP 地址,可以间接验证 DNS 解析是否正常。

  • 压测:ping 可以使用-f 进行Flood ping,可以配合-s(设置package size)来进行简单的对目标主机的压测。

Dig

Dig是 Linux 命令行下用于查询 DNS信息的强大工具。dig 允许用户直接与 DNS 服务器交互,查询各种 DNS 记录,并显示从服务器返回的详细信息。

场景

  • 检查域名是否能够被解析:这是dig最基本的功能,通过查询 A、AAAA、CNAME 等记录,可以确认域名是否在 DNS 系统中存在并指向正确的 IP 地址或别名。

  • 查看DNS解析信息:包括DNS解析时长、最大超时时间等。

  • 检查指定的 DNS 服务器是否正常工作:可以通过指定不同的 DNS 服务器进行查询,判断特定的 DNS 服务器是否响应查询或返回正确的结果。

  • 检查DNS 记录是否正确传播:在 DNS 记录更新后,可以使用 dig 查询不同的 DNS 服务器,检查新的记录是否已经在全球范围内生效。

  • 查看DNS解析过程:DNS 缓存问题可能导致用户无法访问某些网站。使用 dig 的 +trace 选项可以帮助跟踪 DNS 解析过程,查找可能的缓存问题。

  • 查看DNS策略是否生效:dig baidu.com的时候可以发现有两个ip地址,可以通过dig来查看DNS 配置策略状态。

nmap

namp是一个网络扫描工具,主要用于发现网络上的主机、探测开放的端口、识别运行的服务以及操作系统类型等。

场景

  • 端口扫描:扫描主机的端口,查看是否开放,可以指定全连接或半连接扫描。

  • 网段范围的主机探测:本质上是ping命令,但是可以指定范围,通过ip ranges来进行主机的存活探测。

  • Flood Testing:基本原理同ping。

  • 暴力破解测试:不细说。

  • 检测远程主机OS信息(估测):原理是根据一些网络协议信息进行os版本的推测。

netstat & ss

netstat

netstat 用于显示 Linux 系统上的网络连接、路由表、接口统计信息、伪装连接、多播成员关系等。它提供了一个实时的网络活动快照,对于监控网络状态、诊断网络问题以及了解系统上的网络配置非常有用。

ss

ss 是另一个用于显示 Linux 系统上的套接字统计信息的命令行工具。它被认为是 netstat 的现代替代品,能够显示更多的 TCP 和套接字信息。两个工具在功能上有一些重叠。

场景

  • 查看所有活动的网络连接:显示所有 TCP 和 UDP 连接,以及正在监听的端口;查找占用特定端口的服务。

  • 查看套接字相关信息:包括 TCP 窗口大小、拥塞控制算法等。

traceroute

traceroute 是一个网络诊断工具,用于跟踪数据包从计算机到目标主机所经过的路由(路径)。

场景

  • 诊断网络连接问题:无法访问某个网站或服务时,traceroute 可以帮助确定问题出在本地网络、ISP 网络还是目标服务器的网络路径上。

  • 识别网络瓶颈:观察每个跃点的延迟,可以找到网络中可能导致速度缓慢的瓶颈节点。

speedtest-cli

一个简单的网络测试工具,可以快速获取最近的网络测试节点并且测试网速。

Vnstat

Vnstat 是一个轻量级的命令行网络流量监控工具。它在后台运行,记录网络接口的接收和发送数据量,并提供各种报告,记录网络的历史使用情况。

场景

  • 网卡流量监控:基于proc,针对网卡的流量监控,可以分时进行查询,还可以导出图片进行分析。

nethogs

类似于 top 命令,但专注于按进程实时显示网络带宽使用情况。它可以让你看到哪个进程正在消耗最多的上传和下载带宽。缺点就是不能够查询一些内核级别的进程的通信信息。

场景

  • 网卡实时流量监控:针对网卡的实时流量监控,可以达到进程级别。

iftop

实时监控网络接口的带宽使用情况,但它按网络连接(主机对)显示流量,并尝试解析主机名。可以查看哪些主机之间正在进行大量的网络通信。

  • 实时流量监控:针对主机级别的实时流量监控,和nethogs有点类似。

wireshark

一个强大的网络分析可视化工具。

  • 详细分析网络协议: 可以深入分析 TCP/IP 协议栈的各个层次,查看每个数据包的详细头部信息和数据内容。

  • 性能分析: 分析网络延迟、丢包、重传等性能指标,帮助优化网络性能。

tcpdump

一个命令行抓包工具。它可以捕获指定接口上的网络数据包,并将数据包信息输出到终端或保存到文件中。

  • 作为数据源: tcpdump 的一个常用的用处就是将dump下的数据导入到wireshark中进行详细分析。tcpdump可以快速抓取数据包。

  • 数据分析:可以进行一些简单的数据分析,当然可视化方面还是wireshark比较好。

bcc

BCC 是一个围绕 eBPF 构建的强大工具包,里面有很多关于网络抓包的工具。

没有接触过,皓哥这里有详细的介绍:https://coolshell.cn/articles/22320.html

Reference

More from this blog

Go 隐式接口与模板方法

前言 今天在使用testify框架写单元测试的时候有这样一个需求: 对于一个方法来说,可能会有很长的上下文链路数据。 按照正常的单元测试流程,这个时候我们需要按照接口的逻辑来事先mock好原始未处理的数据,并且定义最终想要的数据结果。定义好不同的test case 尽可能的覆盖到每一个if else,才可以通过后续的ci 流程。 对于一些特殊的case,我们需要一些特殊的操作: 测试前置处理-> 运行测试代码 -> 测试后处理 需要在测试前后对数据进行预处理,如:事先存入一些数据,测试后再删除...

Nov 13, 2025
Go 隐式接口与模板方法

一次Nginx 403 的问题排查

前言&问题复现 参与了一个内部效率提升项目(边角料项目)后要发到内部的测试机器上。内部的测试机器上并没有配置集群,没有一个专门的ingress或者说是网关来处理请求分发。 并且这个测试机器属于多个部门,导致机器环境很复杂,一台物理机安装有多个nginx,有直接host安装的,也有在容器上运行的。 由于这是一个内部项目,没有必要专门部署一个minio,but 项目需要上传文件,所以就直接保存在server的目录下,简单配置了一下nginx的配置,配置如下: location /static...

Oct 18, 2025
一次Nginx 403 的问题排查

[Learn With Agent] JSX & React Components

前言 这是Learn With Agent 的第一篇博客,这个系列(不知道有没有后续了)是想通过agent辅助进行快速的学习(过概念)掌握一些相关的知识。之后再通过agent辅助开发,应该也能做出来个7788。对于AI还有很多思考,另起一个博客再说吧就。 因为网络和经费原因,这里使用的是CC+GLM 4.6 & Gemini 系列。🈚️广,文字为百分百人类手敲&传统CV大法。 JSX JSX是React生态中占据很重要的部分,JSX是一种语法拓展,它可以允许用户在js中写类似html的标签结构...

Oct 9, 2025
[Learn With Agent] JSX & React Components

提示词以及常见优化技巧

prompt 种类 system : 系统提示词用于统一设定当前会话下ai的行为,例如设定ai的行为、语气、风格或限制。用户不会显式观察到系统提示词,但是会影响到用户和ai的后续对话。 user : 这是用户实际向ai提出的问题,这是对话的起点。 assistant: 这是ai对于用户问题的回答,通常也会被添加到上下文中,供下一次对话进行参考,所以也属于prompt的范畴。 prompt 格式 标准格式: <Instruction> 问答格式: <Question>? 零样本提示 ...

Aug 14, 2025
提示词以及常见优化技巧

Http 长连接 & 短连接详解

网络连接基础 TCP/IP TCP/IP,是几乎所有互联网通信的基石。HTTP、WebSocket 和 常见的RPC框架尽管功能各异,但都运行在应用层,并从根本上依赖传输层的 TCP(传输控制协议)来实现可靠的、面向连接的数据传输 。 TCP 的核心职责是确保数据包从发送端到接收端可靠、按序且无损地传输 。这包括序列号、确认、流量控制和拥塞控制等机制。在网络层,IP(互联网协议)负责网络路由和寻址,使数据能够跨越不同网络到达其目的地 。现代操作系统普遍内置并管理 TCP/IP 协议栈,从而为应用...

Jun 13, 2025
E

Ekreke's Blog

11 posts