Tracert(traceroute)&Ping 工作原理分析

Tracert(traceroute)&Ping 工作原理分析一、tracert工作过程分析Tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。首先,tracert送出一个TTL是1的IP数据包到目的地,当路径上的第一个路由器收到这个数据包时,它将TTL减1。此时,TTL变为0,所以该路由器会将此数据包丢掉,并送回一个「ICMPtimeexceeded」消息(

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、tracert工作过程分析

Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。

首先,tracert送出一个TTL1IP 数据包到目的地,当路径上的第一个路由器收到这个数据包时,它将TTL1。此时,TTL变为0,所以该路由器会将此数据包丢掉,并送回一个「ICMP time exceeded」消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),tracert 收到这个消息后,便知道这个路由器存在于这个路径上,接着tracert 再送出另一个TTL2 的数据包,发现第2 个路由器…… tracert 每次将送出的数据包的TTL 1来发现另一个路由器,这个重复的动作一直持续到某个数据包 抵达目的地。当数据包到达目的地后,该主机则不会送回ICMP time exceeded消息,一旦到达目的地,由于tracert通过UDP数据包向不常见端口(30000以上)发送数据包,因此会收到「ICMP port unreachable」消息,故可判断到达目的地。

tracert 有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP TTL到期消息的响应。然后,TracertTTL记数器加1,继续进行。

Tracert(traceroute)&Ping 工作原理分析

                                                                                     图4-5-1 Tracert命令

Tracert(traceroute)&Ping 工作原理分析

                                                                                        图4-5-2 Tracert发送的数据包 (TTL递增顺序)

Tracert(traceroute)&Ping 工作原理分析

4-5-3 Tracert接收的数据包

二、ping 工作过程分析

PING (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP echo请求消息给目的地并报告是否收到所希望的ICMP echo (ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令。原理:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少

反馈信息(百度百科)

Request timed out
a.对方已关机
b.对方与自己不在同一网段内,通过路由也无法找到对方
c.对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置)
怎样知道对方是存在,还是不存在呢,可以用带参数 -a 的Ping命令探测对方,如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。
d.错误设置IP地址
Destination host Unreachable
对方与自己不在同一网段内,而自己又未设置默认的路由,或者网络上根本没有这个地址,比如上例中A机中不设定默认的路由,运行Ping 192.168.1.4就会出现“Destination host Unreachable”。
网线出了故障
这里要说明一下“destination host unreachable”和 “time out”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“time out”,如果路由表中连到达目标的路由都没有,那就会出现“destination host unreachable”。
Bad IP address
这个信息表示您可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是IP地址不存在。
Source quench received
这个信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。
Unknown host——不知名主机
这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成IP地址。故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。
No answer——无响应
这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的
路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
Ping 127.0.0.1:127.0.0.1是本地循环地址
如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作。
no rout to host:网卡工作不正常
transmit failed,error code:10043网卡驱动不正常
unknown host nameDNS配置不正确

参数详解

-a 解析计算机NetBios名。

-n count 发送count指定的Echo数据包数

-l size . 定义echo数据包大小

-f 在数据包中发送“不要分段”标志

-i TTL 指定TTL值在对方的系统里停留的时间

-r count 在“记录路由”字段中记录传出和返回数据包的路由

-w timeout 指定超时间隔,单位为毫秒

-t–连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断

-j host-list 利用 computer-list 指定的计算机列表路由数据包。

Tracert(traceroute)&Ping 工作原理分析

                                                                                                                  图4-5-4 ping数据包

结果分析:

这里发送4个ping数据包,wireshark也是抓到8个数据包,其中包含请求与响应数据包

Tracert(traceroute)&Ping 工作原理分析

                                                                                                           图4-5-5 ping分片重组数据包

结果分析:这里使用命令:ping www.tasfa.cn -l 30000 -n 1 即发送一个大小为30000字节的ICMP数据包(Ping);由于每个数据包最大数目为1514(1514bytes = 1480(icmp数据) + 20(ip头) +14(以太网))所以需要分片重组,由图4-5-5可知ip数据包在#25重组。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189841.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2.6 从JSON数据源导入数据

    2.6 从JSON数据源导入数据2.6从JSON数据源导入数据1、如何读取json格式的数据在开始之前,需要安装requests模块案例:读取并解析GitHub(http://github.com)网站的最近活动时间表2、操作步骤指定GitHubURL来读取JSON格式数据使用requests模块访问指定的URL,并获取内容读取内容并将之转化为JSON格式的对象迭代访问JSON对象3、代码实现importrequestsimportjsonurl=’https://github.com/ti

    2022年6月19日
    26
  • java游戏开发实例,吐血整理「建议收藏」

    java游戏开发实例,吐血整理「建议收藏」专题1:JavaOOP1、什么是B/S架构?什么是C/S架构2、Java都有哪些开发平台?3、什么是JDK?什么是JRE?4、Java语言有哪些特点5、面向对象和面向过程的区别6、什么是数据结构?7、Java的数据结构有哪些?8、什么是OOP?9、类与对象的关系?10、Java中有几种数据类型11、标识符的命名规则。12、instanceof关键字的作用13、什么是隐式转换,什么是显式转换14、Char类型能不能转成int类

    2022年7月7日
    42
  • 关于UNPIVOT 操作符

    关于UNPIVOT 操作符

    2021年11月25日
    40
  • 什么样的黑客能用python盗QQ号[通俗易懂]

    什么样的黑客能用python盗QQ号[通俗易懂]目录一科普二、为何Python会被选用为黑客语言呢?三、Python对于黑客攻击的优点四、Python对于黑客攻击用途五、那么,Python难学么?六、精通Python需要多长时间?七、Python主要应用领域有哪些?一科普注:以下“爬虫”均指“垂直爬虫”1.非爬虫方向的技术转行做爬虫是否可行?可行,而且有一定的基础会很容易上手,至于深入的部分就看自己了。2.非技术转行做爬虫是否可行?可行,但我认为较难,因为爬虫做深了以后是需要你了解各种相关领

    2022年7月20日
    39
  • jquery checkbox 设置选中和不选中

    jquery checkbox 设置选中和不选中1.设置选中:$(“#hasApply”).prop(“checked”,true);设置不选中:$(“#hasApply”).prop(“checked”,false);或如下方法://$(“#ck”).attr(“checked”,true)//选中//$(“#ck”).attr(“checked”,false)//未选中2.获取选中的状态:varstatus…

    2022年6月24日
    714
  • ps去色的用法_索尼已经断气了.jpg

    ps去色的用法_索尼已经断气了.jpg原图1、ctrl+shift+u即去色2、ctrl+u降饱和度到最低3、图像——调整——渐变映射(前景色为黑色,背景色为白色或设置渐变为从黑到白)4、图像——调整——通道混合器勾选单色框5、图像——模式——灰度;再图像——模式——RGB6、图像——计算(调整好)——进入通道面板——复制Alpha1通道入图层7、进入通道面板——复制R、G、B任一效果最好的单色通道入图层8

    2022年10月5日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号