HCIP-7.0华为交换机技术基础学习

1、交换机工作原理

路由器的作用:构建路由表,根据路由表来进行数据转发。

交换机作用:
1、 构建和维护CAM表项 MAC地址和交换机端口的一个映射表;
2、根据CAM表来进行数据的转发

交换机的工作原理:交换机是基于收到的数据帧中的源MAC地址构建CAM表项,根据目的MAC来进行数据转发。

交换机的5种操作:
1、 学习功能:当交换机接口收到数据帧时,会获取帧的源MAC地址,并和接口进行关联,构建MAC表项。华为一个交换机一个MAC地址,思科可以每个接口一个地址。

[sw2]dis mac-address
MAC address table of slot 0:
-------------------------------------------------------------------------------
MAC Address    VLAN/       PEVLAN CEVLAN Port            Type      LSP/LSR-ID  
               VSI/SI                                              MAC-Tunnel  
-------------------------------------------------------------------------------
5489-98c3-165b 1           -      -      GE0/0/10        dynamic   0/-         
5489-9867-73d0 1           -      -      GE0/0/11        dynamic   0/-         
5489-987a-4315 1           -      -      GE0/0/12        dynamic   0/-         
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 3 

注意:在ensp上模拟先需要设置好PC的IP开机后并且各PC机之间相互接通,才会学习到MAC地址。

静态绑定MAC地址:

[SW1]mac-address static xxxx-xxxx-xxxx GigabiteEthernet 0/0/0 vlan 1

2、过期删除:
当交换机学习到MAC地址后,会构建MAC表项,如果300秒没有收到该MAC地址的帧,就会从MAC表中删除。

[SW1]mac-address aging-time 1000      //修改MAC地址的老化时间
[SW1]dis mac-address aging-time

3、泛洪:如果收到数据帧,目的MAC不在MAC表项中,就会向除接收端口以外的所有接口转发,即泛洪。

  • BUM(报文)broadcast 广播MAC FF-FF-FF-FF-FF-FF ARP协议
  • 未知unicast 单播MAC 第八为0 00-0(已知的MAC就转发,未知的泛洪,路由器收到未知IP就会丢弃),例如:01-8c-c2-00-00-14
  • Multicast 组播MAC 第八位为1,例如:01-8c-c2-01-00-5E

4、转发功能:收到数据帧后,检查目的MAC,如果该MAC存在于自己的MAC表项中,就转发出去。

5、过滤功能:交换从某接口收到数据帧后,不会再从该接口转发,防环。
如果帧的CRC校验失败,就会丢弃。
交换接口可以配置安全,过滤。

冲突域:
交换机隔离冲突域。交换机每个端口隔离传输的数据。交换机一个端口就是一个冲突域。
没有交换机之前,由于使用Hub,相当是用一条总线与各台主机相连。

  • 某时间多个节点同时发送消息,产生冲突。
  • 从任意节点发出的消息都会被发送到其它节点
  • 所有主机共享一条传输通道,无法控制网络中的信息安全

冲突域
数据链路层的报文是数据帧,包含的是硬件的地址和源硬件的地址,在用户量较大时,这些来自不同设备的数据帧将发生严重的拥塞,一个集线器相连的所有主机都属于同一个冲突域,并且属于同一广播域。

广播域,指的是同一网段中所有设备组成的集合。
广播域

交换机与集线器不一样是,交换机的每个端口都是一个独立的冲突域,在不同的端口之间交换帧,并不分割广播域。

1.1、VLAN虚拟局域网

VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。

VLAN技术可以将一个物理局域网在逻辑上划分成多个广播域,也就是多个VLAN。VLAN技术部署在数据链路层,用于隔离二层流量同一个VLAN内的主机共享同一个广播域。它们之间可以直接进行二层通信。而不同VLAN间的主机属于不同的广播域,不能直接实现二层互通。因此,广播报文就被限制在各个相应的VLAN内,同时也提高了网络安全性。
VLAN虚拟局域网
比如我们用VLAN来划分财务部、行政部、市场部、研发部,部门内部可以相互通信,而部门之间不能相互通信。

为了实现用户之间的二层隔离,可以将不同的用户加入不同的VLAN。可实现同一VLAN内端口之间的端口隔离。

VLAN 与子网
通过将IP地址的网络部分进一步划分为若干个子网,可以解决IP地址空间利用率低和两级IP地址不够灵活的问题。

与VLAN相类似的是,子网也可以隔离主机间的通信。属于不同VLAN的主机之间不能直接通信,属于不同的子网的主机之间也不能直接通信。但二者没有必然的对应关系。

联系VLAN子网
区别用于划分二层网络。在配置VLANIF接口的基础上实现路由互通,属于不同LVAN的用户才能互访。用于划分三层网络。只要通过路由实现网络互通,属于不同子网的用户就能互访。
联系同一VLAN内,可以划分一或多个网段。同一子网内,可以划分一或多个VLAN。

VLAN的作用:

  • 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
  • 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
  • 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。
  • 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。

1.1.1、VLAN帧格式

VLAN帧格式
TPID:Tag Protocol Identifier,2字节,固定取值,0x8100,是IEEE定义的新类型,表明这是一个携带802.1Q标签的帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。

TCI:Tag Control Information,2字节。帧的控制信息,详细说明如下:

Priority:3比特,表示帧的优先级,取值范围为0~7,值越大优先级越高。当交换机阻塞时QoS,优先发送优先级高的数据帧。
CFI:Canonical Format Indicator,1比特。CFI表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。用于区分以太网帧、FDDI(Fiber Distributed Digital Interface)帧和令牌环网帧。在以太网中,CFI的值为0。

类型描述
TPID2字节,固定取值,0x8100,表明这是一个携带802.1Q标签的帧。
Priority表示帧的优先级,取值范围为0~7,值越大优先级越高。
CFI1比特。CFI表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。
VLAN ID12比特,取值范围为0~4095,但是0和4095在协议中规定为保留的VLAN ID。

VLAN的链路类型

VLAN的链路类型描述
Access链路标准以太网帧(untagged frame),用于交换机和PC相连
Trunk 链路有VLAN标记的以太网帧(tagged frame),用于交换机和交换机相连
Hybrid链路华为设备的特殊的有VLAN标记的以太网帧(tagged frame),即可以用于交换机和PC相连,也可以用于交换机和交换机相连。
链路类型描述
接入链路(Access Link)连接主机和交换机的链路称为接入链路。主机不支持tagged frame帧。
干道链路(Trunk Link)连接交换机和交换机的链路称为干道链路。干道链路上通过的帧一般为带Tag的VLAN帧。服务支持tagged frame帧。
Hybrid混杂端口华为设备的特殊的r接入链路和干道链路的混和体

1.1.2、VLAN的划分方式:

  • 基于接口划分VLAN: 根据交换机接口分配VLAN ID。配置简单,可以用于各种场景。
  • 基于MAC划分VLAN: 根据报文的源MAC地址分配VLAN ID。经常用在用户位置变化,不需要重新配置VLAN的场景。
  • 基于子网划分VLAN: 根据报文的源IP地址分配VLAN ID。一般用于对同一网段的用户,进行统一管理的场景。
  • 基于协议划分VLAN: 根据报文的协议类型分配VLAN ID。适用于对具有相同应用或服务的用户,进行统一管理的场景。
  • 基于匹配策略划分VLAN:根据指定的策略(譬如匹配报文的源MAC、源IP和端口)分配VLAN ID。适用于对安全性要求比较高的场景。

1.1.3、PVID

PVID英文解释为Port-base VLAN ID,是基于端口的VLAN ID,一个端口可以属于多个vlan,但是只能有一个PVID,收到一个不带tag头的数据包时,会打上PVID所表示的vlan号。

PVID的作用只是在交换机从外部接受到可以接受Untagged 数据帧的时候给数据帧添加TAG标记用的,在交换机内部转发数据的时候PVID不起任何作用
在这里插入图片描述

可以把PVID叫做默认vlan id。

[SW1]vlan batch 10 20                 创建两个vlan(10,20)
[SW1]undo info-center enable           //关闭系统信息
language-mode Chinese          //中文信息
[SW1]int e0/0/2
[SW1-Ethernet0/0/2]port link-type access   //配置接口类型为access
[SW1-Ethernet0/0/2]port default vlan 10    //配置接口的缺省VLAN 10并将接口加入到指定VLAN
int e0/0/3
port link-type access                    
port default vlan 10                   
int e0/0/4
p l a 
p d v 20
[SW1]dis port vlan active
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port                Link Type    PVID    VLAN List
-------------------------------------------------------------------------------
Eth0/0/1            trunk        1       U: 1
                                         T: 10 20  出主向允许1020的tag
Eth0/0/2            access       10      U: 10     入方向去除10的tag
Eth0/0/3            access       10      U: 10
Eth0/0/4            access       20      U: 20

T=TAG U=UNTAG非tag处理

交换机int e0/0/2加入vlan 10
接受主机PC1发送的Untagged 数据帧的时候给数据帧添加TAG标记。这里添加的是PVID 10。
在这里插入图片描述
在这里插入图片描述
e0/0/2接口收到untag标准以太网帧,打上数据帧PVID 10。

1.1.4、Access端口类型

主要用在Access交换机与主机host之间。

Access端口收发数据帧的规则如下:
(1)在收数据方向:

  • 如果收的是untag数据,会打上此接口的vlan id进行接收,默认是vlan 1,可以修改。
  • 如果是tag数据,比较tag数据vlan id与此接口vlan id是否一致,一致则接收,否则丢弃。

(2)在发数据方向:
首先比较待发数据的vlan id。

  • 如果和此接口vlan id一致,则剥离标签,并以untag形式发送;
  • 如果和此接口vlan id不一致,则不发。

Access端口收发数据
入方向:PC1发一个untag的数据给交换机SW1,交换机SW1的G0/0/2收到此数据,会默认打上PVID 10的tag。

出方向:首先比较待发数据的vlan id(PVID 10),交换机G0/0/3端口的PVID也是10,则剥离tag,发untag数据给主机PC2。

Access端口收发数据2

入方向:SW5发一个tagPVID 10的数据给交换机SW1,交换机SW1的G0/0/5收到此数据,比较tag数据vlan id与此接口vlan id是否一致,一致则接收。

出方向:首先比较待发数据的vlan id(PVID 10),G0/0/2、G0/0/3端口的PVID也是10,则剥离tag,发untag数据给主机PC1、PC2。

总结Access端口收发数据帧的规则

  • 如果该端口收到对端设备发送的帧是untagged(不带VLAN标签),交换机将强制加上该端口的PVID。
  • 如果该端口收到对端设备发送的帧是tagged(带VLAN标签),交换机会检查该标签内的VLAN ID。当VLAN ID与该端口的PVID相同时,接收该报文。当VLAN ID与该端口的PVID不同时,丢弃该报文。
  • Access端口发送数据帧时,总是先剥离帧的Tag,然后再发送。Access端口发往对端设备的以太网帧永远是不带标签的帧`。

1.1.5、Trunk端口类型

Trunk 交换机之间的链路。
Trunk Link有两个作用:

  • 中继作用:把VLAN报文透传到互联的交换机。
  • 干线作用:一条Trunk Link上可以传输多个VLAN的报文。

Trunk端口收发数据帧的规则
常用在交换机与交换机之间连接,Trunk端口类型允许发送多个tag数据出去。
(1)在收数据方向:

  • 如果收的是untag数据,会打上此接口的vlan id进行接收,默认是vlan 1,可以修改。
  • 如果是tag数据,首先查看此接口的列表是否存在此vlan id,如果存在,则接收,否则丢弃。

untag数据:当Trunk端口收到帧时,将打上端口的PVID(vlan1)
包含Tag:如果该帧包含Tag(vlan20),则不改变。
没有设置vlan的就是vlan 1。 默认的PVID是1。Ping命令后抓包,没有802.1Q这一项。
untag数据Trunk接口

(2)在发数据方向:

  • 首先查看此接口的列表,如果待发数据的vlan id 在此列表中,则允许发送!否则不会从此接口发送。
  • 如果数据允许发送,则比较此待发数据的tag是否和此接口vlan id是否一致:
    • 一致则发untag数据;
    • 否则发tag数据

发数据方向:
trunk发数据方向
Trunk端口收发数据帧流程图:
Trunk接口流程图

以上比较难以在文字上理解,我们通过案例进行分析。
在这里插入图片描述

[SW1]vlan batch 10 20         //创建两个vlan(10,20)
[SW1]int e0/0/1
[SW1-Ethernet0/0/1]po link-type trunk          //配置接口类型为trunk。
[SW1-Ethernet0/0/1]port trunk allow-pass vlan 10 20     //将接口加入到指定的VLAN中。
[SW1-Ethernet0/0/1]clear configuration interface Ethernet 0/0/2    //清除0/0/2前面的配置
int e0/0/2
undo shutdown           //开启接口
int e0/0/2
port link-type access 
port default vlan 10
int e0/0/3
p l a
p d v 10
int e0/0/4
p l a
p d v 20

SW2
Int e0/0/1
po link-type trunk
port trunk allow-pass vlan 10 20            //华为设备开启allow,VLAN 1才能通过,否则不行。
<SW2>dis vlan
VID  Status  Property      MAC-LRN Statistics Description      
--------------------------------------------------------------------------------
1    enable  default       enable  disable    VLAN 0001                         
10   enable  default       enable  disable    VLAN 0010                         
20   enable  default       enable  disable    VLAN 0020  
<SW2>dis port vlan ac
T=TAG U=UNTAG
-------------------------------------------------------------------------------
Port                Link Type    PVID    VLAN List
-------------------------------------------------------------------------------
Eth0/0/1            trunk        1       U: 1
                                         T: 10 20
Eth0/0/2            access       10      U: 10
Eth0/0/3            access       10      U: 10
Eth0/0/4            access       20      U: 20

T=TAG U=UNTAG非tag处理

<SW2>dis vlan summary
static vlan:
Total 3 static vlan.
  1 10 20 

SW1和SW2互连的端口为Trunk端口,
PC1:PC1发一个untag的数据给交换机SW1,交换机SW1的G0/0/2收到此数据,会默认打上PVID 10的tag。

int e0/0/1
port trunk pvid vlan 10                   //修改trunk PVID,默认是1。

注意:
Access端口类型只允许1种vlan id发untag数据出去;Trunk端口类型允许发送多个tag数据出去。

1.1.6、Hybird端口类型

Hybrid端口既可以连接主机,又可以连接交换机。思科叫私有VLAN。
Hybrid端口可以以Tagged 或Untagged方式加入VLAN 。
Hybrid接口和Trunk接口在很多应用场景下可以通用,但在某些应用场景下,必须使用Hybrid接口。比如在灵活QinQ中,服务提供商网络的多个VLAN的报文在进入用户网络前,需要剥离外层VLAN Tag,此时Trunk接口不能实现该功能,因为Trunk接口只能使该接口缺省VLAN的报文不带VLAN Tag通过。
Hybird端口类型

(1)在收数据方向:(1)如果收的是untag数据,打上此接口的vlan id进行接收,默认是vlan 1,可以修改。如果是tag数据,首先查看此接口列表是否存在此vlan id,存在则接收,否则丢弃;

(2)在发数据方向:首先查看,此接口的列表,如果待发数据的tag在此列表中,则发送,否则不处理;

Hybrid端口收发数据帧的规则如下:
1.当接收到对端设备发送的不带Tag的数据帧时,SW1添加PVID,如果PVID在允许通过的VLAN ID列表中,则接收该报文,否则丢弃该报文。当接收到对端设备发送的带Tag的数据帧时,检查VLAN ID是否在允许通过的VLAN ID列表中。如果VLAN ID在接口允许通过的VLAN ID列表中,则接收该报文,否则丢弃该报文。

2.Hybrid端口发送数据帧时,将检查该接口是否允许该VLAN数据帧通过。如果允许通过,则可以通过命令配置发送时是否携带Tag。

配置port hybrid tagged vlan vlan-id命令后,接口发送该vlan-id的数据帧时,不剥离帧中的VLAN Tag,直接发送。该命令一般配置在连接交换机的端口上。

配置port hybrid untagged vlan vlan-id命令后,接口在发送vlan-id的数据帧时,会将帧中的VLAN Tag剥离掉再发送出去。该命令一般配置在连接主机的端口上。

在这里插入图片描述

SW1配置:

int e0/0/1
port hybrid tagged vlan 10 20 100       //允许vlan 10、20、100标记的帧通过的标签
clear configuration interface Ethernet 0/0/2         //清除0/0/2接口配置
int e0/0/2
un shutdown                          //需要启动
port hybrid pvid vlan 10             // 接收帧打上pvid=vlan 10的标签
port hybrid untagged vlan 10        //发出去帧去除vlan10的标签,发给主机
int e0/0/3
port hybrid pvid vlan 10 
port hybrid untagged vlan 10
int e0/0/4
port link-type access
port default vlan 20
[SW1]display port vlan
Port                    Link Type    PVID  Trunk VLAN List
-------------------------------------------------------------------------------
Ethernet0/0/1           hybrid       1     -                                   
Ethernet0/0/2           hybrid       10    -                                   
Ethernet0/0/3           hybrid       10    -                                   
Ethernet0/0/4           access       20    -                    

[SW1]dis port vlan ac
-------------------------------------------------------------------------------
Port                Link Type    PVID    VLAN List
-------------------------------------------------------------------------------
Eth0/0/1            hybrid       1       U: 1
                                         T: 10 20
Eth0/0/2            hybrid       10      U: 1 10
Eth0/0/3            hybrid       10      U: 1 10

SW 2配置:

vlan batch 10 20 100
clear configuration interface Ethernet 0/0/1
int e0/0/1
un sh
port hybrid tagged vlan 10 20 100      //允许vlan 10、20、100标记的帧通过的标签。    

int e0/0/2
port hybrid pvid vlan 20 
port hybrid untagged vlan 20 100

int e0/0/3
port hybrid pvid vlan 100
port hybrid untagged vlan 10 100

int e0/0/8
port hybrid pvid vlan 100
port hybrid untagged vlan 1 10 20 100     //发出去帧去除10\20\100的标签,发给服务器
[SW2]dis port vlan ac
-------------------------------------------------------------------------------
Port                Link Type    PVID    VLAN List          PVID是需要打的标签
-------------------------------------------------------------------------------
Eth0/0/1            hybrid       1       U: 1
                                         T: 10 20 100传出去的数据帧允许1020100的标签   
Eth0/0/2            hybrid       20      U: 1 20
Eth0/0/3            hybrid       100     U: 1 100
Eth0/0/4            hybrid       1       U: 1
Eth0/0/5            hybrid       1       U: 1
Eth0/0/6            hybrid       1       U: 1
Eth0/0/7            hybrid       1       U: 1
Eth0/0/8            hybrid       100     U: 1 10 20 100   进来的去除1 10 20 100的标签

1.2、MUX VLAN应用场景和原理

1.2.1、MUX VLAN原理

MUX (multiplex) VLAN是用在二层交换机的网络之间做流量隔离使用的,可以基于vlan做更精准的二层流量分离,以下面拓扑为例:
MUX VLAN应用场景

Separate[ˈsepəreɪt]adj. 单独的;分开的;独立的。principal [ˈprɪnsəpl] n. 最重要的;主要的,n. 主角;当事人;Subordinate [səˈbɔːdɪneɪt] n. 下属;下级。
MUX VLAN主要是为大中型网络进行设计的,一般在大中型企业内有很多职责不同的部门,各个部门之间要求相互独立,但是还有一部分部门之间有互相访问的的需求。对于企业来说,希望企业内部员工之间可以互相交流,而企业客户之间是隔离的,不能够互相访问。

分类备注
主VLAN principal vlanVLAN中被设置成MUX 主vlan可以和任何MUX VLAN内的接口进行通讯,开启principal vlan的端口也叫principal port。
从vlan subordinate VLAN每个从vlan都有一个主vlan。 #互通型:group vlan组vlan,同一个vlan之间可以互相通讯。不同的VLAN是不能访问的;##隔离型: vlan之间不可以通讯。
分类通信范围
主VLAN principal vlan可以与MUX VLAN内所有端口进行通信。
互通型 VLAN可以与主VLAN进行通信,组内同样也可以相互通信,每个互通VLAN必须最少绑定一个主VLAN保证可以三层通信。
隔离型 VLAN只能与主VLAN进行通信,与其他端口是隔离状态,每个互通VLAN必须最少绑定一个主VLAN保证可以三层通信。

1.2.2、MUX VLAN配置

在这里插入图片描述
任务需求:
VLAN10 VLAN20内部可以互相通信
VLAN30为访客网络
所有部门都可以访问服务器

1、二层基本配置:
SW1:

注意建立VLAN
undo info-center enable           //关闭系统信息
language-mode Chinese          //中文信息
sys SW1
vlan batch 10 20 30 100
int g 0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20 100
int g 0/0/2
p l t
p t a v 30 100
int g 0/0/4
p l a
p d v 100

SW2:

undo info-center enable           //关闭系统信息
sys SW2
vlan b 10 20 30 100
int g 0/0/1
p l a
p d v 10
int g 0/0/2
p l a
p d v 10
int g 0/0/3
p l a
p d v 20
int g 0/0/4
p l a
p d v 20
int g 0/0/5
p l t
p t a v 10 20 100

SW3:

sys SW3
vlan b 10 20 30 100
int g 0/0/1
p l a
p d v 30
int g 0/0/2
p l a
p d v 30
int g 0/0/3
p l t
p t a v 30 100

2、配置主从VLAN:
在SW1内建立VLAN100为主VLAN,并且声明vlan10、vlan20为自己的互通型从vlan,vlan30为自己的隔离型从vlan。
SW1

vlan 100
mux-vlan                                //配置该VLAN为MUX VLAN
subordinate separate 30                    //VLAN30为隔离型从VLAN
subordinate group 10 20                   //VLAN10、20为互通弄从VLAN
[SW3-vlan100]dis mux-vlan
Principal  Subordinate    Type         Interface  
-----------------------------------------------------------------------------
100       -           principal   
100       30          separate    
100       10          group       
100       20          group       
-----------------------------------------------------------------------------

然后将通向服务器的端口设为VLAN100(主VLAN),使服务器可以和MUX VLAN内随意部门进行通信。
SW1

interface GigabitEthernet0/0/4
port link-type access
port default vlan 100
port mux-vlan enable                        //使能接口的MUX VLAN功能

然后再SW2和SW3内同样声明各个VLAN的地位。

#SW2
vlan 100
mux-vlan
subordinate separate 30
subordinate group 10 20
int g0/0/1
port mux-vlan enable
int g0/0/2
port mux-vlan enable
int g0/0/3
port mux-vlan enable
int g0/0/4
port mux-vlan enable

 #SW3
vlan 100
mux-vlan
subordinate separate 30
subordinate group 10 20
int g0/0/1
port mux-vlan enable
int g0/0/2
port mux-vlan enable
 #此做法是为了告诉同组设备各vlan规定的角色,以方便对改vlan实行什么态度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

0与1之旅

创作不易请给予一点帮助和鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值