精华内容
下载资源
问答
  • 局域网ping不通的问题解决方法总结

    万次阅读 多人点赞 2019-04-28 11:17:49
    ping命令是检测源和目的ip间导通性的icmp协议,属于ip层协议。源主机ping发出含一串数据的包(如123456789abcde之类),封装在二层上,对方收到后,把这串包原路送回来,源pc收到后,认为是对方可达。所以它涉及二层...

    文档中有截图:看不清请把web缩放比例调到150%观看。      

    这类问题,要根据ping的回显结果来处理。

        因为ping的结果不外乎三种:1,正常导通回包;2,回显icmp差错;3,超时没有响应,显示time out。

       这三种在windows里都有回显,所以我们根据回显可以判断出问题出在什么地方?

    Ping的概念和原理:

           ping命令使用的是检测源和目的ip间导通性测试的icmp协议,属于ip层协议。源主机ping发出含一串数据的包(如123456789abcde之类)request消息,封装在二层上,对方收到后,把这串包原路送回来,源pc收到后,认为是对方可达。所以它涉及二层的mac地址和ip层的交互。当对方存在问题时(ip地址不存在,没有路由等),对方的ip或者经过的网络节点会返回icmp的差错消息给终端源ip。使用的端口和ip要根据节点的路由表进行确定,发起方根据返回结果来产生回显,若在ping的request消息发出,等待一段时间,win默认是5s,没有收到回复,发起方显示超时time out(linux环境默认定时器是1秒,这种情况没有任何显示)。

     

     

           ping的过程是,输完命令后,根据目的ip,先查路由表,看目的主机ip是否走直连路由,是就去检查mac地址缓存表,看是否有该地址的mac地址缓存,没有的话,是用直连路由的一个本机接口去发出请求目的ip的mac地址的arp请求request消息,收到arp响应后,用这个mac地址封装二层数据,发出icmp协议的ping请求消息。mac地址缓存里有,直接封装ping的request消息。没有得到mac地址,不发出ping的request消息,回显目的主机不可达。

          查路由表发现不是直连路由和静态路由的话,走默认路由的话,就去查是否有默认网关的mac地址,没有去请求网关的mac地址,有就直接封装ping的request消息。若目的主机收到后,由于回程路由缺失原因,防火墙原因在网络层拦截icmp探查消息,入口或者出口不一致等,没有按原路返回,或没有回复,主机在等reply超时后,会有相应的超时显示。若目的网关未找到目的主机,或者经过的节点设备发现有错误,无法到达目的主机,会选择正常时的回复ip给源主机发出一个icmp错误消息,提示源主机。源主机会回显错误提示。

       

          由此,ping的回显的内容与icmp的差错消息相关的,根据回显报错的节点ip和内容,我们能知道那个节点出现问题,什么问题?

         arp请求的回复原则是,只检查请求包里的目的ip是否是自身接口的ip,是就回复,而对ping的request的回复就相对复杂一点。

         ping的过程和自身路由表,二层广播通道是否通畅?访问目的ip的途径路径的路由设置,目的点的路由设置,对方设备的状态,防火墙是否阻止ping的请求消息通过相关。所以我们排查问题从这些因素去考虑排查。

     

       局域网内网中ping不通,有下面几种情况:

    一  局域网内网中ping通,目的ip和源ip是同一网段的情况

       同网段ping就两种情况,一种是ping的request没发出去,另一种是发出去没有收到回包响应,超时time out。

    • 一种情况是目的ip和源ip是同一网段的,ping的结果是“无法访问目标主机” ,属于ping的request没有发出。
    • 是否是同一网段的判断是目的ip与所有直连路由项的掩码去与运算,结果和所有直连路由的网络地址去比对,一致就是同一网段。

            这种情况是目的ip和源ip是同一网段的,ping的结果是自身的ip回复的“无法访问目标主机”,证明目的查询路由表里是直连路由,这时用arp  -a | findstr  ip地址,看是否获取到对应的ip地址的mac,没有的话,应该是ping命令执行时,发出的请求对方的mac地址的arp消息没有得到应答,此时根本没有发出ping的request消息。这时,要检查对方是否开机?ip是否存在?有跨交换机vlan的话,检查对应的中间trunk链路是否导通?arp消息是否能到达目的ip侧?对方是否收到arp请求消息?走直连路由是否正确?(应该走默认路由,而走了直连路由,不正确的话,检查路由表是否存在掩码之类错误)最好能在对方pc上抓包,看arp请求消息是否到达目的地址的主机,再逐级排查。

             ping的过程,同网段的查询路由表,发现是直连路由,查询arp缓冲没有发现目的ip的mac地址,就用直连接口的ip作为源ip去查询目的ip的mac地址,如果得到响应,会用此mac地址作为目的mac组成icmp请求包发出。没有响应,arp请求消息会发出多次在ping的过程中。

    如下图:我们用windump抓包,去ping一个不存在的地址。

    cmd下用ipconfig/all去查看网卡的信息如下:

      去ping一个ip为192.168.1.105去看看结果如何?同时用windump进行抓包观察:

     

    arp请求消息多次发出,ping的回显是自身ip的回复:无法访问目标主机。

     正常的ping消息有响应的抓包如下:

         

    若是同网段,ping后显示time out超时,检查arp -a有对应的目的ip的mac地址,证明网络层的ping的request消息已经发出,

    而且已经到达目的主机的网络,要么没回ping的reply消息,要么回到其他地方去了?前者检查对应主机的防火墙是否设置,禁止了对ping的request进行响应?放开就行了或者关闭防火墙。要是防火墙没有问题,就检查路由表,是否因为掩码问题,判断不是同一网段,没有路由,所以没有回复,或者看掩码不同,配置有网关,由路由表中发给其他地址是否发给其他mac地址?

    •    下面是一个对方掩码造成的time out的例子:

    对方掩码设置255.255.255.252造成ping不通time out(回程选路认为不是同一网段,没有找到回程路由

    公司一个设备有问题要进行复现,拿到后不知道ip地址,通过串口看配置文件后看到管理ip是management-port ip address 172.26.0.214 255.255.255.252,看到这里pc配置一个b类地址,172.16.0.145/16的ip后去ping。发现不通,显示time out。

    奇怪,查看arp发现对方的设备已经给回arp请求了,用windump抓包看看。

    发现对方arp响应已经发出,pc的ping的request消息已经发出,但icmp的reply消息没有,

    问题在设备侧,为啥没回ping的reply消息?串口登录设备,查看设备的路由:

    发现直连的outband的路由是172.26.0.212/30,就是掩码是255.255.255.252,就是掩码是在第四段变化,ip与掩码得出网络地址。网络地址算法如下:

    172       26   0    214           第四段 1101 0110                                                           

    255       255  255  252           掩码   1111 1100

    172       26   0    212           结果   1101 0100         网络地址是172.26.0.212,就是路由表里的显示

         设备收到172.26.0.145发来的ping的request包后,把172.16.0.145与路由表里掩码255.255.255.252与的结果是172.16.0.144,显然不上同一网段的地址,所以设备snmp口没有响应。

    172     26      0       145    第四段是   1001  0001

    255   255   255      252    掩码是      1111  1100

    172     26      0        144     结果        1001  0000       结果是172.26.0.144,显然路由表里没有符合的路由

    设备的掩码是30位,主机位是2位,所以网络地址172.26.0.212,广播地址是172.16.0.215,可用ip访问是172.26.0.213和172.26.0.214,设备用了214这个地址,所以pc应该配213这个地址。

    重新去ping,结果如下:

    抓包显示如下:

    可以看到arp消息均正常,ping的包正常,ping的序号请求,应答序号正常。

    问题解决。

    • 下面是一个对方掩码和源ip不一致,配置有网关,ping的reply发给其他地址,导致源ip没有收到响应包,超时显示time out范例:

        Pc1的配置192.168.205.201/24gw192.168.205.1,pc2的ip192.168.205.99。发现ping不通,显示time out。

    查arp缓存

    Windump的抓包:

    在192.168.205.99上的查询ip和掩码

    发现ip是192.168.205.99/25,gw是192.168.205.22

    查询路由:

    Windump抓包:

    Arp查询发现:

     发现192.168.205.201来的ping包被发给了192.168.205.22它的网关。

    为什么会这样?

      因为掩码是25位,就是第四段是128,201&&128=128, 99这台pc认为的同网段的ip192.168.205.1~192.168.205.126所以pc收到pc1的包后,pc1的ip与自己直连路由表的掩码255.255.255.128与的结果是192.168.205.128与直连路由192.168.205.0不一致,所以不走直连路由,而符合默认网关0.0.0.0/0.0.0.0的路由,所以发给192.168.205.22的mac地址,导致不通。

    • 还有一种情况,是ping同网段的ip,回显是time out,但arp  -a |  findstr  目的ip地址却查不到mac地址,那可能是硬件原因,导致没有生成直连路由表项。发包走默认路由了。

     

     

    抓包看是如此,

     

    而应该从usb网卡上发出

     

     查看路由关系

     

     

     

    插上后

     

     

     

    • 还有一种time  out的情况是对方设备开启了防火墙 ,拦截了ping的request消息,应用层没有收到,而没有回响应。

          这种情况下,arp  -a里会显示有对方mac地址,抓包会有request发出,这时需要在目的设备上防火墙放开ping消息通过或者关闭防火墙。

        二,目的ip和源ip不是同一网段

      不在同一网段有几种情况:

      1,ping的request消息没有发出(没有网关,没有生成出口路由)

      2,ping的request消息发给网关,但网关回了icmp错误消息,可能是访问目的主机失败,这有可能是对方未开机。或者其他网关路由不可达,或者其他网络故障错误。

      3,ping的request消息发给网关,但定时器超时后,没有收到响应包。这可能是对方防火墙,对方回程路由,路径上有问题。

     

    •       若源ip没有配置网关,会显示“传输失败。General failure”,如下图:

       

    检查路由表若没有默认路由,就得添加对应的网关地址,系统自动生成默认路由。

    • 跨网段ping的过程

        ping命令发出后,提示是其他ip回复的(如网关或者一个节点ip)“无法访问目标主机”,跨网段ping消息,没有直连路由的话,会首先检查是否有配置默认网关,有的话,检查arp缓存是否有网关的mac地址,没有的话,会发出arp查询网关的mac地址,有的并且响应后,直接组包发给网关的mac。出问题时:应该去检查路由表是否有缺省的路由?检查arp表是否有网关的mac地址?没有获得网关mac,检查到网关通道是否通畅?还有一种情况目的ip是不存在的ip,经过目的ip网关给回了主机不可达的icmp消息,过程是这边ping的request消息发到目的ip的网关,目的ip的网关没有对应的ip的mac地址,就会用自己的ip和mac发起arp查询,没有得到响应的话,就会向源ip地址发出host unreachable的icmp消息。源ip就显示无法访问目的主机。

    •    对方未开机或者ip不存在的情况

         模拟过程:用pc192.168.205.201(网关是205.1)去ping局域网内另一主机192.168.206.10(网关206.1,192.168.206.10此主机不存在)的情况

        发现不是自身ip192.168.205.201回复的“无法访问目的主机”,而是一个网关的ip192.168.205.1回复的。这说明走了默认路由。

       

    用wireshark抓包发现,205网段的网关192.168.205.1发给192.168.205.201一个主机不可达消息。

    发现网关给回了主机不可达,交换机上查询主机地址,发现没有此主机。

    在206网段的其他pc上抓包,过滤对应c0-a8-ce-0a的arp广播消息,能发现网关每隔一秒发出一次arp的广播查询消息,因为没有响应,所以会发出多次。

    Arp查询没有成功,所以交换机给源主机回主机不可达的icmp消息。

    • 回显是time out的可能情况 

        若显示time out,表示ping的request消息已经发出,目的ip的网关已经获取到目的ip的mac地址,但ping的reply消息,源主机没有收到。这时应该在被叫侧检查ping的request是否到达,若是windows系统,可以使用wireshark进行抓包,过滤对应源ip或者icmp消息,看是否到达,若到达,看是否有回报发出,有的话,检查回程路由,看回包的mac地址是否和ping的request来包是否一致,不一致,检查回程路由和节点回程路由。没有回包,检查防火墙和回程路由。防火墙针对进入系统的包,拦截了ping的request消息,导致上层收不到request而没有回包。

    • 防火墙在网络层拦截ping的请求消息,导致应用层没有收到ping的request消息,自然不回reply消息,超时回显time out的现象

    去ping一台内网的pc192.168.206.110的情况:

      

    若没有到达目的ip地址,就检查经过节点的路由是否正确,能通道是否导通?

        在目的主机上抓包看到,包已经到目的主机,但目的主机没有回。

      检查网关的mac地址和路由表里都正常,检查防火墙发现防火墙开启,关闭后正常。

    或者在防火墙-高级设置-入站规则-文件和打印机共享(回显请求icmpv4-in)允许就行,允许ping的request探查消息通过。 

    关闭防火墙后正常。

    为啥能抓到包?是因为抓包是利用驱动在mac层完成,而防火墙是在ip层工作,所以抓包看到ping的请求消息,而ip层以上没有收到,自然不回响应。

    • 没有回程路由的情况仿真:

    如图,ping 172.103.201.105一台内网centos7.0的服务器。

    在目的主机侧执行tcpdump的结果tcpdump  -i em1  -nne icmp:

    Ping的request已经收到,为啥没有回?检查防火墙是否开启和回程路由是否存在?

    防火墙未打开,检查回程路由是否存在?

    发现没有对应的回程路由,192.168.205.0。添加后观察:

    添加路由后,ping观察。

    • 还有一种情况是回程路由的硬件网卡出口和ping的request的入口网卡不是同一个,操作系统默认是那个口来包,从哪个口回去,跨网口的回包是禁止的,这种情况下,就要关闭回包路由检测即可。
    • 还有一种情况,就是发起方的掩码配置错误,把应该送到网关的包,认为是同一网段,发出arp请求,回显无法访问目的主机的回显。这是就需要检查本地路由表,看看是否有错?见https://blog.csdn.net/wj31932/article/details/108999891
    • 有一种情况是交换机vlan对应的接口全部down了,导致vlan状态down,vlan的对应路由没有生成。ping的被送到出口路由器上去,出口路由器回ttl exceed,导致ping不通,参考https://blog.csdn.net/wj31932/article/details/97795829

     

    结论:

    Ping出现故障时,首先检查ping的request消息是否发出,发出的mac地址是否是确的mac地址出现time out时,要检查目的主机是否收到request消息,收到是否回了,回的mac地址是否正确

    Ping出现无法访问目标主机时,一般是本机或者网关没有获得对方主机的mac地址,要么ip不存在或者没有开机或者arp消息对方没有收到。Ping出现time out时,是对方没有应答,一般检查防火墙是否打开,或者回程路由是否存在,或者回程路由有误,回包发向了错误的地方。还有的情况是对方是另一个vlan下的ip,当整个vlan接口状态是down的情况下,会受到网关发来的ttl  exceed的回显。没有路由的情况下,也会出现类似的回显。

    当在linux环境中执行ping命令时,等待十几秒没有任何回显,一般是time out了,这是检查目的ip是否同网段,是的话,arp  -n看是否有目的ip的mac地址,有就确定了。不是同网段确定是time out,按time  out处理方法进行。

    总之:ping不通,要根据回显判断可能的情况来确定问题,并进行相应的处理。

     

     

    展开全文
  • 输入命令:ifconfig 查看ip和mac地址ping 192.168.0.23,能ping通但是ping www.baidu.com,ping不通可以修改网络配置文件,在配置文件中加入mac地址。输入:cd /etc/sysconfig/network-scripts,进入network-scripts...

    输入命令:ifconfig 查看ip和mac地址

                

    【遇到的问题】ping 本机ip(192.168.0.23),能ping通,但是ping www.baidu.com,ping不通

    【解决办法】

    可以修改网络配置文件,在配置文件中加入mac地址。

    输入:cd /etc/sysconfig/network-scripts,进入network-scripts文件夹,查看可用的网关

                

    修改配置文件,输入:vi ifcfg-enp0s3,增加HWADDR一行,DNS也可以加上(DNS也可以不加)

                

    展开全文
  • 换了桥接网络之后 设置了IP之后就不能ping外了 网关和DNS都是好的,能ping桶区域内其他电脑,就是ping不通网关外 求解啊
  • ping网络不通自动重启

    2018-01-20 08:29:37
    主要用在服务器上防止掉线,ping网络不通自动重启服务器,
  • windows操作系统和虚拟机中的Linux系统网络不通(ping不通)

    windows操作系统和虚拟机中的Linux系统网络不通(ping不通)

    展开全文
  • Ubuntu ping不通

    千次阅读 2019-06-18 19:59:28
    Ubuntu ping不通 修改网卡配置文件: sudo vi /etc/network/interfaces (命令模式下添加以下内容) auto eth0 iface eth0 inet static address 192.168.0.178 netmask 255.255.255.0 ...

    Ubuntu ping不通外网

    1. 修改网卡配置文件:

      sudo vi /etc/network/interfaces
      (命令模式下添加以下内容)
      		auto eth0
      		iface eth0 inet static
      		        address 192.168.0.178
      		        netmask 255.255.255.0
      		        gateway 192.168.0.1
      		#自动获得IP地址
      		auto lo
      		iface lo inet loopback
      		auto eth0
      		iface eth0 inet dhcp
      
    2. 设置DNS:

       sudo vi /etc/resolv.conf
       (添加以下内容,有可以不操作)
       nameserver 114.114.114.114
      
    3. 启动网卡:

       sudo /etc/init.d/networking restart
      
    4. 检查下网卡配置信息:

       ifconfig
      
    5. 使用ping命令查看能否联网:

       ping  www.baidu.com
      
    展开全文
  • 解决centos ping不通

    万次阅读 2017-01-06 16:58:51
    解决centos ping不通
  • Linux中ping不通

    千次阅读 2019-05-22 14:23:59
    Linux中ping不通 在linux中ping www.baidu.com 无法ping通,可能原因是DNS没配置好 方法一:修改vi /etc/resolv.conf            增加如下内容:...
  • 至少要安装20遍以上才能说自己会安装linux系统,而我并不是想练手,真的只是因为之前有成功的经历,确信配置无误,现在同样的方法一直ping不通,无奈之下,尝试了n种方式,重装不下10次,今天又死磕,再磕不出来...
  • docker里面ping不通

    千次阅读 2020-05-30 14:31:53
    在进入docker 里面 ping 114.114.114.114(或其它外ping 不通? 查看docker的网络也正常 # docker network ls # docker network inspect xxxx 问题产生原因: docker 运行的时候会默认将 ip_forward 置为开启...
  • ubuntu 可以ping通局域网,ping ...ubuntu ping不通主机和外。 ping命令返回: icmp_seq=1 Destination Host Unreachable 由此发现是虚拟机的网络连接模式设置错了,将NAT模式应该改为Bridged模式,就ok了。 ![ubu
  • kali linux 没有,ping不通百度,ping 不通8.8.8.8

    万次阅读 多人点赞 2018-02-06 09:22:44
    昨天还用的好好的,一觉醒来没了。(手动滑稽) 首先 ifconfig 一下 发现eth0没有分配ip地址 这个时候先 先用dhclient eth0获取IP地址, 然后运行ifconfig eth0  就会看到eth0已经有ip了 再...
  • 问题导航 service network restart网卡重启错误 ping不通 8.8.8.8 pingg不通域名(如:百度)
  • centos7网络配置以及网络ping不通问题

    千次阅读 2020-09-25 18:44:25
    一、问题一:虚拟机和主机互ping不通 安装了虚拟机,以太网选的是默认的桥接,可安装完后,不能和主机ping通,也不能ping通网关192.168.1.1,显示"destination host unreachable" 在VMware Workstation中,单击菜单编辑-&...
  • ,再或者电脑重启,系统更新重启 等等一系列操作都有可能使你的网路ping不通虚拟机的ip。 那么解决的方式有两种,即可解决这个烦恼的问题,如果大家有更好的解决方案,留言告诉我,我会及时更新博客 方案一 打开...
  • LINUX虚拟机ping不通

    千次阅读 2016-03-17 22:58:40
    [size=medium]LINUX虚拟机ping不通: ping 不通IP地址: ping 119.75.217.56 #百度IP地址无法ping通 检查网关是否设置正确:/etc/sysconfig/network GATEWAY=192.168.1.1 ping 不通域名: ping ...
  • docker ping不通

    千次阅读 2019-06-11 11:09:47
    原因猜测:1.网络不稳定,网络断开重新连接后,docker容器内网络好像不能自动恢复; 2.机器重启后docker在...docker容器ping失败 ping: bad address 'www.baidu.com' 解决办法:重启docker service docker restart ...
  • linux网络配置正确但是ping不通

    万次阅读 2019-03-04 21:49:36
    不知道怎么的,kali突然就ping不通了,我检查了网卡的配置信息包括路由、网关、ip、DNS等都正常,没有做过修改。而且ping的时候返回的是64位的地址,也就是ipv_6,比较惊讶,因为这是头一次见ping返回64位地址...
  • 问题:有时候用虚拟机开发...但是反过来在cmd里面的DOS窗口却ping不通虚拟机?显示主机名错误或者其他什么原因?  解答:首先如果是ping IP地址从DOSping不通虚拟机,而反过来可以,那是因为没有本地的虚拟网卡没有配
  • 虚拟机下的所有linux系统都ping不通,linux的浏览器能正常联网。系统之间能够相互ping通,主机能ping通外,电脑是无线,虚拟机用的是net. ![图片说明]...
  • 虚拟机ping不通

    千次阅读 2018-09-03 10:10:37
    虚拟机ping不通时,起码要设置三处,即 /etc/resolv.conf /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-eth0 1、CentOS 修改DNS 修改对应网卡的DNS的配置文件 vi /etc/resolv.conf ...
  • 关于VMware虚拟机网络ping不通问题

    万次阅读 多人点赞 2018-03-24 12:56:36
     说明已经可以连接外了。 注意: 如果是拷贝别人的虚拟机那么你操作系统分配给VMware的ip、与箭头所指不一致,这时候你就要设置一下箭头所指的ip地址要与Windows系统的一致。 打开cmd命令输入ipconfig 查看相关ip...
  • linux ping不通

    千次阅读 2018-03-01 16:39:08
    解决centos ping不通http://blog.csdn.net/yonggeit/article/details/71908056CENTOS虚拟机DNS设置https://www.cnblogs.com/SailorXiao/archive/2016/08/26/5808832.html
  • windows的winsock损坏后,会造成能ping通外IP,使用nslookup命令能够解析域名,却ping不通域名的情况。 在网上搜索了一下,发现有的网友说是微软补丁造成的,卸载那个补丁就可以了,或者说要求用360急救箱...
  • 最近公司进行网络改造, 给每个工程组分配不同的网段,使得组织间的网络不能...1、物理连接不通,即网线没有插好,会导致服务器自己Ping不通自己 2、防火墙没有关闭 3、查看网络共享中心->更改高级共享设置...
  • centos7 安装成功ping不通网络得问题

    万次阅读 2019-02-19 17:22:38
    我之前ping不通主要是网关的问题,就是GATEWAY的网关错误 看了别人的贴子终于修改好了,记录下步骤: 1.打开虚拟机的编辑 2.外面的网络适配器设置记得要是NET模式,就是因为我之前的是桥接模式,一直没...
  • 解决办法: 基本的排错步骤(从上往下): ping 127.0.0.1 确认TCP协议栈没有问题 ping 当前主机地址 确认网卡没有问题 ping 路由器网关 确认是否可以...上述步骤,一步步往下走,哪儿ping不通,调整哪儿即可。 ...
  • 1.首先打开虚拟机虚拟网络编辑器 2.添加网络添加 1 添加一个网络,我这里是设置的Vmnet8,选择NAT模式,下面勾选为将主机虚拟适配器连接到此网络。 2.然后点NAT设置 上面有默认网关ip 为192.168.93.2 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 300,528
精华内容 120,211
关键字:

网不通怎么ping