pc之间数据包转发流程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Pc1 ping pc3:

1.pc1发现与pc3不在一个网段,决定将数据包发送至网关(1.1.1.1/24),需要知道网

关的mac地址,pc1于是查找自身ARP缓存表,如果有则直接进行第5步,如果没有则发出ARP广播包,包中的4个地址如表1。

表1

2.交换机sw1从e0/1接口接收到数据包,解封后读取数据包的mac地址,将其写入sw1

的mac地址表,发现该数据包是广播包,加上帧头后向进接口外的所有接口发送该数据包,pc2接口收到该数据包发现其目的ip地址1.1.1.1/24与自身不符,丢弃该数据

包并不做回应。经过交换机后源ip、目的ip、源mac、目的mac均不改变。

3.路由器R1接收到数据包,发现其mac地址为广播地址,接收该包,再解封,发现请求

的目的ip地址为自身ip(1.1.1.1/24),需要向源地址进行ARP回复。读取数据包来源于1.1.1.2/24,源mac地址为a.a.a。于是向pc1发送数据包,该包中地址如下(表2):

表2

4.sw1收到来至R1的数据包,查看源mac地址为b.b.b,将该地址连同进来的接口号保存到mac地址表。查看目的mac地址为a.a.a,查看mac地址表,找到与a.a.a的匹配项,向指定接口转发该包,经该接口封装后向pc1进行单播。Pc1收到数据包,解封后读到源ip为1.1.1.1/24,源mac地址为b.b.b,pc1学习到网关的mac地址,并保存到ARP缓存表。

5.Pc1向pc3发出数据包,包中地址如下:

表3

该包进入sw1,根据目的mac地址查询mac地址表后由上接口转出向R1发送,到达接口

s0/1,查到数据包mac地址为自身mac地址,将包解封到ip层,查询路由表:

a、在路由表中查到最优匹配项,查找到下一跳接口ip地址,并发送出去。(假设R1中有

需要的路由表项)

b、如果没有最优匹配项,则按照默认路由发送,没有默认路由则丢弃数据包,并发回应包,目的地址不可达。

查询路由表后得到转发接口为R1s0/1口,下一跳接口的ip地址为3.3.3.2/24,查询ARP 表中ip地址为3.3.3.2的接口的mac地址,得到其mac地址d.d.d;如果表中无匹配项,则通过s0/1口发送ARP广播,请求3.3.3.2的mac地址。封装好包后,从接口s0/1转发数据包,发出去的包mac地址发生了改变:

表4

6、路由器R2接口s0/0接收到数据包,检验mac地址后接收并解封至ip层,查询路由表,发现转发接口为e0/0,且目的ip地址与接口e0/0在同一网段,查找ARP表中目的ip (2.2.2.2)的mac地址,得到pc3的mac地址e.e.e;如果没有查到,则通过e0/0接口发送ARP广播包查询ip地址为2.2.2.2的mac地址。

7、e0/0接口将封装好的数据包发送出去,包地址有(表5):

表5

经过sw2的上接口进入,根据其目的mac地址查询mac地址表,如果找到匹配表项,则根据指定接口转发出去;如果没有找到,则向除进接口外的所有接口转发出去。

8、pc3接收到sw2发来的数据包,解封检验mac地址为自己mac地址e.e.e,接收数据包,包地址如表5。向源地址发送icmp应答数据包,过程相似(省略ARP广播过程)。

相关文档
最新文档