用协议分析工具学习TCP/IP( 三 )


第2行反映的是步骤6)的内容 。在同一个以太网中的每台机器都会"接收"到这个报文,但正常状态下除了1号机外其他主机应该会忽略这个报文,而1号的主机的ARP层收到这份广播报文后,识别出这是发送端在寻问它的IP地址,于是发送一个ARP应答 。告知自己的IP地址和MAC地址 。第2行可以清楚的看出1号回答的信息__自己的MAC地址00:50:FC:22:C7:BE 。
这两行反映的是数据链路层之间一问一答的通信过程 。这个过程就像我要在一个坐满人的教室找一个叫“张三”的人,在门口喊了一声“张三”,这一声大家都听见了,这就叫广播 。张三听到后做了回应,别人听到了没做回应,这样就与张三取得了联系 。
3)头信息分析
如下图左栏所示,第1数据包包含了两个头信息:以太网(Ethernet)和ARP 。
【用协议分析工具学习TCP/IP】
点击查看大图
图10
下表2是以太网的头信息,括号内的数均为该字段所占字节数,以太网报头中的前两个字段是以太网的源地址和目的地址 。目的地址为全1的非凡地址是广播地址 。电缆上的所有以太网接口都要接收广播的数据帧 。两个字节长的以太网帧类型表示后面数据的类型 。对于ARP请求或应答来说,该字段的值为0806 。
第2行中可以看到,尽管ARP请求是广播的,但是ARP应答的目的地址却是1号机的(00 50 FC 22 C7 BE) 。ARP应答是直接送到请求端主机的 。
行以太网目的地址(6)以太网源地址(6)帧类型(2)1FF FF FF FF FF FF00 50 FC 22 C7 BE06 06200 50 FC 22 C7 BE00 50 27 F6 50 5306 06表2
下表3是ARP协议的头信息 。硬件类型字段表示硬件地址的类型 。它的值为1即表示以太网地址 。协议类型字段表示要映射的协议地址类型 。它的值为0800即表示IP地址 。它的值与包含I P数据报的以太网数据帧中的类型字段的值相同 。接下来的两个1字节的字段,硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度,以字节为单位 。对于以太网上IP地址的ARP请求或应答来说,它们的值分别为6和4 。Op即操作(Opoperation),1是ARP请求、2是ARP应答、3是RARP请求和4为RARP应答,第二行中该字段值为2表示应答 。接下来的四个字段是发送端的硬件地址、发送端的IP地址、目的端的硬件地址和目的端IP地址 。注重,这里有一些重复信息:在以太网的数据帧报头中和ARP请求数据帧中都有发送端的硬件地址 。对于一个ARP请求来说,除目的端硬件地址外的所有其他的字段都有填充值 。
表3的第2行为应答,当系统收到一份目的端为本机的ARP请求报文后,它就把硬件地址填进去,然后用两个目的端地址分别替换两个发送端地址,并把操作字段置为2,最后把它发送回去 。
行硬件类型
(2)协议类型
(2)硬件地址
长度(1)协议地址
长度(1)Op
(2)发送端以太网地址(6)发送端IP地址(4)目的以太网地址(6)目的IP地址(4)100 0008 00060600 010050FC22C7BEC0A871D0000000000000C0A871D1200 0008 00060600 02005027F65053C0A871D10050FC22C7BEC0A871D0表3
QQread.com推出各大专业服务器评测 Linux服务器的安全性能SUN服务器HP服务器DELL服务器IBM服务器联想服务器浪潮服务器曙光服务器同方服务器华硕服务器宝德服务器第二组 建立连接
1)下图显示的是3-5行的数据
点击查看大图
图11
2)解释数据包
这三行数据是两机建立连接的过程 。
这三行的核心意思就是TCP协议的三次握手 。TCP的数据包是靠IP协议来传输的 。但IP协议是只管把数据送到出去,但不能保证IP数据报能成功地到达目的地,保证数据的可靠传输是靠TCP协议来完成的 。当接收端收到来自发送端的信息时,接受端详发送短发送一条应答信息,意思是:“我已收到你的信息了 。”第三组数据将能看到这个过程 。TCP是一个面向连接的协议 。无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接 。建立连接的过程就是三次握手的过程 。

推荐阅读