网络基础-三层通信

读懂文本需要对IP、MAC地址、二层通信有基础的认识
二层通信原理可参考本人另一篇blog:
网络基础-二层通信

广播域

通常来说,一个广播域代表着一个IP网段

既然二层通信可以直接互访,那为什么需要我们需要广播域呢?

回想二层通信的原理,主机通过发送广播arp报文来请求对端的mac地址信息,在交换机层面,会将此arp泛洪发送,若没有广播域的概念,交换机便会向除接口端口的所有接口做泛洪;单次的arp可能微不足道,但网络中一般都会有大量的客户端,如果都做泛洪转发,会对交换机造成巨大的性能压力。

把这个关系类比电话号码,泛洪域就像一个个单独的家庭。记住自己家人的电话对个人来说很容易,但如果需要记住所有人的电话号码,对个人的记忆力考验就比较大了。此时,我们便需要一个接口人,当需要拨打外人的电话,我们只需要找到接口人(可参考114的转接服务),让他代替我们去查询。再回到网络知识中,这个接口人,就是网关

网关

网关便是代替我们做转接服务的"114"
查询陌生人号码时,我们只知道对方的身份(即IP地址),不知道对方的号码(即MAC地址)。此时,为了方便通话,我们只需要将需求告知114对方的身份,让他替代我们去拨号,实际用起来可以发现我们并不需要知道对方的号码,只需要有一个中介人可以提供转接服务,而这个人的号码是114。

对应关系:
电话号码:MAC地址
身份:IP地址
114转接:网关

回到网络知识中,我们访问跨网段主机的流程是:
发送一个源IP、源MAC为自身,目的IP为对端,目的MAC为网关的流量包,让网关代替我们进行转发即可。

对比电话拨号,相信你已经对三层通信的原理有了一定的了解,下面我们看下真实的交互过程

三层通信的过程

环境介绍

PC1:地址为192.168.10.100,网关配置192.168.10.1。位于交换机的vlan10泛洪域
PC2:地址为192.168.20.100,网关配置192.168.20.1。位于交换机的vlan20泛洪域
LSW1:地址为192.168.10.1、192.168.20.1;分别充当两个vlan的网关
在这里插入图片描述

通信过程

下文介绍PC1访问PC2时完整的通信流程

1、在PC1 ping PC2
2、PC1查询自身arp表,发现没有192.168.2.100的arp条目
在这里插入图片描述
3、PC1通过IP与掩码判断对端跟自己不是同网段
PC1查询自身路由表通过最长掩码匹配原则,得知访问192.168.20.100的下一跳需要发送给192.168.10.1
PC1已经有目的IP地址信息,当前需要知道192.168.10.1的MAC地址信息

4、PC1发送免费ARP请求网关的MAC地址信息
在这里插入图片描述
5、vlanif10回复PC1的arp请求,告知PC1自身的MAC地址
在这里插入图片描述
在交换机上,一个vlanif口会对应一个mac,所以vlanif20的mac是与vlanif10不一样的

6、PC1学习到vlanif10的mac,需要注意的是,在PC1的arp表中,只会也只需要存在192.168.10.1的表项,不需要有192.168.20.100的表项

7、PC1重新封装数据包,源IP、MAC为自身,目的IP为PC2,目的MAC为网关(192.168.10.1)的MAC
在这里插入图片描述
8、交换机从vlanif10(g0/0/1)接收到数据包,首先接收端口通过记录PC1的mac,生成对应的arp与mac条目,方便后续转发,再次声明:交换机通过入接口学习MAC
在这里插入图片描述
9、交换机解析来自PC1的icmp包,发现目的IP是192.168.20.100,对应自身的vlanif20广播域,因此从vlanif20(g0/0/2)口使用免费arp请求192.168.20.100的MAC地址
在这里插入图片描述
10、PC2回复交换机的arp请求,与前文类似,不做赘述,并在自身的arp表项中生成192.168.20.1的条目
在这里插入图片描述
11、交换机收到PC2的arp回应后,通过入接口学习MAC,生成PC2的MAC条目与arp条目
在这里插入图片描述
12、交换机先查询arp表,找到PC2的mac,再使用这个mac查询mac表,找到出接口,将PC1的ICMP包从g0/0/2口转发给PC2。回包过程类似,此处不做赘述。

交换机根据数据包中的源MAC地址学习并生成MAC表项、根据目的MAC进行转发

13、经过上述流程,PC1可正常与PC2进行互访
在这里插入图片描述

写作不易,如果觉得本篇blog有用,请帮忙点赞、收藏、关注
对本文有任何疑问,或需要纠错,欢迎评论私信

技术是用来分享的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值