【CCNP】第八章 二层交换

第一节 观察和配置MAC地址

        二层,即OSI第二层数据链路层,数据链路层提出物理编址概念,即MAC地址。

        MAC地址:给每一台设备分配一个物理地址(MAC地址),长度为48bit,用十二位十六进制表示。MAC地址的表现形式大体上分为两种:

  1. XX-XX-XX-XX-XX-XX ,常见于Windows系统下

  2. XXXX-XXXX-XXXX,常见于网络设备中

其中,前24bit用于标识OUI(厂商),后24位由厂商自行定义。

        工作在数据链路层的设备为交换机

                交换机的基本功能为自动学习MAC地址

                交换机转发数据帧依靠MAC地址表,交换机查看源目MAC地址进行数据帧的转发

        交换机查看MAC地址

Switch# show mac address-table

 【CCNP】第八章 二层交换_第1张图片

MAC地址表的来源:

        1.Dynamic:自动学习

                自动学习MAC地址是交换机的基本功能,且无法关闭。

                交换机查看源MAC地址就是自动学习的过程,将源MAC地址和收到该数据帧的接口进行绑定,形成Dynamic的MAC表项

                交换机查看目的MAC地址就是交换过程。

2.Static:静态手动指定

Switch(config)#mac address-table static 6666.6666.6666 vlan 1 int e0/0

                手动指定的MAC表项是永远不会消失的

第二节 VLAN(虚拟局域网)

VLAN:Virtual Local Area Network,虚拟局域网

        在原先物理局域网的基础上进行划分,分隔成几个小的虚拟的局域网

        作用:

                1.提高局域网的安全性

                2.减小广播域

        冲突域和广播域:

                冲突域:常见于Hub上,

                        集线器的所有接口位于一个冲突域中

                        交换机的每个接口是一个独立的冲突域

                广播域:广播报文能够传输的范围

                        交换机的所有接口都位于一个广播域中

                        而路由器的一个接口就是一个广播域

VLAN号范围:1-4094,其中

        1-1001:标准VLAN号,一般用于二层交换机。

        1002-1005:保留VLAN号,用于令牌环网等(几乎用不到)。

        1006-4094:扩展VLAN号,一般用于三层交换机。


VLAN的配置:

        1.VLAN的创建

                在不那么旧的IOS版本上

Switch(config)# vlan x
Switch(config-vlan)# name XX

                在较老IOS版本上(如2950)

Switch# vlan databse
Switch(vlan)# vlan x name y

2.VLAN的删除

                在不那么旧的IOS版本上

Switch(config)# no vlan x

                在较老IOS版本上(如2950)

Switch# vlan databse
Switch(vlan)# no vlan x

查看创建的VLAN信息:

Switch# show vlan brief

3.将某些接口划分进入VLAN中

        默认情况下,交换机的所有接口处在VLAN 1下。

(config)# int e0/0
(config-if)# switchport access vlan 10 # 划分进入VLAN10
(config-if)# switchport mode access # 端口模式改为接入模式

        VLAN预配的删除

                VLAN信息不像路由器保存在running-config中,而是存储在vlan.dat中,因此,交换机清除预配,除了要erase startup-config外,还需要delete flash:vlan.dat。(具体目录通过特权模式下dir看)

第三节 Trunk(干道协议)

 Trunk,干道协议,用于在一条或多条链路上传输多个VLAN的数据

        Trunk会重新封装数据帧,其具体过程为给数据帧一个VLAN标记,标记本数据帧是属于哪个VLAN的

        封装协议分为两种:

                1.802.1Q:公有协议,支持所有的VLAN号(1-4094)

                2.ISL:Cisco私有协议,只支持标准VLAN号(1-1005)

【CCNP】第八章 二层交换_第2张图片

802.1Q封装需要重新计算FCS处的值,需要消耗一定的硬件资源(如CPU),也会带来一定的延迟。  

【CCNP】第八章 二层交换_第3张图片

        ISL封装,不更改原数据帧

                只有Cisco新设备支持ISL,老版本IOS(如vlan database)的设备不支持

        干道配置:

                1.定义干道的封装协议,在Cisco的设备上,默认的封装协议是ISL

(config)# interface e0/2
(config-if)# switchport trunk encapsulation dot1q

                2.修改接口模式

(config)# interface e0/2
(config-if)# switchport mode trunk

本征VLAN:

        Trunk链路传输过程中无VLAN-ID字段内容的VLAN称之为本征VLAN

        默认是VLAN1

        VLAN1的数据子啊经过Trunk链路时是不需要经过802.1Q重封装的

        如果要修改本征VLAN,需要保证:

                1.本征VLAN是基于802.1Q概念的技术,若通过ISL封装,则无本征VLAN概念

                2.两端的本征VLAN id要相同

        本征VLAN的部署:

(config)# interface e0/2
(config-if)# switchport trunk native vlan 20 # 设置本征VLAN为VLAN 20 # 设置本征VLAN为VLAN 20

第四节 DTP(动态中继协议)

DTP协议:

        Dynamic Trunk Protocol,动态中继/干道协议,Cisco交换机是默认开启的。

        Cisco私有协议

        作用:动态协商交换机之间的Trunk链路

        协商内容分为两部分:

                1.接口的类型,协商完毕后接口会成为access/trunk类型

                2.Trunk的封装协议,协商完毕后接口Trunk的封装协议会成为802.1Q/ISL


DTP的四种模式:

Dynamic Desirable :动态主动模式,主动向其它接口要求成为Trunk模式。
​
Dynamic Auto:动态被动模式,被动地响应其它接口的请求,不会主动要求成为
​
On:主动/强行成为干道。
​
Off:主动.强行关闭干道。

        在DTP协商建立Trunk链路时,只需保证两端有一端是主动端即可成功协商Trunk链路。

DTP在Cisco交换机端口的默认模式:

Switch# show interface e0/2 switchport

        Administrative Mode:管理模式

        Operational Mode:运行模式

接口下配置修改DTP模式:

(config)# int e0/2
(config-if)# swichport mode dynamic desirable

DTP协商结果图

DYNAMC DESIRABLE DYNAMIC AUTO ON(TRUNK) OFF(ACCESS)
Dynamc Desirable Trunk Trunk Trunk Access
Dynamic auto Trunk Access Trunk Access
On(Trunk) Trunk Trunk Trunk -
Off(Access Access Access - Access

图-DTP协商结果

第五节 CDP(思科发现协议)

CDP:Cisco Discovery Protocol,思科发现协议,Cisco私有协议

        作用:用于自动发现思科设备

# show cdp neighbor

第六节 VTP(VLAN中继协议)

VTP协议:Vlan Trunking Protocol,VLAN中继/干道协议

        用于自动同步各交换机的VLAN信息

        VTP域名:

                只有VTP域名相同的交换机才会互相同步VLAN信息。

                如果交换机域名为空(还未配置VTP),此时,交换机会自动学习其它交换机的域名

VTP域名的配置:

(config)# vtp domain CCNP

查看VTP信息

# show vtp status

VTP版本:

        VTP支持版本1,版本2,版本3

        默认运行版本1,常用版本2

(config)# vtp version 2

        V1:支持VLAN1-1001(不支持令牌环网)

在旧版本IOS的VTP中,透明模式是不会转发VLAN信息的。

        V2:支持VLAN1-1005

        V3:支持VLAN1-4094

VTP模式:

Server:服务模式
可以修改和删除VLAN信息,也可以任意修改VTP配置
发送和接收VLAN信息,同步VLAN信息。
​
Client:客户模式
不可以修改和删除VLAN信息,可以修改少量VTP配置
发送和接收VLAN信息,同步VLAN信息。
​
Transparent:透明模式
可以修改和删除本地VLAN信息,也可以任意修改VTP配置
转发VTP的VLAN信息,但是不会同步。

        实验BUG解释:

                如若出现VTP信息不同步的情况,则将没有同步到VLAN信息的设备VTP模式先改为透明模式,再改回客户机模式。


VTP的修订号:

【CCNP】第八章 二层交换_第4张图片

每对VTP或VLAN进行修改后,修订号都会改变

        创建、删除、修改VLAN信息,修订号每次都会加1。

        VTP的服务模式和客户模式都会自动同步修订号较高的VLAN信息。


VTP的倒灌:

        由于Client设备无法更改VLAN信息,所以正常情况下都应该是Client向Server同步,因为Client修订号应永远等于或小于Server的修订号

        但是如果出现Client设备的修订号大于Server的修订号,则Server会向Client端同步VLAN信息,这个过程称为VTP倒灌。

        为了防止倒灌现象的发生,新设备在上线前,需要先将设备的VTP模式改为Transparent,再改回Client或者修改VTP域名,并确保修订号归0。

第七节 Etherchannel(以太通道)

Etherchannel:以太通道

        将多条物理链路聚合成一条逻辑链路,当其中的某条物理链路故障后,逻辑链路依旧存在,从而防止单点故障。

        Etherchannel的封装:

        PAGP:端口聚合协议,Cisco私有,支持的物理链路最多8条

        模式:

Desirable:主动
Auto:被动

        LACP:链路聚合控制协议,公有协议,支持的物理链路最多16条,但其中只有8条可以使用,另外8条作为备用链路。

        模式:

Active:主动
Passive:被动

Etherchannel的部署:

        1.确定以太通道的协议和以太通道端口号

int ran e0/2,e1/0
channel-protocol pagp/lacp
channel-group 1 mode desirable/auto/active/passive

        2.将以太通道设置成Trunk

int po1
switchport trunk encapsulation dot1q
switchport mode trunk

Etherchannel的负载方式:

# show etherchannel load-balance
Dst-IP:基于目的IP负载 # 常见于三层交换机
Src-IP: 基于源IP负载 # 常见于三层交换机
Drc-dst-IP:基于源目IP负载,默认方式。# 常见于三层交换机
​
Dst-MAC: 基于目的MAC负载 # 常见于二层交换机
Src-MAC: 基于源MAC负载 # 常见于二层交换机
Src-dst-MAC: 基于源目MAC负载 # 常见于二层交换机
​

调整Etherchannel的负载方式

 (config)# port-channel load-balance xx # 调整负载方式

第八节 STP(生成树协议)

STP,Spanning-Tree PRrotoco:生成树协议

STP技术的产生是为了防止物理链路出现环路,STP会在存在环路的二层网络中构建一个无环的拓扑。

环路的危害:

        1.广播风暴

                由于交换机之间物理链路冗余,造成广播帧不停地在冗余链路之间来回传输,如果交换机的端口指示灯有规律的一同灭闪,则应注意是否发生了广播风暴。

        2.MAC地址表不稳定(翻转)

                交换机从不同接口收到同一个源MAC地址的数据,会导致该MAC地址会出现在多个接口下。

BPDU:

Bridge Protocol Data Unit:网桥协议数据单元,交换机之间会通过BPDU来协商链路。类似于IGP的Hello报文。

【CCNP】第八章 二层交换_第5张图片

BPDU字段解释:

Root ID:标识根交换机的MAC地址,占8字节,由两部分组成。
    Root ID的组成:
        优先级:占2字节,默认值32768,范围0-65535(需要是4096的倍数)
        MAC地址:占6字节,根交换机的MAC地址

Bridge ID:网桥ID,占8字节,由两部分组成
    Bridge ID的组成:
        优先级:占2字节,默认值32768,范围0-65535(需要是4096的倍数)
        MAC地址:占6字节,表明本台交换机的MAC地址(选举本交换机MAC地址中最小的地址)

Port ID:端口ID,占2字节,由两部分组成
    Port ID的组成:
        优先级:占1字节,范围0-255,默认128,递增基数为16
        端口号:如0/0

交换机的接口状态:

Disabled:禁用状态,相当于接口被shutdown
​
Blocking:阻塞状态,逻辑意义上shutdown,默认情况下,端口会在此状态停留20s。不能够接收和发送BPDU、数据帧、参与MAC-address-table
​
Listening:监听状态,表明交换机已得知本接口应当参与数据帧的转发。端口会在本状态下停留15s。接收和发送BPDU,不能够收发数据帧,不参与MAC-address-table
​
Learning:学习状态,接口参与填写MAC-address-table,端口会在本状态下停留15s。接收和发送BPDU,参与MAC-Address-table,不能收发数据帧   
​
Forwarding:转发状态

生成树的算法(重点):

        1.选举根交换机

                BID值最小者优先成为根交换机

                在交换机初始状态下,每台交换机都会互相发送BPDU,初始状态下,大家都会认为自己是根,因此BID=RID。

        选举规则:

                (1)先比较优先级,越小越优

                        优先级范围0-65535,默认是32768

                (2)再比较MAC地址,越小越优

                        根交换机选举完成后,其它的非根交换机不会再发送BPDU报文了,只有根交换机在发送BPDU。

2.选举根端口

        根端口是在所有的非根交换机上选举,同时每台非根交换机只有一个根端口,用于转发BPDU和数据。

        根端口的选举依据:

                (1)比较BPDU接收端口到交换机的路径成本,越小越优

旧标准(不用了,纯了解) 新标准(目前使用)
万兆链路(10G链路) 1 2
1G链路 1 4
100M链路 10 19
10M链路 100 100

                (2)比较对端的BID值(网桥ID值),越小越优

                (3)比较对端的PID值(端口ID值),越小越优

                        端口ID由两部分组成,优先级+端口号

                                先比较优先级,越小越优

                                再比较对端端口ID,越小越优(如e0/x永远比e1/x)要小

3.选举指定端口,并阻塞没有角色的端口

        在每条链路上都需要选举一个指定端口,用于转发BPDU和数据

        (1)根交换机的所有端口全部都为指定端口

        (2)非根交换机上根端口的对端一定是指定端口

        (3)BPDU转发端口到达根交换机的路径成本,越小越优

        (4)本端的BID值越小越优

        (5)本端的PID值越小越优


例:生成树选举过程

【CCNP】第八章 二层交换_第6张图片

具体选举过程:

        1.选举根交换机

                比较各交换机的BID值,发现aabb.cc00.1000,即SW1的MAC地址最小,因此SW1作为根交换机。

        2.选举根端口

                SW2:

                        SW2的e0/0端口到根交换机的路径成本为100,e0/1端口到根交换机的路径成本为300,因此,根据路径成本越小越优的道理,我们选择e0/0端口作为SW2的根端口。

                SW3:

                        SW3的e0/1端口到根交换机的路径成本为100,e0/0端口到根交换机的路径成本为300,因此,根据路径成本越小越优的道理,我们选择e0/1端口作为SW2的根端口。

                SW4:

                        SW4的e0/1端口到根交换机的路径成本为200,e0/2端口到根交换机的路径成本为200,因此,根据路径成本比不出来;开始比较对端网桥ID值,则aabb.cc00.2000(SW2)比aabb.cc00.3000(SW3)小,因此,连接到SW2的端口e0/1被选举为根端口。

                SW5:

                        e0/0端口到根交换机的路径成本为300,e0/3端口到根交换机的路径成本为300,因此,根据路径成本比不出来;开始比较对端网桥ID值,对端网桥均为aabb.cc00.4000(SW4)也比不太出来;开始比较对端端口ID值,SW5的e0/0连接到SW4的e0/0,SW5的e0/3连接到SW4的e0/3,则PID值0/0小,则SW5的端口e0/0端口被选举为根端口

【CCNP】第八章 二层交换_第7张图片

        3.选举指定端口

                (1)根交换机上的端口全部是指定端口,因此SW1的e0/0和e0/1端口都是指定端口

                (2)根端口的对端一定是指定端口,因此,SW4的根端口e0/1,对端是SW2的e0/1,因此SW2的e0/1也是指定端口;同理,SW5的根端口是e0/0,对端是SW4的e0/0,因此,SW4的e0/0也是指定端口;

                因此,我们只剩下SW4连接SW3的链路及SW4连接SW5的左侧链路没有选择出指定端口。

                SW4通过e0/2端口连接到SW3的e0/0端口,首先比较两个端口到根交换机的路径开销。

                SW4通过e0/2转发BPDU是转发通过左侧RPe0/1接口收到的BPDU,到根的路径开销值为200,而SW3的e0/0端口转发BPDU是转发通过上方RPe0/0接口收到的BPDU,根路径开销值为100。本着越低越优的原则,优选SW3的E0/0端口作为转发端口。

                SW4通过e0/3端口连接到SW5的e0/3端口,首先比较两个端口到根交换机的路径开销。

                SW4通过e0/2转发BPDU是转发通过左侧RPe0/1接口收到的BPDU,到根的路径开销值为200,而SW5的e0/3端口转发BPDU是转发通过右侧RPe0/0接口收到的BPDU,根路径开销值为300。本着越低越优的原则,优选SW4的E0/3端口作为转发端口。

【CCNP】第八章 二层交换_第8张图片


生成树的种类:

1.802.1D:STP

        Cisco拿过来做了改进,演变出了PVST(Per Vlan Spaning-Tree) ​
        PVST是Cisco交换机默认运行的种类,每个VLAN有一颗独立的生成树。

        PVST的配置:

(config)# spanning-tree mode pvst # 生成树模式定义为PVST
(config)# spanning-tree vlan x priority y # 将该交换机设备在vlan x中的优先级设置为y。
​

        PVST的缺点:

                慢

                一个端口从Blocking到最后Forwarding的过程如下:

Blocking--20s—Listening--15s—Learning--15s—Forwarding

2.802.1W:RSTP(Rapid Spanning-Tree),快速生成树协议

        RSTP相较于PVST,将端口状态数量调整为了4个,去掉了Listening状态。RSTP模式下,一个端口从Blocking到最后Forwarding的过程如下:

Blocking--20s—Learning--15s—Forwarding

        RSTP的配置:

(config)# spanning-tree mode rapid-pvst # 生成树模式定义为RSTP

3.802.1S:MST/MSTP(Multiple Spanning-Tree),多生成树协议

        把多个VLAN绑定成一个实例,每个实例生成一棵树,实例内的VLAN共享这一棵生成树。

        MSTP的配置:

(config)# spanning-tree mode mst # 定义生成树模式为MSTP
(config)# spanning-tree mst configuration
(config-mst)# name MST
(config-mst)# instance 1 vlan 1, 10 # 实例号绑定对应VLAN
(config-mst)# instance 2 vlan 20 # 实例号绑定对应VLAN
(config)# spanning-tree mst 1 priority 0 # 设置本交换机在实例1 中的优先级值为0。

        查看MSTP:

# show spanning-tree mst instance-id

STP的两个特性:

        1.Portfast

                Portfast接口可无需经过Blocking等状态,直接进入Forwarding状态,如果某个接口下连接的一定是一台终端设备,则可以将这个接口设置为portfast接口。

(config-if)# interface eX/y 
(config-if)#spanning-tree portfast (edge)   # 指定某个接口为快速接口
(config)# spanning-tree portfast edge default   # 指定全局接口为快速接口

        2.BPDUGuard

                BPDU防护,若该接口收到了BPDU,则表明该接口下可能存在交换机,此时有可能会造成二层环路。此时若配置了BPDUGuard,则会主动关闭该接口。

(config-if)# spanning-tree bpduguard enable # 无论该接口是否为快速接口,只要收到BPDU报文,就置入err-disable状态,并且接口置为down状态
​
(config)# spanning-tree portfast edge bpduguard default # 全局下的快速接口只要收到BPDU报文,就置入err-disable状态,并且接口置为down状态
​

        被BPDU防护关掉的接口,重新恢复up状态的方法

                1.重新配置正确的Portfast后重启设备。

                2.排除错误之后,进入接口,sh后no sh

                3.排除错误之后,使用errdisable自动恢复。

(config)#errdisable recovery cause bpduguard
(config)#errdisable recovery interval 30

第九节 VLAN间通信

跨设备通信由于需要网关转发本网络数据包,因此需要借助于三层设备

三层设备:路由器、多层交换机。

        多层交换机实现VLAN间通信

        借助于多层交换机的SVI接口

                SVI接口是一个逻辑接口,在多层交换机上,每一个VLAN可以拥有一个独立的SVI接口,且该SVI接口为所在的VLAN提供服务

        创建对应VLAN的SVI接口:

(config)# interface vlan 10
(config-if)# ip add 192.168.1.1 255.255.255.0
(config-if)# no shutdown

路由器实现VLAN间通信

借助于路由器的子接口

(config)# interface e0/0.10
(config-if)# encapsulation dot1Q 10 # 封装给VLAN10使用
(config-if)# ip address 192.168.1.1 255.255.255.0
​
(config)# interface e0/0.20
(config-if)# encapsulation dot1Q 20 # 封装给VLAN20使用
(config-if)# ip address 192.168.2.1 255.255.255.0
​
(config)# interface e0/0
(config-if)# no shutdown # 打开母接口
​

第十节 FHRP(首跳冗余协议)

FHRP协议,即First Hop Redundancy Protocol,首跳冗余协议,这里的首跳也就意味着是网关。

        FHRP协议的分类

                HSRP ​
                VRRP


HSRP协议

        Hot standby Router Protocol,热备份路由器协议,是Cisco私有协议

        HSRP路由器的两种角色:

                Active:活动路由器,用于实际承担流量转发(当前的实际网关)。 ​
                Standby:备份路由器,一旦Active路由器发生故障,则Standby设备就会顶替原先Active路由器,并承担原Active路由器的工作。Standby路由器会监听Active路由器的状态。

                Active路由器会向Standby路由器定期地主动发送存活报文(3s一次,目的地址224.0.0.2),如果在一定时间内Standby路由器没有收到Active路由器的存活报文,则表明Active路由器可能DOWN,此时Standby路由器会接替Active路由器。

        HSRP组:

                即由多台HSRP路由器组成。

        HSRP角色选举:

                1.比较优先级,优先级越大越优,默认值100,修改范围0-255。

                2.比较IP地址,越大越优。

        HSRP中的虚拟路由器&IP&MAC:

                由Active路由器和Standby路由器共同虚拟化为一台虚拟路由器。

                虚拟路由器的IP地址即是将来要设置的网关,可以实现网关的备份冗余。

                虚拟IP地址:虚拟路由器的IP地址,可自行设置,不可与现有地址重复

                虚拟MAC地址:0000.0c07.acxx,xx表示HSRP组号

        HSRP的基本配置

(config)# interface vlan10
(config-if)# standby 10 ip 192.168.10.254 # 即表示加入组号为10的HSRP备份组,该组的虚拟IP地址为192.168.10.254

        HSRP的抢占

                默认情况下,组内的设备不会主动抢占Active路由器的角色,即使其优先级或者IP地址并当前的Active设备更大。

                若想发生Active路由器角色的切换,则需要手动开启HSRP的抢占

(config)# interface vlan10
(config-if)# standby 10 priority 110 # 将此设备的优先级调高。
(config-if)# standby 1 preempt # 开启抢占,若比当前Active路由器更大,则直接发生抢占。

        HSRP的链路监测机制:

(config)# track 1 interface e0/0 line-protocol # 通过track检测链路是否DOWN
(config-if)# standby 1 track 1 decrement 20 # 如果链路DOWN,则将本地HSRP优先级降低20
​

此功能必须搭配HSRP的抢占一起使用。


VRRP协议

        Virtual Router Redundancy Protocol,虚拟路由器冗余协议。公有协议

        VRRP路由器的两种角色:

                Master路由器:活动路由器,用于实际承担流量转发(当前的实际网关)。 ​
                Backup路由器:备份路由器,一旦Master路由器发生故障,则Backup设备就会顶替原先Active路由器,并承担原Master路由器的工作。

        VRRP的目的地址:224.0.0.18

        VRRP的虚拟IP&虚拟MAC:

                虚拟IP地址:VRRP的虚拟IP地址可以和现有的IP地址重叠,IP地址拥有者VRRP优先级为255。 ​
                虚拟MAC地址:0000.5e00.01xx # xx表示组ID

        VRRP的抢占:

                VRRP的抢占功能是默认开启的。

        VRRP的部署:

(config)# interface vlan 10
(config-if)# vrrp 10 ip 192.168.10.254 # 将该设备加入VRRP备份组10中,虚拟IP是192.168.10.254
(config-if)# vrrp 10 priority 110 # 将该设备在VRRP组中的优先级设置为110
(config-if)# vrrp 10 track 1 decrement 20 # VRRP也可联动track技术实现链路检测

你可能感兴趣的:(CCNP,网络)