ttl传输中过期怎么解决

作为IT从业者,Ping测试这个命令想必是非常非常熟悉了!它是用于诊断网络连通性最好用的工具,没有之一!

Ping不通的情况时有发生,那么Ping不通时会结果回显是什么呢?常见的有4种结果:

一、请求超时。

二、来自X.X.X.X的回复: 无法访问目标主机。

三、PING:传输失败。常见故障。

四、来自X.X.X.X的回复: TTL 传输中过期。

ttl传输中过期怎么解决

Ping失败则回显不同的结果,Windows不是随便给一个结果的,而这些信息表示连通性异常均存在不同的故障原因!那么其背后的逻辑是什么呢?在特定的场景下,我们来一个一个的分析:

回显1:请求超时。

此结果和ICMP回包有关,一定是PC封装了ICMP request发出去了得不到结果才有这个提示,换句话说已经完成了网关设备或者目标设备的arp学习。

【局域网场景】

ttl传输中过期怎么解决

如图,PC1 Ping测试目标是同一局域网、同网段的PC2设备不通出现该提示,表示:“已经学到了该PC2的ARP条目,但PC1的ICMP包没有得到响应”,所以能明确知道对端是正常存在于网络当中的,就不用再去管物理链路问题了!而PC1得不到响应ICMP的常见原因有:

  • PC2启用了防火墙禁ping;
  • PC2安装了网安软件如卡巴斯基;
  • PC1去往PC2中间的交换机、路由器等设备对ICMP包做了过滤等。

【三层VLAN场景】

ttl传输中过期怎么解决

如图,在规模较大的三层网络架构下,若VLAN10的PC1 Ping的是VLAN20网段的PC2不通,表示:“PC1已经学习到了VLAN10网关的ARP条目,且网关(核心交换设备等)VLAN20也学到了PC2的ARP条目,但PC1没收到响应ICMP包”,同理可以判断该PC2也正常存在于网络当中,物理网络链路正常。但PC1得不到响应的ICMP包常见原因如下:

  • PC2启用了防火墙禁ping;
  • PC2没有配置网关,无法跨三层回包给PC1;
  • PC2安装了网安软件如卡巴斯基做了限制;
  • PC1去往PC2中间的交换机、路由器等设备对ICMP包做了过滤。

【访问internet】

ttl传输中过期怎么解决

如图,PC ping的是出口路由WAN侧的internet站点(百度、QQ)等不通,则基本表示该internet站点禁ping。

回显2:来自X.X.X.X的回复: 无法访问目标主机。

此结果一定是和arp学习有关,要么是PC自身没学到同网段设备的arp条目,要么是跨三层访问时网关没有学到另一VLAN中的目标设备arp条目返回给PC的错误报告。

【局域网场景】

ttl传输中过期怎么解决

如图,PC1 Ping测试目标是同一局域网、同网段的PC2设备不通出现该提示,表示“PC1的网络连接正常,但根本学不到PC2的ARP条目”,这就没办法去确认PC2的物理网络是否正常了,可能故障原因有:

  • PC2物理链路故障;
  • PC2网卡故障或网络参数错误;
  • 中间交换机做了VLAN隔离、端口隔离。

【跨VLAN场景】

ttl传输中过期怎么解决

如图,在规模较大的三层网络架构下,若VLAN10的PC1 Ping的是VLAN20网段的PC2不通,表示“要么是VLAN10的PC1没有学到其网关的ARP条目,要么是网关VLAN20接口没有学到PC2的ARP条目”,此时没法确认PC2是否物理网络正常,且也不能判断其是否在VLAN20中,故障可能原因如下:

  • PC1网关配置错误;
  • PC1连接交换机的端口VLAN配置错误;
  • PC2网卡或者物理链路故障;
  • PC2连接交换机的端口VLAN配置错误。

回显3:PING:传输失败。常见故障。

出现这个报错是指网卡连ARP包都发不出去,百分百就是源电脑的网卡和网线问题!交换机、路由器等不用去排查了!原因如下:

  • 网线未插好或网卡故障(网络适配器打叉);
  • 网络适配器未启用或者驱动异常;
  • 网卡没配置网关就去访问其他网段的IP地址,主机根本不知道把包交给谁;
  • 网卡未启用IPv6协议或者拿不到IPv6地址时去ping IPv6站点。

回显4:来自X.X.X.X的回复: TTL 传输中过期。

有些论坛分析此原因是经过了太多的路由(每经过一台路由TTL减1)导致此问题。我觉得不对,Win10 ICMP包初始TTL=64,经测试即便是我访问美国站点1.1.1.1,TTL也只减了10而已(链路一共经过了10台路由),而要说从A—>B经过≥64台路由我是完全不信的。

ttl传输中过期怎么解决

而出现这个“TTL传输中过期”的报错呢,大概率是网络中出现了“路由环路”导致,简单来看个图:

ttl传输中过期怎么解决

单播的三层报文,在网络内来回路由转发,循环往复,就形成了三层路由环路。用tracert命令跟踪表现是这样的:

ttl传输中过期怎么解决

直到TTL减到0单播环路才停止,基本就是交换网络、路由网络的配置相关问题了,此问题会造成网络中“单播包泛洪”影响路由交换的性能。像上述而常见的“路由环路”问题可以通过三层交换机的“黑洞路由”配置解决,具体方法本期不做详解。

最后总结一下:

ttl传输中过期怎么解决

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至2705686032@qq.com 举报,一经查实,本站将立刻删除。原文转载: 原文出处:

(0)
尊云-小张的头像尊云-小张
上一篇 2024 年 4 月 24 日 08:35
下一篇 2024 年 4 月 24 日 08:40

相关推荐

  • 开启mysql服务命令是什么(启动数据库服务命令)

    mysql服务启动和关闭的方法: 一、通过【计算机管理】界面来启动和关闭mysql服务 1、鼠标移动到计算机,点击鼠标右键,选择“管理”。 2、在【计算机管理】界面中选择【服务与应用程序】下的【服务】。 3、服务默认是按字母排序的,所以往下拉,找到M开头的mysql服务。 此时你可以查看它是否已经启动,它是自动启动还是手动。 3、当你点击鼠标左键,选中mys…

    4天前
    000
  • nginx升级版本的方法(nginx配置文件详解)

    近在给客户部署服务的时候,客户的安全团队测试后提出Nginx因为安全问题需要更新到最新版本1.16.1/1.17.3。因为我们的服务部署在Centos7上所以我们可以通过下面的操作来升级(前提是服务器能联网) 熟悉我们配置nginx安装源 打开或者创建/etc/yum.repos.d/nginx.repo vim /etc/yum.repos.d/nginx…

    2024 年 4 月 22 日
    000
  • php分割数组函数怎么写(php输出数组用什么函数)

    在 php 中,要分割一个数组可以使用array_chunk()函数。该函数将给定的数组分割成指定大小的多个数组块,并返回一个新的多维数组。 语法:array_chunk(array, size, preserve_keys) 参数说明:– array:要进行分割的数组。– size:每个子数组中包含的元素个数。– pre…

    5天前
    000
  • Linux文件传输命令

    rz和sz命令是用于在终端上进行文件上传和下载操作的命令行工具,常用于远程连接Linux服务器进行文件传输。下面是rz和sz命令的详细用法说明: 1. rz命令 rz命令用于将本地文件上传到远程服务器。 用法: rz [-b BASENAME] [-e] [-k] [-q] [-t] [-v] [-x] [-Z] [-h] [-?] 参数说明: -f:指定上…

    2024 年 5 月 2 日
    000
  • linuxftp安装部署(linux配置和管理FTP)

    简介:FTP ( 文件传输协议 ) 是 互联网常用的网络协议之一 , 它为系统提供了通过网络与远程服务器进行文件传输的简单方法,多个Web站点可以共享一个IP地址。Linux下ftp服务可以通过搭建vsftpd服务来实现,以CentOS为例,首先查看系统中是否安装了vsftpd,可以通过执行命令 rpm -qa | grep vsftpd 来查看是否安装相应…

    3小时前
    100

发表回复

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

联系我们

400-900-3935

在线咨询: QQ交谈

邮件:cong@zun.com

工作时间:365天无休服务 24小时在线

添加微信