专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
DSP
PING不通你 我也知道你在不在线!
2019-07-13 16:35
发布
生成海报
站内文章
/
DSP
11661
0
1559
总结:当PING不通一个IP时,再通过arp -a查看是否有该IP的MAC,才能确认该Ip到底存不存在!
原因:PING不通 ICMP包被拦截,但ARP包未被拦截。 PING命令要先发ARP包,再发ICMP包。
做过网络管理员的同学应该都遇到过这种情况,当判断一台PC是不是处于开机在线状态时可能最先想到的就是PING一下那台PC的IP地址,
能PING通表示在线,PING不通……可能在线也可能不在线
。为什么这么说?因为PC上可能运行着防火墙
软件
,WINDOWS自带的防火墙也好,第三方防火墙也好,默认设置都会拦截下PING入本机的“请求”数据包,这导致PING“请求”发出方收不到回应,超过时间后便会显示TIME OUT提示,虽然PING不通,但我们却无法依此确定此PC是不是在线,那有没有简单有效的方法来判断某PC是不是在线?
此时,
WINDOWS 中的ARP命令可以帮到我们
,ARP –A命令的作用是查看ARP缓存中的所有项目。ARP缓存表中包括什么对我们有用的信息呢?当然是MAC地址了,为什么这么说?同学们且往下看。
2
回顶部
当我们在PC1上输入ping 10.0.0.10 ,按下回车键后系统所执行的第一个实际操作其实并不是PING功能本身,
PC1首先是要使用ARP协议解析目标IP地址,在收到目标主机的回应之后,PC1才会发送ICMP包给目标主机
。如果系统装有防火墙,这时防火墙就起作用了,防火墙不会拦截ARP解析IP地址,但却会拦截PING请求,PING请求被拦截,目标主机自然不会给PC1发送相应的PING回应数据包,超过时间之后,PC1上的PING操作便显示超时,其过程大致就是这样。
防火墙不会拦截ARP协议解析IP地址这点对我们来讲就够用了,IP地址被解析成MAC地址后我们可以通过ARP –A命令查看ARP缓存表,只要在ARP缓存表中出现目标主机的IP-MAC对应条目,那证明其就是在线的,如果目标主机处于关机或离线状态,自然ARP协议无法解析PC1所请求的IP地址,也就不会有目标主机的IP-MAC对应条目 通过这样,我们便可以很简单的了解到目标主机是不是在线了。 虽然PING不通,但是PC1的ARP缓存表中却出现了10.0.0.10的MAC地址(硬件地址亦作物理地址),证明目标主机是在线的。如下图:
如果目标主机不在线(在测试时小编将目标主机关机),ARP协议无法解析10.0.0.10的MAC地址,如下图。小编还试着将目标主机的
网卡
禁用,其结果相同。
使用Wireshark分析数据包,能更好的帮助我们理解上面所说的情况。有Echo (ping) request 但没有Echo (ping) reply 。
Ta的文章
更多
>>
PING不通你 我也知道你在不在线!
0 个评论
热门文章
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮