百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

在CentOS上使用Ping、traceroute、mtr进行网络测试

nanshan 2024-11-25 15:27 17 浏览 0 评论

本文基于CentOS平台,介绍如何使用Ping、traceroute、mtr三个工具进行网络测试的具体方法。

1、ping

ping命令用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

语法

ping [选项] [参数]

选项

-d:使用Socket的SO_DEBUG功能;

-c<完成次数>:设置完成要求回应的次数;

-f: 极限检测;

-i<间隔秒数>:指定收发信息的间隔时间;

-I<网络界面>:使用指定的网络界面送出数据包;

-l<前置载入>:设置在送出要求信息之前,先行发出的数据包;

-n:只输出数值;

-p<范本样式>:设置填满数据包的范本样式;

-q:不显示指令执行过程,开头和结尾的相关信息除外;

-r:忽略普通的Routing Table,直接将数据包送到远端主机上;

-R:记录路由过程;

-s<数据包大小>:设置数据包的大小;

-t<存活数值>:设置存活数值TTL的大小;

-v:详细显示指令的执行过程。

参数

目的主机:指定发送ICMP报文的目的主机。

示例

#测试对www.baidu.com的连通性,测试2次,每次间隔10秒,只输出数值

[root@CentOS7TeachBasic ~]# ping www.baidu.com -c 2 -i 10 -n

PING www.wshifen.com (104.193.88.77) 56(84) bytes of data.

64 bytes from 104.193.88.77: icmp_seq=1 ttl=48 time=232 ms

64 bytes from 104.193.88.77: icmp_seq=2 ttl=48 time=257 ms

--- www.wshifen.com ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 10013ms

rtt min/avg/max/mdev = 232.114/244.563/257.013/12.459 ms

#测试对www.baidu.com的连通性,极限测试模式,数据包为1024bytes,测试100次,不显示过程

[root@CentOS7TeachBasic ~]# ping www.baidu.com -f -s 1024 -c 100 -q

PING www.wshifen.com (103.235.46.39) 1024(1052) bytes of data.

--- www.wshifen.com ping statistics ---

#在极限测试模式下,30%报文丢失

100 packets transmitted, 70 received, 30% packet loss, time 1280ms

rtt min/avg/max/mdev = 390.331/395.282/398.494/2.238 ms, pipe 35, ipg/ewma 12.931/393.647 ms

2 traceroute

traceroute命令用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。

通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。

traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其ip地址。

语法

traceroute [选项] [参数]

选项

-d:使用Socket层级的排错功能;

-f<存活数值>:设置第一个检测数据包的存活数值TTL的大小;

-F:设置勿离断位;

-g<网关>:设置来源路由网关,最多可设置8个;

-i<网络界面>:使用指定的网络界面送出数据包;

-I:使用ICMP回应取代UDP资料信息;

-m<存活数值>:设置检测数据包的最大存活数值TTL的大小;

-n:直接使用IP地址而非主机名称;

-p<通信端口>:设置UDP传输协议的通信端口;

-r:忽略普通的Routing Table,直接将数据包送到远端主机上。

-s<来源地址>:设置本地主机送出数据包的IP地址;

-t<服务类型>:设置检测数据包的TOS数值;

-v:详细显示指令的执行过程;

-w<超时秒数>:设置等待远端主机回报的时间;

-x:开启或关闭数据包的正确性检验。

参数

主机:指定目的主机IP地址或主机名。

示例

#CentOS 7/8需要使用yum工具安装后方可使用

[root@CentOS7TeachBasic ~]# yum install traceroute

已加载插件:fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirror.bit.edu.cn

 * extras: mirror.bit.edu.cn

 * updates: mirror.bit.edu.cn

#此处省略了过程信息

已安装:

  traceroute.x86_64 3:2.0.22-2.el7   

完毕!

#测试从当前计算机到linux.xg.hactcm.edu.cn主机的通信路径

[root@CentOS7TeachBasic ~]# traceroute linux.xg.hactcm.edu.cn

traceroute to linux.xg.hactcm.edu.cn (211.69.33.161), 30 hops max, 60 byte packets

 1  gateway (172.16.123.1)  1.587 ms  1.755 ms  2.498 ms

 2  192.168.179.1 (192.168.179.1)  3.004 ms  2.977 ms  3.004 ms

 3  10.0.1.18 (10.0.1.18)  2.820 ms  2.943 ms  2.916 ms

#由于防火墙阻隔,测试信息没有返回报文

3 mtr

mtr是Linux操作系统中的网络诊断工具,结合了ping、traceroute、nslookup的相关特性,使管理员能够诊断和隔离网络错误,并向上游提供商提供网络状态报告。

语法

mtr [选项] [参数]

选项

-h:提供帮助命令

-v:显示mtr的版本信息

-r:报告模式显示

-s:用来指定ping数据包的大小

--no-dns:不对IP地址做域名解析

-a:数据包的发送IP地址

-i:ICMP返回之间的时间间隔,默认是1秒

-4:IPv4

-6:IPv6

参数

主机:指定目的主机IP地址或主机名。

示例

#CentOS 7/8需要使用yum工具安装后方可使用

[root@CentOS7TeachBasic ~]# yum install mtr

已加载插件:fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirror.bit.edu.cn

 * extras: mirror.bit.edu.cn

 * updates: mirror.bit.edu.cn

正在解决依赖关系

--> 正在检查事务

---> 软件包 mtr.x86_64.2.0.85-7.el7 将被 安装

--> 解决依赖关系完成

#此处省略了过程信息

已安装:

mtr.x86_64 2:0.85-7.el7

完毕!

#mtr通过tcp测试对linux.xg.hactcm.edu.cn的连通性,每秒发送50个数据包,以报告模式显示

[root@CentOS7TeachBasic ~]# mtr --tcp -rwc 50 linux.xg.hactcm.edu.cn
Start: Fri Mar 13 18:47:48 2020
HOST: CentOS7TeachBasic     Loss%   Snt        Last        Avg         Best        Wrst        StDev
  1.|-- gateway           60.0%    50        7018.        2758.        1.5        7025.        3282.2
  2.|-- 192.168.179.1      0.0%    50        1003.        183.1        1.9        1007.        388.9
  3.|-- 10.0.1.18          0.0%    50        2.9        2.5        1.9        3.7        0.1
  4.|-- 10.0.1.29          0.0%    50        5.0        10.4        5.0        134.1        19.7
  5.|-- 211.69.33.161      0.0%    50        2.6        67.7        2.2        89.5        30.5

# Loss%列:显示每跳的丢包百分比

# Snt列:计算发送的数据包数

# Last列:最后发送的数据包的延时

# Avg列:所有数据包的平均延时

# Best列:所有数据包中最短的延时

# Wrst列:所有数据包中最长的延时

# StDev列:延迟标准偏差。标准差越大,延迟测量之间的差异越大。

# Last、Avg、Best、Wrst列的单位是毫秒

#由于防火墙阻断icmp等通信,使用tcp进行测试动态测试

#[root@CentOS7TeachBasic ~]# mtr --tcp linux.xg.hactcm.edu.cn

相关推荐

0722-6.2.0-如何在RedHat7.2使用rpm安装CDH(无CM)

文档编写目的在前面的文档中,介绍了在有CM和无CM两种情况下使用rpm方式安装CDH5.10.0,本文档将介绍如何在无CM的情况下使用rpm方式安装CDH6.2.0,与之前安装C5进行对比。环境介绍:...

ARM64 平台基于 openEuler + iSula 环境部署 Kubernetes

为什么要在arm64平台上部署Kubernetes,而且还是鲲鹏920的架构。说来话长。。。此处省略5000字。介绍下系统信息;o架构:鲲鹏920(Kunpeng920)oOS:ope...

生产环境starrocks 3.1存算一体集群部署

集群规划FE:节点主要负责元数据管理、客户端连接管理、查询计划和查询调度。>3节点。BE:节点负责数据存储和SQL执行。>3节点。CN:无存储功能能的BE。环境准备CPU检查JDK...

在CentOS上添加swap虚拟内存并设置优先级

现如今很多云服务器都会自己配置好虚拟内存,当然也有很多没有配置虚拟内存的,虚拟内存可以让我们的低配服务器使用更多的内存,可以减少很多硬件成本,比如我们运行很多服务的时候,内存常常会满,当配置了虚拟内存...

国产深度(deepin)操作系统优化指南

1.升级内核随着deepin版本的更新,会自动升级系统内核,但是我们依旧可以通过命令行手动升级内核,以获取更好的性能和更多的硬件支持。具体操作:-添加PPAs使用以下命令添加PPAs:```...

postgresql-15.4 多节点主从(读写分离)

1、下载软件[root@TX-CN-PostgreSQL01-252software]#wgethttps://ftp.postgresql.org/pub/source/v15.4/postg...

Docker 容器 Java 服务内存与 GC 优化实施方案

一、设置Docker容器内存限制(生产环境建议)1.查看宿主机可用内存bashfree-h#示例输出(假设宿主机剩余16GB可用内存)#Mem:64G...

虚拟内存设置、解决linux内存不够问题

虚拟内存设置(解决linux内存不够情况)背景介绍  Memory指机器物理内存,读写速度低于CPU一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存...

Elasticsearch性能调优(5):服务器配置选择

在选择elasticsearch服务器时,要尽可能地选择与当前业务量相匹配的服务器。如果服务器配置太低,则意味着需要更多的节点来满足需求,一个集群的节点太多时会增加集群管理的成本。如果服务器配置太高,...

Es如何落地

一、配置准备节点类型CPU内存硬盘网络机器数操作系统data节点16C64G2000G本地SSD所有es同一可用区3(ecs)Centos7master节点2C8G200G云SSD所有es同一可用区...

针对Linux内存管理知识学习总结

现在的服务器大部分都是运行在Linux上面的,所以,作为一个程序员有必要简单地了解一下系统是如何运行的。对于内存部分需要知道:地址映射内存管理的方式缺页异常先来看一些基本的知识,在进程看来,内存分为内...

MySQL进阶之性能优化

概述MySQL的性能优化,包括了服务器硬件优化、操作系统的优化、MySQL数据库配置优化、数据库表设计的优化、SQL语句优化等5个方面的优化。在进行优化之前,需要先掌握性能分析的思路和方法,找出问题,...

Linux Cgroups(Control Groups)原理

LinuxCgroups(ControlGroups)是内核提供的资源分配、限制和监控机制,通过层级化进程分组实现资源的精细化控制。以下从核心原理、操作示例和版本演进三方面详细分析:一、核心原理与...

linux 常用性能优化参数及理解

1.优化内核相关参数配置文件/etc/sysctl.conf配置方法直接将参数添加进文件每条一行.sysctl-a可以查看默认配置sysctl-p执行并检测是否有错误例如设置错了参数:[roo...

如何在 Linux 中使用 Sysctl 命令?

sysctl是一个用于配置和查询Linux内核参数的命令行工具。它通过与/proc/sys虚拟文件系统交互,允许用户在运行时动态修改内核参数。这些参数控制着系统的各种行为,包括网络设置、文件...

取消回复欢迎 发表评论: