一个交换机直连两台pc机(交换机下连接2台PC)(1)

1.以ping为例,PC1先构造ICMP 回显请求报文,然后封装IP报头,其中IP报文中 源IP 10.0.0.1 目标IP 10.0.0.2,协议号1。

2.PC1查看自己的路由表时发现目的IP 10.0.0.2 是自己的直连网段地址;

3.PC1查看ARP表中目标地址10.0.0.2对应的表项, 如果有则调用并刷新ARP老化计时器;并完成以太网帧封装,转发数据; 若无10.0.0.2对应的ARP表项,则进行ARP解析。

4.ARP过程:

a. PC1构造对IP地址10.0.0.2的ARP请求报文,此报文被广播的发出; 交换机收到后进行洪泛,并进行MAC地址表项学习,将PC1 MAC和 接收报文端口记录下来,

b. PC2收到后,将ARP请求报文中源IP(10.0.0.1)和源MAC(PC1 MAC) 的对应关系学习到ARP表项中,并单播发送ARP回应报文,将自己的IP和MAC填写到ARP报文中的源IP和源MAC处;交换机收到此报文,查看MAC地址表,按照MAC地址表条目记录的出接口进行转发, 并进行MAC地址表的学习,将PC2 MAC和接收报文端口记录下来;

c. PC1收到ARP回应报文后,将报文中源IP(10.0.0.2)和源MAC(PC2 MAC)的对应关系学习到ARP表项中;

5. PC1查询刚得到的ARP表项,得到10.0.0.2对应的MAC地址,完成ICMP报文的以太网封装,目的MAC PC2MAC 源MAC PC1 MAC 类型值0x0800,将报文发出;

6.交换机收到报文后,查看MAC地址表,按MAC地址表项进行转发(步骤4已学习到PC2MAC的表项,若无表项则泛洪处理),并进行MAC地址表项的学习;

7.PC2收到报文后,查看报文目的MAC地址是自己则接收,并解封装,根据以太网中类型值0X0800,将DATE交给IP协议处理,查看目的IP是自己则解继续解封装,根据协议号1,交给ICMP协议处理,ICMP发现是ICMP回显请求报文,则构造ICMP回显回应报文进行回应。

8.回应报文处理流程同上,区别在于ARP表项 MAC表项已构建完成。 注意:跨网段访问进行ARP查询时,将以网关进行查询,以太网帧中目的地址是网关的MAC。

,