玄子Share-VLAN与三层交换机

玄子Share-VLAN与三层交换机

网络概述

在传统的交换网络中,随着网络规模的不断扩大,所有的主机和设备越来越多,网络中广播包的数量急剧增加。这样会增加交换机的工作负担,网络传输的效率也会明显下降,因此通过分割广播域的方法来实现网络管理。

广播域:指网络中所有能接收到同样广播消息的设备的集合。

分割广播域

物理分割

  • 将网络从物理上(路由器)划分为若干个小网络,然后不同的网络通过网络设备实现通信;

逻辑分割

  • 将网络从逻辑上划分为若干个小的虚拟网络(VLAN),一个VLAN就是一个交换网络,其中所有用户都在同一个广播域,各VLAN之间通过网络设备连接通信;

VLAN概述

VLAN(Virtual Local Area Network),中文名为虚拟局域网。是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及组等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。

  • VLAN工作在数据链路层,配置在交换机上。
  • VLAN的作用是用来逻辑分割广播域。

VLAN优势

  • 控制广播
  • 增强网络安全性
  • 简化网络管理

VLAN的种类

  • 静态VLAN:基于端口划分静态VLAN
  • 动态VLAN:基于MAC地址划分动态VLAN

静态VLAN的配置

VLAN ID范围 范围 用途
0,4095 保留 仅限系统使用用户不能查看和使用这些VLAN
1 正常 Cisco默认VLAN用户能够使用该VLAN,但不能删除它
2-1001 正常 用于以太网的VLAN用户可以创建、使用和删除这些VLAN
1002-1005 正常 用于FDDI和令牌环的Cisco默认VLAN用户不能删除这些VLAN
1006-1024 保留 仅限系统使用用户不能查看和使用这些VLAN
1025-4094 扩展 仅用于以太网VLAN

配置静态VLAN的步骤

  • 创建VLAN
  • 将交换机的端口加入到相应的VLAN中
  • 验证VLAN的配置

创建VLAN

创建VLAN有两种方法

  • VLAN数据库配置模式
shell 复制代码
Switch# vlan database
Switch(vlan)# vlan vlan-id [name vlan-name]
Switch(vlan)# exit

添加VLAN并命名,如不指定名称系统会使用默认名称

  • 全局配置模式
shell 复制代码
Switch(config)# vlan vlan-id
Switch(config-vlan)# name vlan-name
Switch(config-vlan)# exit

删除VLAN

使用no vlan vlan-id命令删除VLAN

  • VLAN数据库中删除VLAN
shell 复制代码
Switch# vlan database
Switch(vlan)# no vlan 20
Deleting VLAN 20...
Switch(vlan)# exit
APPLY completed.
Exiting....
  • 全局模式下删除VLAN
shell 复制代码
Switch# configure terminal 
Switch(config)# no vlan 20
Switch(config)# exit

将端口加入VLAN

  • 单个添加
shell 复制代码
Switch(config)# interface interface-id
Switch(config-if)# switchport mode access # 定义二层端口模式
Switch(config-if)# switchport access vlan vlan-id
  • 将端口从某个VLAN中删除
shell 复制代码
Switch(config-if)# no switchport access vlan vlan-id
  • 同时将多个端口加入VLAN
shell 复制代码
Switch(config)# interface range f0/1-10
Switch(config-if-range)# switchport access vlan vlan-id
  • 还原接口为默认配置状态(模拟器不支持)
shell 复制代码
Switch(config)# default interface interface-f0/5

验证VLAN的配置

查看所有VLAN的摘要信息

shell 复制代码
Switch# show vlan brief

查看指定VLAN信息

shell 复制代码
Switch# show vlan id vlan-id

小结

  • VLAN是逻辑隔离的虚拟局域网
  • VLAN能够隔离广播,提高安全性,简化管理
  • VLAN分为动态VLAN和静态VLAN静态VLAN
  • 有两种配置方式:VLAN数据库和全局配置

Trunk介绍

Trunk介绍:Trunk是一种封装技术,它是一条点到点的链路,链路的两端可以都是交换机,也可以是交换机和路由器。通过一个端口传输多个vlan的数据。

Trunk作用:通过一条物理链路,相同VLAN可以跨交换机之间通讯。

交换网络的链路类型

接入链路:又称为"access链路",通常属于一个VLAN;用于PC和交换机之间通信;

中继链路:又称为"trunk链路",可以用于多个VLAN;用于交换机和交换机之间通信;也用于交换机和路由器之间通信;

Trunk的作用

如何实现交换机之间的VLAN通信?为每一个VLAN提供一条链路

只使用一条链路,且通过标识来区分不同VLAN的数据

VLAN跨交换机通信原理

交换机给往其他交换机的数据帧打上VLAN标识

  • 当主机A发送数据帧到主机B时,此时,主机A发送的数据帧是普通的数据帧。
  • 交换机SW1接收到数据帧,交换机SW1会根据接口对应的VLAN号打上VLAN标识,经过中继链路(Trunk)传输带有VLAN的数据,发送给交换机SW2。
  • 交换机SW2接收到VLAN标识的数据帧时,会删除VLAN标识并还原成普通的数据帧,根据MAC地址表,转发给主机B。

注意:终端设备是不接收带标签的数据。

VLAN的标识

在以太网上实现中继,有两种封装协议类型

  • ISL(Cisco私有标准)
  • IEEE 802.1q(dot.1q,所有厂商均支持)

ISL帧格式


IEEE 802.1q帧格式

Trunk的配置

配置步骤与命令

  • 进入接口配置模式
shell 复制代码
Switch(config)# interface interface-id
  • 选择封装协议类型(二层交换机上不需要配置)
shell 复制代码
Switch(config-if)# switchport trunk encapsulation { isl | dot1q}
  • 将接口配置为Trunk
shell 复制代码
Switch(config-if)# switchport  mode  {dynamic | trunk | access}

其他配置

默认允许全部VLAN的数据通过)

  • 禁止Trunk传送某个VLAN的数据,删除这个VLAN
shell 复制代码
Switch(config-if)# switchport trunk allowed vlan remove vlan-id
  • 允许Trunk传送某个VLAN的数据,添加这个VLAN
shell 复制代码
Switch(config-if)# switchport trunk allowed vlan add vlan-id     
  • 查看接口模式、状态
shell 复制代码
Switch# show interface interface-id switchport
  • 查看端口模式、状态
shell 复制代码
Switch# show interface f0/24 switchport
Administrative Mode: trunk # 接口模式配置为Trunk
Operational Mode: trunk # 接口工作模式为Trunk
Administrative Trunking Encapsulation: dot1q # Trunk协议类型为802.1q
Trunking VLANs Enabled: ALL # Trunk可以承载所有的VLAN
  • Trunk链路上移除VLAN 20
shell 复制代码
Switch(config)# interface f0/24
Switch(config-if)# switchport trunk allowed vlan remove 20

小结

  • Trunk是通过一条物理链路,实现相同VLAN跨交换机互通
  • Trunk有两种封装模式:ISL和IEEE 802.1q
  • Trunk配置简化了网络结构,管理更灵活

三层交换技术

  • 使用三层交换技术实现不同VLAN间通信
  • 三层交换=二层交换+三层转发

基于CEF的MLS(多层交换)

CEF是一种基于拓扑转发的模型

  • 转发信息库(FIB)
  • 邻接关系表

虚接口概述

在三层交换机上配置的VLAN接口为虚接口

shell 复制代码
Switch(config)# interface vlan vlan-id

虚接口功能:vlan接口是二层(交换)通向三层(路由)的接口。在vlan接口上配ip地址,这个地址可作为vlan内各主机的网关地址,这样不同vlan之间的数据报文通过vlan接口(虚接口)在三层路由上互相转发,实现了不同vlan之间互通。

三层交换机的配置

  • 在三层交换机启用路由功能
shell 复制代码
Switch(config)# ip routing
  • 配置虚接口的IP
shell 复制代码
Switch(config)# interface vlan vlan-id
Switch(config-if)# ip address ip_address netmask
Switch(config-if)# no shutdown
  • 配置路由接口
shell 复制代码
SW1(config)# interface f0/23
SW1(config-if)# switchport trunk encapsulation dot1q(三层交换机指定封装类型)
SW1(config-if)# switchport mode trunk
  • 三层交换机实现VLAN互通
shell 复制代码
SW-3L(config)#vlan 20  # 添加VLAN
SW-3L(config-vlan)#exit
SW-3L(config)#vlan 30
SW-3L(config-vlan)#exit

SW-3L(config)#interface fastEthernet 0/24
SW-3L(config-if)#switchport trunk encapsulation dot1q  # 配置Trunk
SW-3L(config-if)#switchport mode trunk 
shell 复制代码
SW-3L(config)#ip routing # 启动路由功能

SW-3L(config)#interface vlan 10   # 配置VLAN的IP地址
SW-3L(config-if)#ip address 192.168.10.1 255.255.255.0
SW-3L(config-if)#no shut
 
SW-3L(config)#interface vlan 20
SW-3L(config-if)#ip address 192.168.20.1 255.255.255.0
SW-3L(config-if)#no shut
 
SW-3L(config)#interface vlan 30
SW-3L(config-if)#ip address 192.168.30.1 255.255.255.0
SW-3L(config-if)#no shut
  • 在三层交换机上查看路由表
shell 复制代码
SW-3L#show ip route
C    192.168.10.0/24 is directly connected, Vlan10
C    192.168.20.0/24 is directly connected, Vlan20
C    192.168.30.0/24 is directly connected, Vlan30

本章总结

  • VLAN是交换机的逻辑划分:安全、隔离广播、简化管理
  • Trunk简化网络结构,实现同VLAN跨交换互通
  • 三层交换机的特点:一次路由,多次交换
  • 三层交换机实现不同VLAN间互通
  • 三层交换机多用于核心层:路由功能+高速转发

玄子Share-VLAN与三层交换机 2024-03-04

相关推荐
龙哥·三年风水36 分钟前
群控系统服务端开发模式-应用开发-个人资料
分布式·php·群控系统
幺零九零零1 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
23zhgjx-NanKon1 小时前
华为eNSP:QinQ
网络·安全·华为
23zhgjx-NanKon1 小时前
华为eNSP:mux-vlan
网络·安全·华为
点点滴滴的记录1 小时前
RPC核心实现原理
网络·网络协议·rpc
昔我往昔2 小时前
阿里云文本内容安全处理
安全·阿里云·云计算
Lionhacker2 小时前
网络工程师这个行业可以一直干到退休吗?
网络·数据库·网络安全·黑客·黑客技术
程思扬3 小时前
为什么Uptime+Kuma本地部署与远程使用是网站监控新选择?
linux·服务器·网络·经验分享·后端·网络协议·1024程序员节
ZachOn1y3 小时前
计算机网络:运输层 —— 运输层概述
网络·tcp/ip·计算机网络·运输层
佚明zj3 小时前
【点云网络】voxelnet 和 pointpillar
网络