思维导图:
共4个字节。1518+4=1522最大
交换机上默认存在VLAN1,默认所有接口属于VLAN1,所有接口类型默认为hybird,trunk链路默认允许vlan1通过。
1.access:当接口连接PC时使用,只允许一个VLAN通过
2.trunk:当接口连接交换机时使用,允许多个VLAN通过
3.hybird:什么时候都可以使用,允许多个不打tag的数据帧通过。
4.dot1q-tunnel:就是一种基于802.1q封装的隧道协议。在私网vlan tag打上外网vlan tag。双重tag。
10种配置方法:
单个路由器实现vlan间通信
vlan间想要通信必须借助路由器,但路由器接口有限,只能通过子接口来进行解决。
还可以使用交换级vlanif接口(svi)进行vlan间通信
配置:
interface Ethernet0/0/0.10
dot1q termination vid 10 ##将该接口和vlan10关联
ip address 10.1.1.254 255.255.255.0
arp broadcast enable ##子接口默认不支持广播,开启arp广播
interface Ethernet0/0/0.20
dot1q termination vid 20
ip address 20.1.1.254 255.255.255.0
arp broadcast enable
场景:一个Vlan内可以相互通信,另一个Vlan内相互隔离。两个Vlan都可以与主Vlan互通。
特点:
配置:
1、创建VLAN,设置相应的端口类型
2、进入主VLAN
mux-vlan 设置称为主Vlan
subordinate group 10 设置Vlan 10 为互通性从Vlan
subordinate separate 20 设置Vlan 20 为隔离性从Vlan
3、进入接口,port mux-vlan enable 开启接口的混合Vlan功能 设置端口所属vlan,自动关联到对应的互通vlan或者隔离vlan
场景:每个vlan都需要划分不同的子网满足需求,并且各自配置各自的网关。有大量的地址浪费(定向广播地址,网络号地址)。类似小区宽带场景
特点:聚合VLAN,所有不在同一VLAN内的PC可以共用一个网段。共用一个网关。相当与1个vlan负责多个vlan的数据转发。
分类:
vlan batch 10 20 100 200 ##S1上创建对应的vlan
interface e0/0/1
port default vlan 10
interface e0/0/2
port default vlan 20
interface vlanif 100
ip address 10.1.1.254 24 ##配置网关IP。PC1 10.1,PC 10.2
接口不用绑定物理接口,配置聚合vlan和关联子vlan,接口就UP了
vlan 100
aggregate-vlan ##设置成聚合VLAN
access vlan 10 20 ##关联子VLAN
子VLAN间为什么不能通信?因为在子vlan在同一网段,直接请求arp广播,交换机收到广播vlan隔绝。
如果想要子VLAN间通信在网关接口配置 代理arp
arp-proxy inter-sub-vlan-proxy enable
网关收到arp广播之后查看目的ip为本地直连的主机,网关会以自己的MAC地址告诉PC1
通过运行ospf,vlan 10可以访问外部vlan 30内的用户
用于控制交换机端口之间的相互访问权限。
通过将需要互相隔离的2个端口加入到同一个隔离组中实现端口隔离.
配置:port-isolate enable 开启端口隔离。默认加入group1里面。
例:PC1和PC2,PC5不通,PC2和PC5能通。
1和2一个组,1和5一个组。
port-isolate mode all 全局开启模式。
基于802.1q封装的隧道协议。报文封装双层vlan Tag。
QinQ的优点
配置方式:
1、基于端口的QinQ
只要是从该接口收到的VLAN数据都给该数据打上端口的PVID。
[SWB]interface ethernet 1/0/1
[SWB-Ethernet1/0/1]port link-type dot1q-tunnel 公网连接内网的交换机接口类型
[SWB-Ethernet1/0/1]port default vlan 3 PVID
2、灵活的QinQ
只要是在规定范围就给该数据打上相应的公网Tag。
[SWB]interface ethernet 1/0/1
[SWB-Ethernet1/0/1]port link-type hybrid
[SWB-Ethernet1/0/1]port hybrid untagged vlan 3 发出的时候去掉VLAN3的标记
[SWB-Ethernet1/0/1]port vlan-stacking vlan 200 to 300 stack-vlan 3 收到200-300范围的VLAN打上vlan3的标记。
用于将私有VLAN转换成公有VLAN。
在公网出口做vlan-mapping
在内网出口做意义不一样,内网还得建立公网的VLAN。
在e0/0/2口
qinq vlan-translation enable
port link-type trunk
port trunk allow-pass vlan 10 允许转换后的vlan 10 通过。
port vlan-mapping vlan 20 map-vlan 10 给vlan 20 打上vlan 10 的标签
为什么不是允许vlan 20通过?
因为收到之后先映射成vlan 10,在查允许列表。
普通负载分担乱序的问题
在链路聚合中,同一数据流可能分为多条链路走,有可能第二条链路的数据比第一条链路的数据先到,造成乱序, 通过HASH-Key值与端口对应关系实现逐流负载分担
不同的MAC或IP地址得出不同的HASH-Key值对应不同的接口,实现逐流的负载分担
主动端选举规则:LACP优先级值越小优先级越高(缺省32768),当系统LACP优先级相同时,则比较MAC地址,MAC地址较小的一段作为主动端。
LAC实现原理:通过比较系统优先级和MAC地址来选出主动端,然后在主动端比较接口优先级选出接口称为活动链路端口。
LACP还可以支持抢占、抢占延迟。
配置:
在SwitchA上配置系统优先级为100,使其成为LACP主动端
[SwitchA] lacp priority 100 ##可以进接口下配置接口优先级。
在SwitchA上配置活动接口上限阈值为2,静态LACP模式
[SwitchA] interface eth-trunk 1
[SwitchA-Eth-Trunk1] mode lacp-static
[SwitchA-Eth-Trunk1] max active-linknumber 2
[SwitchA-Eth-Trunk1] quit
类似与cisco的vtp协议,用来实现动态分发、注册、传播vlan属性信息。
基于GARP(通用属性注册协议), GVRP使用组播MAC地址发送报文,0180c2000021
gvrp通过声明和回收声明实现VLAN属性的注册和注销。
join消息
单向注册只有接收到消息的接口允许相应的vlan通过
双向注册使所有接口都能允许相应的vlan通过。
注销同样
注册模式
1、Normal模式:允许动态vlan在端口注册,同时发送静态VLAN和动态VLAN的声明消息
2、Fixed模式:不允许动态vlan在端口注册,只发送静态VLAN声明消息
3、Forbidden模式:不允许动态VLAN在端口上进行注册,只发送VLAN1的声明消息
join定时器:为了保证join消息能够可靠的传输到其他应用实体。发送join之后开启join定时器,如果在定时器内没有收到joinin消息,那么在发送一个join消息,收到了不发送。
hlod定时器:用于控制join及leave消息的发送,设备收到消息不会立刻转发消息给其他设备,而是等待一个hlod定时器,用于在定时器内收到的所有消息封装成最少数量的报文,这样可以减少报文的发送量,不然每来一个消息发送一次,造成网络上报文量太大,不利于网络的稳定。
leave定时器:收到leave消息之后不会立刻注销,只有在定时器内没有收到此属性的join消息才注销。
leaveall定时器:类似于周期刷新定时器。
每个启动GVRP的端口对应一个GVRP的应用实体
开启GVRP的接口必须是trunk接口。
全局开启GVRP
接口下开启GVRP
学习到的VLAN是Dynmic的VLAN,动态VLAN只能用在过渡交换机上,动态VLAN不能配置成trunk或access。
1、proxy arp
①路由式Proxy ARP
路由式Proxy ARP就是使那些在同一网段,没有配置网关的情况下使用。
一定要保证在同一网段,不然PC不发ARP广播包。如果都配置了网关则不需要开启ARP代理了。
②VLAN内Proxy ARP
如果两个用户属于相同的VLAN,但VLAN内配置了端口用户隔离。此时用户间要互通,需要在关联了VLAN的接口上启动VLAN内Proxy ARP功能。
③VLAN间Proxy ARP,同一网段,不同VLAN间用户要进行三层互通,通常在super vlan中使用,使其子VLAN之间互通。
免费ARP(无故ARP):
MAC地址表
单播MAC:第一个字节第8位为0,是单播MAC地址
组播MAC:第一个字节第8位为1,是组播MAC地址
广播MAC:全F
MAC地址漂移:一个接口学习到的MAC地址从同一个VLAN的另一个接口也学习到,后学习到的MAC地址覆盖原来的MAC表项。造成MAC地址表的震荡
解决方法:MAC地址漂移避免机制,通过设置接口优先级来解决。
高优先级学习到的MAC地址可以覆盖低优先级学习到的MAC地址。
低优先级学习到的MAC地址不可以覆盖高优先级学习到的MAC地址。
相同优先级接口学习到的MAC地址不允许覆盖。
配置:
接口下: mac-learning priority 2 设置优先级为2,默认为0
当SB、C、D之间没有运行STP协议,误连了网线,此时SB、C、D之间形成环路,S1从port1口收到广播报文,转发给SWB,该报文经过环路最终会从port2口转给A。A认为网络出现了MAC漂移。通过联动erro down端口或者其他动作解决。
mac地址泛洪攻击:黑客主机不断发送消息,源MAC变。交换机收到之后进行MAC地址学习,直至学满。此时交换机收到其他PC的消息之后只能泛洪发送。此时黑客主机就能收到其他主机的消息了。
开启端口安全,将交换机接口学习到的MAC地址变为安全MAC地址,阻止安全MAC和静态MAC之外的主机通过本接口和交换机通信
端口安全学习MAC地址方式:
配置:接口下
port-security enable 默认允许1个MAC地址通过。
port-security max-mac-num 修改最大允许几个MAC地址
保护动作: