本文是我在学习过程中记录学习的点点滴滴,目的是为了学完之后巩固一下顺便也和大家分享一下,日后忘记了也可以方便快速的复习。
网络工程师从入门到入狱
- 前言
- 一、vlan与vlanif
- 二、路由器之三层通信方式
- 2.1、路由器物理接口
- 2.2、子接口
- 2.3、vlanif
- 三、数据包转发过程中的详细变化
- 3.1、源和目标IP地址
- 3.2、源和目标MAC地址
- 3.3、场景模拟数据包转发过程
- 四、单播帧、广播帧、组播帧和转发、泛洪、丢弃以及广播域、冲突域
- 4.1、帧类型
- 4.2、网络设备如何处理这些帧:
- 4.3、 广播域和冲突域:
- 4.4、 这些概念之间的关系:
- 4.5、举例说明:
- 4.5.1、环路(Loop)是什么?
- 4.5.2、 广播风暴(Broadcast Storm)是什么?
- 4.5.3、交换机如何检测和处理环路?
- 4.5.4、丢弃数据帧的原因和作用
- 4.5.5、举例说明:
- 五、总结
前言
今天学习的主要是关于网络基础知识的理解和应用
一、vlan与vlanif
三层交换机由交换模块和路由模块组成,一个vlan对应一个子网,一个子网对应一个网关vlanif接口,然后配置网关就是给vlanif配置,同一台交换机vlanif之间可直接内部通信
二、路由器之三层通信方式
因为路由器物理接口一个接口对应一个vlan的网关,使用存在一个vlan就要占用一个路由器物理接口,因此出现了子接口的形式进行三层数据转发。一个物理接口可以划分多个子接口,配置子接口为Trunk对接交换机接口,放通允许VLAN列表,子接口配置网关IP地址即可,子接口需要配置对应的VLAN,还有开启ARP广播
2.1、路由器物理接口
2.2、子接口
# 子接口配置
# 进入物理接口的子接口
interface GigabitEthernet0/0/0.10
# 终结VLANtag,接收时去掉tag,发送时打上tag
dot1q termination vid 10
# 配置地址,子接口可以配置三层地址
ip address 192.168.10.254 255.255.255.0
# 开启子接口的接收广播报文,如arp报文,默认关闭
arp broadcast enable
2.3、vlanif
# 创建VLAN
vlan 10
# 配置VLANIF接口
int vlan 10
ip address 192.168.10.254 24
三、数据包转发过程中的详细变化
当一台电脑发送数据包到另一台电脑时,数据包在网络中经过不同的设备(如交换机、路由器)时,源MAC地址、目标MAC地址、源IP地址和目标IP地址都会在不同阶段发生变化。下面是详细的描述:
3.1、源和目标IP地址
源IP地址: 发送数据包的主机的IP地址。在整个数据传输过程中,源IP地址是固定不变的。
目标IP地址: 接收数据包的主机的IP地址。目标IP地址也是固定不变的,直到数据包到达最终的目的地。
这两个IP地址不会在数据包的传输过程中改变,无论数据包穿过多少个路由器。
3.2、源和目标MAC地址
源MAC地址: 当前发送数据包设备的MAC地址。在数据包发送的过程中,每当数据包进入新的链路(经过路由器的接口),源MAC地址会变成当前设备的MAC地址。
目标MAC地址: 当前数据包的下一跳设备的MAC地址。每次经过一台路由器或交换机时,目标MAC地址会更新为下一跳设备的MAC地址。
MAC地址仅在数据链路层中有效,属于局部链路的地址。因此,在每一段链路(从一个设备到另一个设备)中,MAC地址会发生变化。
3.3、场景模拟数据包转发过程
当数据包经过三层交换机或者路由器时,Mac地址都会变化,此处如果加一个三层交换机,他的源目Mac地址也会改成他自己的和下一条路由器的Mac地址
场景:假设主机A(IP地址:192.168.1.2,MAC地址:MAC-A)要发送数据包到主机B(IP地址:192.168.2.2,MAC地址:MAC-B),它们位于不同的子网,中间通过一个路由器R1(其接口分别连接两个子网,MAC地址为MAC-R1)。
步骤 1:
主机A发送数据包到路由器R1(同一子网内)
源IP地址:192.168.1.2(主机A的IP地址)
目标IP地址:192.168.2.2(主机B的IP地址)
源MAC地址:MAC-A(主机A的MAC地址)
目标MAC地址:MAC-R1(路由器R1在主机A所在子网的接口的MAC地址)
过程: 主机A首先检查目标主机B的IP地址(192.168.2.2)是否在同一个子网中。由于主机A和主机B不在同一个子网,主机A会将数据包发送到默认网关(通常是路由器R1)。
主机A使用ARP协议来获取路由器R1的MAC地址,然后将目标MAC地址设置为R1的MAC地址。数据包在这一步中通过交换机传送到路由器R1。
步骤 2:
路由器R1接收数据包并转发到下一跳(不同子网)
源IP地址:192.168.1.2(保持不变)
目标IP地址:192.168.2.2(保持不变)
源MAC地址:MAC-R1(路由器R1的MAC地址)
目标MAC地址:MAC-B(主机B的MAC地址)
过程: 路由器R1接收到数据包后,它会检查数据包的目标IP地址(192.168.2.2)。路由器R1发现目标主机B在不同的子网内,因此会通过路由表找到通往192.168.2.0/24网络的接口。
路由器R1在转发数据包之前,会更改数据包的源和目标MAC地址。新的源MAC地址是路由器R1的接口MAC地址,新的目标MAC地址是主机B的MAC地址。
路由器R1使用ARP协议来获取主机B的MAC地址(MAC-B),并将数据包转发给目标主机B。
步骤 3:
主机B接收到数据包
源IP地址:192.168.1.2(保持不变)
目标IP地址:192.168.2.2(保持不变)
源MAC地址:MAC-R1(路由器R1的MAC地址)
目标MAC地址:MAC-B(主机B的MAC地址)
过程: 主机B接收到数据包后,检查目标MAC地址是否与自己的MAC地址(MAC-B)一致。如果一致,主机B会继续检查目标IP地址,并将数据包上交给传输层进行处理。
总结:
IP地址变化:
源IP地址和目标IP地址在整个数据包传输过程中保持不变,因为IP地址是网络层的地址,用于标识端到端的通信双方。
MAC地址变化:
源MAC地址:在每段链路中,源MAC地址是当前发送设备的MAC地址(例如主机A、路由器R1)。
目标MAC地址:在每段链路中,目标MAC地址是下一跳设备的MAC地址(例如路由器R1、主机B)。MAC地址是数据链路层的地址,适用于局域网的链路。
每次数据包经过一个新的链路时,MAC地址会在该链路上重新定义,但IP地址则在整个网络传输过程中保持不变。
四、单播帧、广播帧、组播帧和转发、泛洪、丢弃以及广播域、冲突域
总的来说就是交换机会根据自己的Mac地址表来发送不同的帧,Mac地址表有记录这个数据包的目标Mac地址则发送单播帧到指定端口,这也叫转发;
如果Mac地址表没有,则需要发送ARP请求广播帧到广播域内的所有设备,ARP请求帧是广播帧,因为它需要找到某台设备的MAC地址,这也叫做泛洪
现在大部分使用交换机进行终端接入,使用路由器进行路由寻址。交换机工作在数据链路层,通过数据帧进行数据传输,通过维护MAC地址表进行数据转发,有三种处理方式:转发、泛洪、丢弃。有三种数据帧类型:单播帧、广播帧、组播帧。
4.1、帧类型
帧是数据链路层(第2层)传输的数据单位,常见的帧类型有:
单播帧(Unicast Frame):
单播是从一个设备发送到另一个设备的通信。MAC地址唯一对应接收设备,网络设备(如交换机)知道如何将这个帧精确地传递到目标地址。
例子:一台PC发送给另一台PC的消息就是单播。
广播帧(Broadcast Frame):
广播帧是发送给网络中所有设备的帧,它的目的MAC地址是 FF:FF:FF:FF:FF:FF,这是所有设备都会接收的地址。广播帧会被发送到同一广播域中的所有设备。 例子:ARP请求帧是广播帧,因为它需要找到某台设备的MAC地址。
组播帧(Multicast Frame):
组播帧是发送给一组设备的帧,目标设备属于一个特定的组,并且只有这一组中的设备会接收该帧。组播地址通常以 01-00-5E 开头。 例子:视频流的组播传输通常使用这种方式来减少带宽浪费。
4.2、网络设备如何处理这些帧:
转发(Forwarding):
当交换机接收到帧时,如果目标MAC地址已经存在于它的MAC地址表中,交换机会根据该表将帧准确地转发到对应端口。
单播帧 会被转发到特定端口。
泛洪(Flooding):
当交换机接收到帧并且目标MAC地址不在其MAC地址表中,它会将这个帧泛洪到所有端口(除了接收到该帧的端口)。这种情况多见于第一次通信或地址表还没有建立完毕。
广播帧和组播帧 通常会被泛洪到广播域中的所有设备。
丢弃(Dropping):
如果交换机检测到某些不合法的帧,或出现网络拓扑中的环路,它可能会丢弃这些帧来避免网络拥塞或数据重复。
4.3、 广播域和冲突域:
广播域(Broadcast Domain):
广播域是指网络中,所有可以接收到广播帧的设备组成的区域。广播域的大小决定了广播帧的影响范围。交换机会将同一VLAN的所有端口置于一个广播域中。路由器会隔离广播域,所以每个接口就是一个独立的广播域。
冲突域(Collision Domain):
冲突域是指在共享式网络环境中,同一时间只能有一个设备发送数据的区域。如果两个设备同时发送数据,就会发生冲突(collision),数据包会被破坏。集线器(Hub)工作在这种环境中,所有连接到同一个集线器的设备都在同一个冲突域中。而交换机每个端口都是一个独立的冲突域。
4.4、 这些概念之间的关系:
帧类型和网络域的关系:
单播帧通常只在两个设备之间传输,不会影响到其他设备;而广播帧会传播到同一广播域中的所有设备;组播帧则是传播给一组特定设备,不影响其他设备。泛洪的情况可能出现在MAC地址不明确时,网络设备会采取泛洪的方式来处理单播、组播或广播帧。
广播域和冲突域的作用:
广播域的大小决定了广播帧的传播范围,如果广播域过大,广播流量会增加,影响网络性能。冲突域的大小决定了在某个网络中能否同时有多个设备发送数据,现代交换机可以大大减少冲突域,提升网络效率。
4.5、举例说明:
转发: 当一个PC发送一个单播帧到另一台PC,交换机根据MAC地址表将帧转发到目标设备所在端口。
泛洪: PC发送的帧目标MAC地址不在交换机的MAC地址表中,交换机泛洪这个帧到除接收端口之外的所有端口。
丢弃: 如果交换机检测到网络中有环路,它可能丢弃某些数据帧以防止广播风暴。
4.5.1、环路(Loop)是什么?
环路是在网络拓扑中形成的一个闭合回路,这通常发生在不恰当地连接多个交换机的情况下。例如,假设有两台交换机 A 和 B,它们之间通过两条链路相互连接,这样数据可以从交换机 A 发送到 B,再从 B 返回到 A,形成一个无限循环。
当交换机接收到一个数据帧,并且不知道它的目的MAC地址时,它会泛洪该帧到所有端口。如果网络中存在环路,数据帧会被无限次地在环路中传递,最终导致网络资源被大量消耗,形成广播风暴。
4.5.2、 广播风暴(Broadcast Storm)是什么?
广播风暴是指大量的广播帧(或组播帧)在网络中循环传播,占用大量带宽,阻塞正常的数据传输,甚至可能导致整个网络瘫痪。在环路环境下,由于交换机不断泛洪广播帧,每个帧都会在交换机之间无休止地循环传播,导致以下问题:
网络带宽耗尽: 广播帧持续占用网络带宽,导致其他正常的数据无法传输。
CPU和内存负载增加: 交换机和其他设备需要处理大量的重复帧,造成处理能力的严重超载。
网络设备无法访问: 网络上的设备会因为大量无效的广播流量而无法正常通信,甚至被迫停止工作。
4.5.3、交换机如何检测和处理环路?
为了避免广播风暴,交换机通常使用 生成树协议(STP, Spanning Tree Protocol) 来检测并处理环路问题。STP 的工作原理是通过识别网络中的冗余链路,然后关闭其中的一些链路,确保没有环路发生。详细的过程如下:
BPDU(Bridge Protocol Data Unit): 生成树协议通过在交换机之间发送一种特殊的BPDU帧,来交换拓扑信息。每个交换机会发送并接收BPDU,互相确认彼此的连接情况。
根桥选择: 生成树协议会选举一个 “根桥”(root bridge),这是一台负责管理网络拓扑的交换机。其他交换机会根据到根桥的距离,选择一条最优路径,并关闭其他冗余路径以防止环路。
关闭冗余端口: 一旦检测到环路,生成树协议会将一些不必要的端口置于 “阻塞” 状态,从而打破环路,确保数据帧不会在交换机之间不断循环。
4.5.4、丢弃数据帧的原因和作用
交换机在检测到环路时,会通过生成树协议阻止部分端口转发数据帧,某些帧可能会被丢弃。这是为了防止环路造成的数据风暴。当一个端口被STP阻塞时,该端口不会转发数据帧,除非网络拓扑发生了变化,需要重新打开该端口。
丢弃帧的主要场景:
当交换机在未能及时生成生成树时,帧可能已经开始在环路中循环。这时交换机会丢弃部分帧来防止数据持续泛洪。
生成树协议工作后,某些链路或端口被阻塞,交换机会丢弃那些试图通过阻塞端口传输的数据帧。
4.5.5、举例说明:
未启用生成树协议的网络:假设两台交换机通过两条链路相连。交换机A接收到一个广播帧后,会将它泛洪到所有端口,包括连接到交换机B的端口。交换机B也会将该广播帧泛洪回交换机A,形成环路。如果生成树协议没有启用,这些广播帧会在两台交换机之间无限循环,导致网络崩溃。
启用生成树协议的网络:交换机A和B通过生成树协议发现了网络中的环路,并关闭其中一条链路。这样广播帧不会在环路中循环,冗余链路被阻塞,网络保持正常运行。
通过丢弃帧或阻塞端口,交换机能够有效防止环路引发的广播风暴,确保网络的稳定性和性能。
五、总结
💕 原创不易,还希望各位大佬支持一下 \textcolor{blue}{原创不易,还希望各位大佬支持一下} 原创不易,还希望各位大佬支持一下
👍 点赞,你的认可是我创作的动力! \textcolor{orange}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!
⭐ 收藏,你的青睐是我努力的方向! \textcolor{red}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!
🥕 评论,你的意见是我进步的财富! \textcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!