Ping命令技巧

2009/4/25 来源:www.arpun.com 作者:小白

开始跟上面一样, 主机 A 上运行 “ Ping 192.168.1.4 后。 怎样得到 MAC 地址时, IP 协议通过计算发现 D 机与自己不在同一网段内, 就直接将交由路由处理, 也就是将路由的 MAC 取过来, 至于怎样得到路由的 MAC 跟上面一样, 先在 ARP 缓存表找, 找不到就广播吧。 路由得到这个数据帧后, 再跟主机 D 进行联系, 如果找不到就向主机 A 返回一个超时的信息。

但您真正明白这个命令运行后会发生什么, Ping 命令是判断 网络 故障常用的命令。 以及呈现的各种信息说明了什么吗 ? 其实熟练的掌握 Ping 命令的各种技巧可以协助你解决很多网络故障。 下面我就来详细的解一下 Ping 命令。

Ping 幕后过程

一台路由 RA 子网掩码均为 255.255.255.0 默认路由为 192.168.0. 以下面一个网络为例:有 A B C D 四 台机 子。 1

1. 同一网段内

都发生了些什么呢 ? 首先, Ping 命令会构建一个固定格式的 ICMP 请求数据包, 然后由 ICMP 协议将这个数据包连同地址 “ 192.168.0.5 一起交给 IP 层协议 ( 和 ICMP 一样, 实际上是一组后台运行的进程 ) IP 层协议将以地址 “ 192.168.0.5 作为目的地址, 本机 IP 地址作为源地址, 加上一些其他控制信息, 构建一个 IP 数据包, 并想办法得到 192.168.0.5 MAC 地址 ( 物理地址, 这是数据链路层协议构建数据链路层的传输单元 — 帧所必需的以便交给数据链路层构建一个数据帧。 关键就在这里, IP 层协议通过机器 B IP 地址和自己的子网掩码, 发现它跟自己属同一网络, 就直接在本网络内查找这台机器的 MAC, 主机 A 上运行 “ Ping 192.168.0.5 后。 如果以前两机有过通信, A 机的 ARP 缓存表应该有 B 机 IP 与其 MAC 映射关系, 如果没有, 就发一个 ARP 请求广播, 得到 B 机的 MAC, 一并交给数据链路层。 后者构建一个数据帧, 目的地址是 IP 层传过来的物理地址, 源地址则是本机的物理地址, 还要附加上一些控制信息, 依据以太网的介质访问规则, 将它传送进来。

先检查它目的地址, 主机 B 收到这个数据帧后。 并和本机的物理地址对比, 如符合, 则接收 ; 否则丢弃。 接收后检查该数据帧, 将 IP 数据包从帧中提取出来, 交给本机的 IP 层协议。 同样, IP 层检查后, 将有用的信息提取后交给 ICMP 协议, 后者处置后, 马上构建一个 ICMP 应答包, 发送给主机 A 其过程和主机 A 发送 ICMP 请求包到主机 B 一模一样。

2. 不在同一网段内

网友评论
评论(...
全部评论