Linux命令:traceroute命令

目录

  • traceroute
    • 1、简介
    • 2、探测原理
    • 3、traceroute说明
    • 4、实例
      • 设置每跳探测数
      • 设置跳数
      • 探测包使用的基本UDP端口设置6789
      • 把对外发探测包的等待响应时间设置为3秒
  • 总结

traceroute

1、简介

traceroute的主要功能是跟踪从IP网络发送到指定主机经过的网关的工具。它利用IP协议的生存时间(time to live, TTL)字段,并试图从路径上的每个网关引出ICMP TIME_EXCEEDED响应,从而得到探测包到达主机所经过的所有网关。它显示了每个跳的IP地址、主机名(如果配置了反向DNS查找)、延迟(以毫秒为单位),以及到达每个跳的往返时间(RTT)。

2、探测原理

TTL的作用:设置IP数据报被丢弃前,最多能够经过的节点数。
ICMP是 Internet Control Message Protocol 的缩写,即互联网控制消息协议。它是互联网协议族的核心协议之一。它用于 TCP/IP 网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些信息,使网络管理者可以对所发生的问题作出诊断,然后采取适当的措施解决问题。
traceroute的原理主要是利用TTL来实现的。每当数据包经过一个路由器,TTL就会减少1。如果TTL不为0就会向下一个节点转发,如果为0,则会丢弃数据包,并发一个ICMP TTL给原数据包的发出者。
traceroute探测过程:假设TTL设置为N:
在这里插入图片描述

3、traceroute说明

使用:traceroute [ -46dFITnreAUDV ] [ -f first_ttl ] [ -g gate,… ] [ -i device ] [ -m max_ttl ] [ -N squeries ] [ -p port ] [ -t tos ] [ -l flow_label ] [ -w MAX,HERE,NEAR ] [ -q nqueries ] [ -s src_addr ] [ -z sendwait ] [ --fwmark=num ] host [ packetlen ]
选项:

  • -4:使用ipv4
  • -6:使用ipv6
  • -f first_ttl --first=first_ttl:从第一个ttl开始(而不是从1开始)
  • -g gate,… --gateway=gate,…:通过指定网通过指定网关的路由报文(IPv4最多8个,IPv6最多127个)关的路由报文(IPv4最多8个,IPv6最多127个)
  • -I --icmp:使用ICMP ECHO进行跟踪
  • -T --tcp:使用tcp SYN进行跟踪(默认端口是80)
  • -U --udp:使用UDP对应端口进行探测,默认是53
  • -i device --interface=device:指定要操作的网络接口
  • -N squeries --sim-queries=squeries:设置同时尝试探测的数量(默认为16)
  • -n:不解析IP到对应域名
  • -p port:指定要使用的端口
  • -t tos --tos=to:设置IP数据包的类型字段
  • -s src_addr:指定数据包的源地址
  • -q nqueries:设置每跳探测数。默认是3
  • –sport=num:发送报文时使用源端口,默认是”-N 1“
    参数:
  • host:要探测的主机
  • packetlen:完整的数据包长度(默认是IP首部的长度加上40)

4、实例

traceroute www.baidu.com
traceroute to www.baidu.com (153.3.238.102), 30 hops max, 60 byte packets1  _gateway (192.168.92.2)  1.426 ms  1.230 ms  1.137 ms2  * * *3  * * *4  * * *5  * * *6  * * *7  * * *8  * * *9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *
# 说明:输出按序号记录。每一个纪录就是一跳。每行的输出内容如下:
# 1.跃点序号:这是数据包经过的跃点的顺序编号。
# 2.经过的路由/网关
# 3.延迟时间,每一跳默认会进行三次探测,最后三个数字为三次探测的延迟时间。单位是ms
# 如果输出内容是*,可能是防火墙封掉了ICMP的返回信息,也可能是网络出问题了。

设置每跳探测数

traceroute -q 5 www.baidu.com
########
traceroute to www.baidu.com (153.3.238.110), 30 hops max, 60 byte packets1  _gateway (192.168.92.2)  0.994 ms  0.887 ms  0.810 ms  0.736 ms  0.662 ms2  * * * * *3  * * * * *4  * * * * *5  * * * * *6  * * * * *7  * * * * *8  * * * * *9  * * * * *
10  * * * * *
11  * * * * *
12  * * * * *
13  * * * * *
14  * * * * *
15  * * * * *
16  * * * * *
17  * * * * *
18  * * * * *
19  * * * * *
20  * * * * *
21  * * * * *
22  * * * * *
23  * * * * *
24  * * * * *
25  * * * * *
26  * * * * *
27  * * * * *
28  * * * * *
29  * * * * *
30  * * * * *

设置跳数

traceroute -m 5 www.baidu.com
traceroute to www.baidu.com (153.3.238.110), 5 hops max, 60 byte packets1  192.168.92.2 (192.168.92.2)  1.082 ms  0.983 ms  0.944 ms2  * * *3  * * *4  * * *5  * * *

探测包使用的基本UDP端口设置6789

traceroute -p 6789 -m 5 www.baidu.com
traceroute to www.baidu.com (153.3.238.110), 5 hops max, 60 byte packets1  192.168.92.2 (192.168.92.2)  0.564 ms  0.459 ms  0.392 ms2  * * *3  * * *4  * * *5  * * *

把对外发探测包的等待响应时间设置为3秒

traceroute -w 3 -m 5 www.baidu.com
traceroute to www.baidu.com (153.3.238.110), 5 hops max, 60 byte packets1  192.168.92.2 (192.168.92.2)  0.419 ms  0.165 ms  0.060 ms2  * * *3  * * *4  * * *5  * * *

总结

需要注意的是:

  1. traceroute是Linux的命令,如果Windows想要跟踪路由,是tracert命令。
  2. Ubuntu系统默认没有此命令,需要自己安装
  3. 该命令也是工作中常用的排查网络方面的问题

这个是自己的学习内容,基本都是根据 traceroute 的帮助信息进行翻译,如果有不对的地方,欢迎帮忙指正。

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

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

相关文章

5 分钟让你了解什么是搜索引擎

文章目录 搜索引擎概述基于业务模式分类垂直搜索(垂搜)通用搜索(通搜)本地搜索引擎 基于技术实现分类基于关键词的搜索引擎(Keyword-based Search Engine)语义搜索引擎(Semantic Search Engine&…

幻兽帕鲁mac可以玩吗?

《幻兽帕鲁》(英文:Palworld)是一款近期在 Steam 爆红的动作冒险生存游戏,游戏设置在一个居住着「帕鲁」的开放世界中,玩家可以战斗并捕捉帕鲁,也能用它们来建造基地、骑乘和战斗。 不过目前《幻兽帕鲁》仅…

C语言内存函数:memcpy、memcat、memmove介绍和模拟实现(实用性高,建议三连收藏)

目录 1.memcpy函数 1.1函数介绍 1.2函数示范使用 1.3函数的模拟实现 1.4补充 2.memmove函数 2.1函数介绍 2.2函数的使用示范 2.3函数的模拟实现 3.memcmp(内存比较函数) 3.1函数介绍 3.2函数的示范使用,有趣的例子 4.函数补充memset(内存…

【靶场实战】Pikachu靶场RCE漏洞关卡详解

Nx01 系统介绍 Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么Pikachu可能正合你意。 Nx02 RCE漏洞概述 RCE漏洞,可以让攻击者直接向后台…

【Jenkins】配置及使用|参数化|邮件|源码|报表|乱码

目录 一、Jenkins 二、Jenkins环境搭建 1、下载所需的软件包 2、部署步骤 3、其他 三、Jenkins全局设置 (一)Manage Jenkins——Tools系统管理->全局工具配置分别配置JDK、Maven、Allure、Git,可以配置路径或者直接选择版本安装 1…

解决zabbix图像中文乱码

使用zabbix查看监控图像信息,发现会有中文乱码现象。 解决方法如下: 1.拷贝windows文字文件到服务器上 C:\Windows\Fonts目录下拷贝自己需要的中文语言文件 2.修改配置文件 vim /usr/share/zabbix/include/defines.inc.php 81行 define(ZBX_GRAPH_F…

zookeeper搭建(单机模式和集群模式)

目录 单机模式: 集群搭建: 单机模式: 1.新建data和logs目录(data目录用来存放数据库快照,logs目录用来存放日志文件) [rootmaster dev]# mkdir -p /home/apps/zookeeper/data [rootmaster dev]# mkdir -p /home/apps/zookeeper/…

新数据不影响原来的数据

问题描述 新数据修改时,原来的数据也会受影响 const obj1 ref({ name: slx, age: 20 })const obj2 obj1obj2.value.name hhhhconsole.log(obj1, obj1.value)console.log(obj2, obj2.value)解决方法 (仅适用于对象 在这段代码中,obj1 和 obj2 指向同…

【Python基础】文件详解(文件基础、csv文件、时间处理、目录处理、excel文件、jsonpicke、ini配置文件)

文章目录 (一)文件详解1 快速入门文件操作1.1 快速实现文件读取1.2 快速实现文件写入 2 文件打开方式详解2.1 open方法2.2 打开方式2.3 文件读写操作2.3.1 基本读写2.3.2 读写方式打开2.3.3 实现重复读取 3 文件编码问题4 文件读写方法4.1 文件读取方式4…

【PTA编程题】7-1 保持链表有序

对于输入的若干学生的信息,按学号顺序从小到大建立有序链表,最后遍历链表,并按顺序输出学生信息。 输入格式: 首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据首先输入一个正整数n&#xf…

IT行业证书的获取与价值:提升职业竞争力的关键

目录 IT行业证书的价值和作用 1. Cisco(思科)认证(如CCNA、CCNP、CCIE): 2. 微软认证(如MCSA、MCSE、MCSD): 3. 计算机网络技术(CompTIA Network、CompTIA Security&a…

《汇编语言》- 读书笔记 - 各章检测点归档

《汇编语言》- 读书笔记 - 各章检测点归档 检测点 1.1检测点 2.1检测点 2.2检测点 2.3检测点 3.1检测点 3.2检测点 6.1检测点 9.1 检测点 1.1 1个CPU 的寻址能力为8KB,那么它的地址总线的宽度为 13 。 解:8KB 8192B 213 1KB的存储器有 10…

构建高效直播美颜系统:美颜SDK集成与性能优化指南

如今,美颜技术的广泛应用成为各类直播平台的标配之一。今天,小编将与大家进一步讨论如何构建高效的直播美颜系统,重点关注美颜SDK的集成和性能优化方面。 一、美颜SDK的选择与集成 选择合适的美颜SDK是构建高效直播美颜系统的第一步。不同的…

MATLAB频域分析(附完整代码)

1. MATLAB进行频域分析举例 以下是一个使用MATLAB进行频域分析的例子。在这个例子中,我们将生成一个含有两个不同频率分量的信号,然后使用快速傅里叶变换(FFT)来分析其频域特性。 main.m文件 clc;close all;clear all;warning of…

12. onnx转为rknn测试时有很多重叠框的修改(python)

我们下载rknn-toolkit2-master后并进行前面的处理后,进入到rknn-toolkit2-master\examples\onnx\yolov5文件夹,里面有个test.py文件,打开该文件,其代码如下: # -*- coding: utf-8 -*- # coding:utf-8import os import…

msvcp120.dll丢失如何解决/找不到msvcp120.dll的5种有效的解决方法

在计算机系统运行过程中,如果遇到“找不到msvcp120.dll”的提示信息,这代表了何种具体状况呢?首先,我们需要明确msvcp120.dll文件的重要性。msvcp120.dll是Microsoft Visual C Redistributable Package的一部分,这是一…

工作与生活平衡:在生活中寻找和谐

工作和生活是我们生活中不断交织的两个重要方面。对许多人来说,找到两者之间的完美平衡已经成为一个持久的挑战。然而,与其专注于平衡,更重要的是要认识到工作和生活并不是可以相互平衡的两个分离实体,而是一个相互影响的循环。正…

[word] word小数点对齐怎么设置 #微信#其他#其他

word小数点对齐怎么设置 使用Word编辑文档的时候,如果有小技巧的话,可以解决很多遇到的问题,也让工作更高效的完成,下面给大家分享word小数点对齐怎么设置的小技巧。 1、设置格式 选中内容,点击段落一一制表符&#…

扩展鸿蒙textinput组件

扩展鸿蒙textinput组件,支持快速扩展展性,标题文本等,文本内容双向绑定、文本组件快速复用。 组件代码 /*** 单选文本*/ Component export default struct DiygwInput{//绑定的值Link value:string;//未选中图标State labelImg: Resource …

探索虚拟与增强现实的无限可能:塑造未来的生活体验

美国当地时间2月2日,苹果首款头显Vision Pro正式上市,当天,在员工高喊“AVP(Apple Vision Pro)”呼声中,苹果首席执行官蒂姆‧库克(Tim Cook)在位于纽约曼哈顿第五大道的苹果旗舰店开…