VLAN:虚拟局域网,工作在第二层跟第三层,数据链路层,网络层。
不同VLAN之间通信,需要网络层三层交换机+路由器。
逻辑上的设备和用户,也就是说设备和用户不受物理位置的限制。
VLAN的种类
静态VLAN:常用,根据端口来进行划分
动态VLAN:基于MAC地址,一般不用。
华为设备为例
vlan:0-4095,保留地址,仅限系统使用,用户既不能查看,也不能使用这两个vlan。
1:是华为设备的默认vlan,用户可以使用,但无法删除。
2-4094:用户可以自定义的vlan就是2到4094.
静态模式vlan的两种类型:
access简称a口:用户交换机和路由器之间,以及交换机和终端设备之间,只能允许相同的vlan进行通信。access只能属于一个vlan,也就是说接口的vlanID只能是一个。
trunk:交换机和交换机之间的接口,可以设备vlan的范围。
hybir:华为设备的默认配置,不需要手动配置。
port link-type access 把接口静态vlan的类型配置成access。先声明接口vlan的类型。然后才能配置vlan的范围。
interface Ethernet0/0/1
port link-type access
port default vlan 10
这个接口类型是access,你要更改接口的类型必要把access的vlanID删除
第一步接入链路和中继链路怎么工作的
1.接入口设置vlan标签
2.在中级链路,会有指定vlan标签号,集中在中继链路一起传输。
3.除了中继链路之后,要和对应的vlanID进行匹配,匹配到之后,数据放行,同时会褪去标签。
tag表和untag表
tag表:打标签,untag表:脱标签。
数据帧进口
先查询有无标签,有标签,再查tag,有则放通。无则丢弃
数据帧出口
查untag表,有标签则脱标签,无标签则查询tag表,有则放通,无则丢弃。
port trunk allow-pass vlan all 2-4094 允许所有vlan标签通过。
port trunk allow-pass vlan 10 20 30 只允许vlan的标签是10 20 30通过,其他的一律丢弃。
三层交换机的原理
二层交换加三层转发。
交换机和路由器的结合体。核心是:实现不同vlan之间进行通信。
三层交换机:能够在网络层上进行转发和路由的交换机,结合了二层交换机的mac地址转发和路由的ip地址转发,更强大的网络处理能力。
mls头目:FIB邻接关系表(路由表)+mac地址表。
三层交换机转发,依据就是mls头目,才能转发数据。其中包含ip地址和mac地址
FIB:就是ip地址和vlanID的对应关系。
领接关系表:
三层交换机配置ip地址必须要有vlan,基于vlan配置虚拟IP地址。
路由表找转发条目
mac地址表:设备的地址
举例
1.源mac地址和目的mac地址源IP和目的IP
2.三层交换机拆包,mls条目:10.0.0.1/24 MACB
PCA----PCB
数据包从源设备发送到网络中三层交换机。
三层交换机根据数据包的目标IP地址来查找路由表
不同网段CPU查询路由表,cpu来确定下一跳的地址。
数据包转发出去到下一跳的路由器,这叫路由过程,cpu转发数据包。
三层交换机:一次路由,多次交换。
交换过程
数据包转发之后,送达到网络中的二层交换机,也可以是三层交换机。
交换机:根据数据包的mac地址查找mac地址表,并确认数据包的下一个接口,继续到达下一个接口之后继续通过交换机之间的转发,到达目标设备。
1.不同网段都要靠路由转发,数据包在网络上是分段传播发送的,数据包会分成很多段。
第一个数据包包含:源ip,目的ip,源mac和目的mac。
2路由转发,第一个数据知道了目的ip的地址和mac地址,会形成MLS条目。已经知道了网段怎么走,不需要路由器在转发后续的数据包,直接走交换机的mac地址转发就可以到目标设备。以上都是由硬件完成的,路由是由cpu完成的,交换是由交换机芯片完成的,
三层交换机原理
1.不同网段通过路由转发。数据已经到达
2.形成MLS条目,MAC地址:目的MAC地址
3.数据包只需要根据目的MAC地址进行转发,走二层转发即可。不再需要路由器了。
路由负责决定数据包整体路径,该怎么转发,下一跳是什么,由路由器决定,从而实现跨越不同的网段。负责在每个网段内进行快速的数据包转发。通过MAC地址准确的转发和交换。
基于物理端口的虚拟端口。
物理端口的性能和功能可以被虚拟端口继承使用,但是虚拟端口是逻辑上的概念。
int vlanif 10 :基于vlan 10创建的一个虚拟接口。
实验
LSW1
<Huawei>undo t m Info: Current terminal monitor is off.
<Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]v b 10 20 Info: This operation may take a few seconds. Please wait for a moment...done. [Huawei]int g 0/0/1
[Huawei-GigabitEthernet0/0/1]p l a
[Huawei-GigabitEthernet0/0/1]p d v 10
[Huawei-GigabitEthernet0/0/1]int g 0/0/2
[Huawei-GigabitEthernet0/0/2]p l a
[Huawei-GigabitEthernet0/0/2]p d v 20
[Huawei-GigabitEthernet0/0/2]int g 0/0/3
[Huawei-GigabitEthernet0/0/3]p l t
[Huawei-GigabitEthernet0/0/3]p t a v a
LSW2
<Huawei>undo t m Info: Current terminal monitor is off.
<Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]sys ^ Error:Incomplete command found at '^' position.
[Huawei]v b 10 20 30 Info: This operation may take a few seconds. Please wait for a moment...done.
[Huawei]int g 0/0/1
[Huawei-GigabitEthernet0/0/1]p l t
[Huawei-GigabitEthernet0/0/1]p t a v a
[Huawei-GigabitEthernet0/0/1]q
[Huawei]int vlanif 10
[Huawei-Vlanif10]ip ad
[Huawei-Vlanif10]ip address 192.168.10.1 24
[Huawei-Vlanif10]q
[Huawei]int vlanif 20
[Huawei-Vlanif20]ip addr
[Huawei-Vlanif20]ip address 172.16.10.1 24
[Huawei-Vlanif20]q
[Huawei]int g 0/0/2
[Huawei-GigabitEthernet0/0/2]p l a
[Huawei-GigabitEthernet0/0/2]p d v 30
[Huawei-GigabitEthernet0/0/2]q
[Huawei]int vlanif 30
[Huawei-Vlanif30]ip ad
[Huawei-Vlanif30]ip address 10.0.0.10 24
[Huawei-Vlanif30]q
[Huawei]ip rou
[Huawei]ip route
[Huawei]ip route-static 0.0.0.0 0.0.0.0 10.0.0.20 [Huawei]
AR1
<Huawei>undo t m Info: Current terminal monitor is off.
<Huawei>sys Enter system view, return user view with Ctrl+Z.
[Huawei]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip ad
[Huawei-GigabitEthernet0/0/0]ip address 10.0.0.20 24
[Huawei-GigabitEthernet0/0/0]int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add
[Huawei-GigabitEthernet0/0/1]ip address 171.16.10.1 24
[Huawei-GigabitEthernet0/0/1]int g 0/0/2
[Huawei-GigabitEthernet0/0/2]ip addr
[Huawei-GigabitEthernet0/0/2]ip address 170.16.10.1 24
[Huawei-GigabitEthernet0/0/2]q
[Huawei]ip rou
[Huawei]ip route-
[Huawei]ip route-static 0.0.0.0 0.0.0.0 10.0.0.10
[Huawei]