文章目录

  • 一、二层交换机工作原理
  • 二、什么时候进行洪泛
  • 三、如何判断多台主机是否在一个广播域
  • 四、思科VLAN
  • 五、华为VLAN
  • 六、华为三种接口的区别
  • 七、关于接口为混杂模式的实验


一、二层交换机工作原理

简单来说,基于源mac地址学习,基于目标mac地址转发
即数据帧进入交换机时,首先查看源mac,将对应的接口进行记录,然后查看目标MAC,查询本地的MAC地址表,基于表中的记录单播转发到对应的接口中。
注:交换机本地的MAC地址表称为CAM表,是由VLAN ID+MAC地址+接口编号进行hash运算后的二进制

二、什么时候进行洪泛

1,广播
目标MAC地址为全F时,进行洪泛,比如ARP包
2,组播
目标MAC为组播MAC,但条件为当网络中没有组播部署时,才进行洪泛
3,未知单播
交换机基于目标MAC转发,目标MAC在交换机的CAM表中不存在时,即位未知单播,进行洪泛。

例如,主机A和B已经通过ARP知道了对方的MAC地址,但由于他们5分钟未进行任何通信,交换机就在CAM表中删除记录,但此时A还是知道B的MAC地址,那么当A再次访问B时,不需要发ARP包,而是一个正常的单播包,但此时交换机已经不知道B的MAC地址对应的接口,那么就会进行洪泛,这种特殊的情况称之为未知单播。
注:因为电脑的ARP表保存时间长于交换机,一般来说,交换机的保存5分钟,电脑的保存2小时。

三、如何判断多台主机是否在一个广播域

看洪泛范围
方法:在一台主机上发广播包,其他电脑上抓包,看是否可以抓到
注意:IP地址在一个网段,不一定在一个广播域。

四、思科VLAN

交换机的缓存表中记录了接口所在的VLAN,因此在交换机内部,不对数据帧贴标签,而是进trunk干道贴标签,出trunk干道看完标签后撕标签。
第一种情况:交换机的两个接口A,B属于vlan 2,当两个接口下的主机互相通信时,从A接口进入的数据包,直接被交换机转发到B接口
第二种情况:两台交换机底下各有一台主机,所在的接口A,B都属于vlan2,那么当数据包进入A接口后,进入trunk干道时,贴上vlan2的标签,数据包出trunk干道进入另一个交换机时,知道它属于vlan2,先撕掉标签,然后进入交换机转发到B接口。
思科逻辑配置思路:
1、 交换机上创建VLAN
2、 接口划入VLAN
3、 Trunk干道
4、 VLAN间路由—路由器使用子接口,多层交换机可使用svi
Cisco下交换机的接口只有接入中继模式

五、华为VLAN

华为与思科相反,数据帧在交换机内部时,必须携带标签,出交换机时,trunk干道必须携带标签,混杂接口看配置。
数据包进入接口时,有标签,查允许列表,没有标签,贴此接口的pvid标签
数据包出去接口时,查允许列表,access接口剥离标签,混杂接口配置是否继续携带标签

六、华为三种接口的区别

权限的不同
接入模式可修改PVID不能修改允许列表(只允许和此接口一样的pvid的流量通过),离开时自动剥离标签,如接口属于vlan2,流量进入接口时,贴vlan2标签,只允许vlan2的流量从此接口出,撕标签。
中继模式可修改PVID可修改允许列表必须携带标签,如携带vlan2标签离开接口,携带vlan2标签进入接口
混杂模式可修改PVID可修改允许列表可定义是否标记,如接口pvid为vlan2,也可允许非vlan2的流量出。

七、关于接口为混杂模式的实验

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播


要求:

  1. PC1和PC3所属vlan2,access模式
  2. PC2,4,5,6属于同一网段,PC2和PC4,5,6互通
  3. PC4和PC5互通,但PC5和PC6不通

分析:
vlan的划分如图所示
1,设置PC1和PC3所在接口为access接口,pvid为vlan2
2,设置PC2,4,5,6接口为hybrid接口,华为默认为hybrid模式
3,PC2所在接口pvid为vlan3,不对vlan3,4,5打标签,那么vlan3,4,5的流量下来时会撕标签
4,PC4,5所在接口pvid为vlan4,不对vlan3,4打标签,那么vlan3,4的流量下来时会撕标签
5,PC6所在接口pvid为vlan5,不对vlan3,5打标签,那么vlan3,5的流量下来时会撕标签
:不打标签只是允许流量出接口时不打标签,入接口时还是会打上接口所在pvid的标签
PC2访问PC4时,携带vlan3的标签进sw1,出sw2时撕掉vlan3标签,流量到达PC4,回包时,PC4携带vlan4的标签进sw2,出sw1时撕掉vlan4标签,流量到达PC2
PC2访问PC5,PC6同理
PC5访问PC6时,携带vlan4的标签进sw3,出sw3时PC6所在接口并没有允许vlan4的流量出,故不通。
如何实现vlan2和其他vlan的主机通信?
需通过路由器,我们将sw1连接路由器的接口设置为混杂模式,对vlan2打标签,并且不对vlan3,4,5打标签,那么vlan3,4,5的流量可以正常到达路由器的物理接口,当流量下来时,由于hybrid接口默认不对vlan1的流量打标签,那么流量可以正常去到下边的每一台主机,使用路由器的物理接口作为vlan3,4,5的网关,使用路由器的子接口作为vlan2的网关
配置:
1,三台交换机创建vlan2,3,4,5

[SW1]vlan batch 2 to 5
[SW2]vlan batch 2 to 5
[SW3]vlan batch 2 to 5

2,配置交换机之间的链路为trunk

[SW1]int e0/0/3
[SW1-Ethernet0/0/3]port link-type trunk
[SW1-Ethernet0/0/3]port trunk allow-pass vlan all

[SW2]int e0/0/3
[SW2-Ethernet0/0/3]port link-type trunk
[SW2-Ethernet0/0/3]port trunk allow-pass vlan all
[SW2]int e0/0/4
[SW2-Ethernet0/0/3]port link-type trunk
[SW2-Ethernet0/0/3]port trunk allow-pass vlan all

[SW3]int e0/0/4
[SW3-Ethernet0/0/3]port link-type trunk
[SW3-Ethernet0/0/3]port trunk allow-pass vlan all

3,配置PC1和PC3所在接口为access接口,所属vlan 2

[SW1]int e0/0/1
[SW1-Ethernet0/0/1]port link-type access 
[SW1-Ethernet0/0/1]port default vlan 2

[SW2]int e0/0/1
[SW2-Ethernet0/0/1]port link-type access 
[SW2-Ethernet0/0/1]port default vlan 2

4,配置PC2所在接口pvid为vlan3,不对vlan3,4,5打标签

[SW1]int e0/0/2
[SW1-Ethernet0/0/2]port hybrid pvid vlan 3
[SW1-Ethernet0/0/2]port hybrid untagged vlan 3 to 5

5,配置PC4,5所在接口pvid为vlan4,不对vlan3,4打标签

[SW2]int e0/0/2
[SW2-Ethernet0/0/2]port hybrid pvid vlan 4
[SW2-Ethernet0/0/2]port hybrid untagged vlan 3 to 4

[SW3]int e0/0/1
[SW3-Ethernet0/0/1]port hybrid pvid vlan 4
[SW3-Ethernet0/0/1]port hybrid untagged vlan 3 to 4

6,配置PC6所在接口pvid为vlan5,不对vlan3,5打标签

[SW3]int e0/0/2
[SW3-Ethernet0/0/2]port hybrid pvid vlan 5
[SW3-Ethernet0/0/2]port hybrid untagged vlan 3 5

[SW3]display port vlan active 
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port                Link Type    PVID    VLAN List
-------------------------------------------------------------------------------
Eth0/0/1            hybrid       4       U: 1 3 to 4
Eth0/0/2            hybrid       5       U: 1 3 5
Eth0/0/3            hybrid       1       U: 1
Eth0/0/4            trunk        1       U: 1
                                         T: 2 to 5

7,配置sw1连接路由器接口对vlan2打标签,不对vlan3,4,5打标签

[SW1]int e0/0/4
[SW1-Ethernet0/0/4]port hybrid tagged vlan 2
[SW1-Ethernet0/0/4]port hybrid untagged vlan 3 to 5

8,配置路由器子接口

[R1]int g0/0/0.2 
[R1-GigabitEthernet0/0/0.2]dot1q termination vid 2
[R1-GigabitEthernet0/0/0.2]ip address 10.1.1.1 24
[R1-GigabitEthernet0/0/0.2]arp broadcast enable//子接口默认不相应arp请求
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 20.1.1.1 24

7,配置DHCP,vlan2网段为10.1.1.0/24

[R1]dhcp enable
[R1]ip pool v2
[R1-ip-pool-v2]gateway-list 10.1.1.1
[R1-ip-pool-v2]dns-list 8.8.8.8
[R1-ip-pool-v2]network 10.1.1.0 mask 24
[R1-ip-pool-v2]q
[R1]ip pool v1
[R1-ip-pool-v1]gateway-list 20.1.1.1
[R1-ip-pool-v1]dns-list 8.8.8.8
[R1-ip-pool-v1]network 20.1.1.0 mask 24
[R1-ip-pool-v1]q
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]dhcp select global 
[R1-GigabitEthernet0/0/0]int g0/0/0.2
[R1-GigabitEthernet0/0/0.2]dhcp select global

测试:

IP地址

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播_02


大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播_03


大型网络为什么禁用VLAN1 为什么要禁用networkmanager_数据帧_04


大型网络为什么禁用VLAN1 为什么要禁用networkmanager_数据帧_05


大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播_06


大型网络为什么禁用VLAN1 为什么要禁用networkmanager_单播_07


pc1 ping pc2,3

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播_08


pc2 ping pc4,5,6

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_组播_09


pc4 ping pc5

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_单播_10


pc5 ping pc6

大型网络为什么禁用VLAN1 为什么要禁用networkmanager_单播_11