当前位置: 首页 > news >正文

Linux系统网络排查工具总结

在Linux系统中,网络排查工具是系统管理、开发和运维的核心组件,主要用于诊断网络连通性问题、分析流量、测试性能及监控路由状态。工具选择应优先考虑功能的现代性,并结合实际需求使用。

1. 查看网络状态与接口信息

此类工具用于获取当前设备网络配置、接口状态及路由表信息:

  • ip命令:功能全面的基础工具,用于查看和管理网络接口、IP地址分配(如IPv4/IPv6)和路由表。常用语法如 ip addr show(查看所有接口)或 ip route(查看路由)。

         ip route show (或 ip r)

         功能:查看系统的路由表,确认默认网关和静态路由是否正确。

# 查看默认网关
ip route show default

        ip route get   <IP>

        功能: 查看访问特定IP地址时会走哪条路由。

ip route get 8.8.8.8

  • ss命令(netstat命令):高效替代netstat的工具,用于显示当前套接字连接状态,支持参数如 -t(TCP连接)、-u(UDP连接)或 -l(监听端口)。
  • route命令:查看和修改路由表信息,适用于诊断路由路径问题。
  • hostname命令:快速查询主机名称,用于标识设备在本地网络中的位置。

2. 网络连通性测试

用于检测两点间网络可达性及路径延迟:

  • ping命令:发送ICMP包测试目标主机是否可达,常用于检测基本连通性,支持参数如 -c 4(指定发送4个数据包)。
  • telnet命令用于通过 明文传输 的方式实现远程登录或测试网络服务的可达性。
  • nc命令Linux 中功能强大的网络调试和数据传输工具,被誉为“网络瑞士军刀”。
  • traceroute命令:追踪数据包从本地到目标主机的路由路径,识别中间跳点的延迟或失效节点(在Linux下通常使用ICMP或UDP)。
  • mtr命令:结合pingtraceroute功能,提供实时往返时间(RTT)及丢包率统计,适用于持续监控路由质量(如:mtr baidu.com)。
  • tracepath命令普通用户即可用,快速定位路由路径异常(如节点阻塞、高延迟)及 MTU 相关传输问题。

3. 流量捕获与分析

用于深度抓取和分析网络流量,诊断协议级故障:

  • tcpdump命令:命令行流量捕获工具,可抓取传入/传出包并过滤特定协议(如TCP/UDP)、端口或IP地址。常用参数包括 -i eth0(指定接口)和 -q(精简输出格式)。
  • Wireshark:图形化流量分析工具,支持协议解码、深度包检测(DPI),适用于复杂协议调试。

4. DNS解析与诊断

解决域名解析相关问题:

  • dig命令:提供详细的DNS查询信息(如A记录、MX记录),支持参数 +trace(追踪解析路径)。
  • nslookup命令:基础DNS查询工具,快速检查域名对应IP地址(如 nslookup example.com)。
  • host命令进行DNS反向或正向查询。

5. 网络扫描与性能监控

用于探测主机服务状态及带宽使用:

  • nmap:端口扫描工具,检测开放端口、运行服务及主机存活状态(如 nmap -sS target-ip 执行TCP SYN扫描)。
  • nload:实时监控网络接口带宽使用率(如 nload eth0),支持图表化显示。

6. 其他常用工具

补充工具解决特定场景问题:

  • iftop或iptraf:流量监控工具,可视化网络流量流向和速率。
  • mockoon:模拟API服务的工具,测试网络接口响应。

7. 使用建议

  • 优先工具:日常排查以 ipping、telnet、tcpdump 和 ss 为基础;mtr 和 dig 用于高级诊断。
  • 注意事项:现代系统建议避免过时命令(如ifconfignetstat),改用ipss以确保兼容性和性能;性能监控工具如nload可结合cron定时任务。
  • 最佳实践:从基础连通性测试(如ping)开始,逐步使用流量抓取(tcpdump)或路径追踪(mtr)定位深层故障。
http://www.dtcms.com/a/336951.html

相关文章:

  • org.apache.kafka.clients 和 org.springframework.kafka 的区别
  • kafka 发送消息有哪些模式?各自的应用场景是什么?
  • Elasticsearch全文检索中文分词:IK分词器详解与Docker环境集成
  • AI编程工具对决:Kilo vs Augment 开发Flutter俄罗斯方块游戏实战对比
  • 【AI论文】UI-Venus技术报告:借助强化微调(RFT)打造高性能用户界面(UI)代理
  • 手写Spring容器核心原理
  • 加密资产投资的六种策略:稳定币合规后的 Web3 投资和 RWA
  • 杂记 05
  • ARM 架构简明教程学习笔记
  • 微信原生小程序的一次gulp构建
  • DevExtreme Angular UI控件更新:引入全新严格类型配置组件
  • Kafka的ISR、OSR、AR详解
  • Rust学习笔记(六)|Rust 中的常用集合(Vector、String、HashMap)
  • Linux网络服务(一)——计算机网络参考模型与子网划分
  • 计算机网络:2、TCP和UDP
  • Golang context
  • CentOS 7 LAMP快速部署WordPress指南
  • 云原生Ansible渗透场景(⾃动化的运维⼯具)
  • Ansible企业及实战
  • OVS:除了Geneve和VXLAN,还有哪些虚拟化网络协议?
  • 云计算:企业数字化转型的核心引擎
  • 传统方式部署(RuoYi-Cloud)微服务
  • 一套GoldenGate → Kafka → Flink → MySQL 的端到端增量同步方案
  • 云计算学习100天-第17天
  • Linux学习-(进程间,线程间通信)
  • nuScence数据集
  • 计算机视觉 图像处理 在两张二值图中检测线条交集点的高效方法 适合工程图纸比对、生物神经元网络分析和文档特征提取等场景 ,
  • 20. 云计算-Service MeshServerless
  • 谷粒商城项目-P3简介-分布式基础概念
  • CloudBase AI ToolKit + VSCode Copilot:打造高效智能云端开发新体验