什么是三层交换机
三层交换机就是具有部分路由器功能的交换机,三层交换机的最重要目的是加快大型局域网内部的数据交换,所具有的路由功能也是为这目的服务的,能够做到一次路由,多次转发。对于数据包转发等规律性的过程由硬件高速实现,而像路由信息更新、路由表维护、路由计算、路由确定等功能,由软件实现。三层交换技术就是二层交换技术+三层转发技术。传统交换技术是在OSI网络标准模型第二层——数据链路层进行操作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又可根据不同网络状况做到最优网络性能。
三层交换技术的工作原理
第三层交换工作在OSI七层网络模型中的第三层即网络层,是利用第三层协议中的IP包的包头信息来对后续数据业务流进行标记,具有同一标记的业务流的后续报文被交换到第二层数据链路层,从而打通源IP地址和目的IP地址之间的一条通路。这条通路经过第二层链路层。有了这条通路,三层交换机就没有必要每次将接收到的数据包进行拆包来判断路由,而是直接将数据包进行转发,将数据流进行交换。
三层交换技术
近年来的对三层技术的宣传,耳朵都能起茧子,到处都在喊三层技术,有人说这是个非常新的技术,也有人说,三层交换嘛,不就是路由器和二层交换机的堆叠,也没有什么新的玩意,事实果真如此吗?下面先来通过一个简单的网络来看看三层交换机的工作过程。
组网比较简单
使用IP的设备A------------------------三层交换机------------------------使用IP的设备B
比如A要给B发送数据,已知目的IP,那么A就用子网掩码取得网络地址,判断目的IP是否与自己在同一网段。
如果在同一网段,但不知道转发数据所需的MAC地址,A就发送一个ARP请求,B返回其MAC地址,A用此MAC封装数据包并发送给交换机,交换机起用二层交换模块,查找MAC地址表,将数据包转发到相应的端口。
如果目的IP地址显示不是同一网段的,那么A要实现和B的通讯,在流缓存条目中没有对应MAC地址条目,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见对于不是同一子网的数据,最先在MAC表中放的是缺省网关的MAC地址;然后就由三层模块接收到此数据包,查询路由表以确定到达B的路由,将构造一个新的帧头,其中以缺省网关的MAC地址为源MAC地址,以主机B的MAC地址为目的MAC地址。通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关系,并记录进流缓存条目表,以后的A到B的数据,就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。
以上就是三层交换机工作过程的简单概括,可以看出三层交换的特点:
a – 由硬件结合实现数据的高速转发。
b – 这就不是简单的二层交换机和路由器的叠加,三层路由模块直接叠加在二层交换的高速背板总线上,突破了传统路由器的接口速率限制,速率可达几十Gbit/s。算上背板带宽,这些是三层交换机性能的两个重要参数。
c – 简洁的路由软件使路由过程简化。
d – 大部分的数据转发,除了必要的路由选择交由路由软件处理,都是又二层模块高速转发,路由软件大多都是经过处理的高效优化软件,并不是简单照搬路由器中的软件。
三层交换机的配置命令
步骤一:给交换机配置IP地址
S2724G#conf
S2724G(config)#int vlan 1
S2724G(config-if)#ip addess 192.168.0.100 255.255.255.0
----给VLAN 1配置IP地址
S2724G(config-if)#no shutdown ----激活该VLAN接口
S2724G(config-if)#exit
S2724G(config)#ip default-gateway 192.168.0.1 ----指定交换机的网关地址
步骤二:创建VLAN
S2724G#conf
S2724G(config)#vlan 10 ----创建VLAN 10
S2724G(config-vlan)#exit
S2724G(config)# vlan 20 ----创建VLAN 20
S2724G(config-vlan)#exit
步骤三:把相应接口指定到相应的VLAN中
S2724G(config)#int gi 0/10
S2724G(config-if)#switch access vlan 10
----把交换机的第10端口划到VLAN 10中
S2724G(config-if)#exit
S2724G(config)#int gi 0/20
S2724G(config-if)#switch access vlan 20
----把交换机的第20端口划到VLAN 20中
S2724G(config-if)#exit
S2724G(config)#int gi 0/24
S2724G(config-if)#switch mode trunk
----设置24口为Trunk模式(与三层交换机的连接口
S2724G(config-if)#
步骤四:保存配置
S2724G(config-if)#end
S2724G#write
模式转换命令
用户模式----特权模式,使用命令“enable”
特权模式----全局配置模式,使用命令“config t”
全局配置模式----接口模式,使用命令“interface+接口类型+接口号”
全局配置模式----线控模式,使用命令“line+接口类型+接口号”
注:
用户模式:查看初始化的信息。
特权模式:查看所有信息、调试、保存配置信息
全局模式:配置所有信息、针对整个路由器或交换机的所有接口
接口模式:针对某一个接口的配置
线控模式:对路由器进行控制的接口配置
(2)配置命令
show running config 显示所有的配置
show versin 显示版本号和寄存器值
shut down 关闭接口
no shutdown 打开接口
ip add +ip地址 配置IP地址
secondary+IP地址 为接口配置第二个IP地址
show interface+接口类型+接口号 查看接口管理性
show controllers interface 查看接口是否有DCE电缆
show history 查看历史记录
show terminal 查看终端记录大小
hostname+主机名 配置路由器或交换机的标识
config memory 修改保存在NVRAM中的启动配置
exec timeout 0 0 设置控制台会话超时为0
service password-encryptin 手工加密所有密码
enable password +密码 配置明文密码
ena sec +密码 配置密文密码
line vty 0 4/15 进入telnet接口
password +密码 配置telnet密码
line aux 0 进入AUX接口
password +密码 配置密码
line con 0 进入CON接口
password +密码 配置密码
bandwidth+数字 配置带宽
no ip address 删除已配置的IP地址
show startup config 查看NVRAM中的配置信息
copy run-config atartup config 保存信息到NVRAM
write 保存信息到NVRA
erase startup-config 清除NVRAM中的配置信息
show ip interface brief 查看接口的谪要信息
banner motd # +信息 + # 配置路由器或交换机的描素信息
description+信息 配置接口听描素信息
vlan database 进入VLAN数据库模式
vlan +vlan号+ 名称 创建VLAN
switchport access vlan +vlan号 为VLAN为配接口
interface vlan +vlan号 进入VLAN接口模式
ip add +ip地址 为VLAN配置管理IP地址
vtp+service/tracsparent/client 配置SW的VTP工作模式
vtp +domain+域名 配置SW的VTP域名
vtp +password +密码 配置SW的密码
switchport mode trunk 启用中继
no vlan +vlan号 删除VLAN
show spamming-tree vlan +vlan号 查看VLA怕生成树议
2. 路由器配置命令
ip route+非直连网段+子网掩码+下一跳地址 配置静态/默认路由
show ip route 查看路由表
show protocols 显示出所有的被动路由协议和接口上哪些协议被设置
show ip protocols 显示了被配置在路由器上的路由选择协议,同时给出了在路由选择协议中使用
的定时器
等信息
router rip 激活RIP协议
network +直连网段 发布直连网段
interface lookback 0 激活逻辑接口
passive-interface +接口类型+接口号 配置接口为被动模式
debug ip +协议 动态查看路由更新信息
undebug all 关闭所有DEBUG信息
router eigrp +as号 激活EIGRP路由协议
network +网段+子网掩码 发布直连网段
show ip eigrp neighbors 查看邻居表
show ip eigrp topology 查看拓扑表
show ip eigrp traffic 查看发送包数量
router ospf +process-ID 激活OSPF协议
network+直连网段+area+区域号 发布直连网段
show ip ospf 显示OSPF的进程号和ROUTER-ID
encapsulation+封装格式 更改封装格式
no ip admain-lookup 关闭路由器的域名查找
ip routing 在三层交换机上启用路由功能
show user 查看SW的在线用户
clear line +线路号 清除线路
3. 三层交换机配置命令
配置一组二层端口
configure terminal 进入配置状态
nterface range {port-range} 进入组配置状态
配置三层端口
configure terminal 进入配置状态
interface {{fastethernet | gigabitethernet} interface-id} | {vlan vlan-id} | {port-
channel port-channel-number} 进入端口配置状态
no switchport 把物理端口变成三层口
ip address ip_address subnet_mask 配置IP地址和掩码
no shutdown 激活端口
例:
Switch(config)# interface gigabitethernet0/2
Switch(config-if)# no switchport
Switch(config-if)# ip address 192.20.135.21 255.255.255.0
Switch(config-if)# no shutdown
配置VLAN
configure terminal 进入配置状态
vlan vlan-id 输入一个VLAN号, 然后进入vlan配态,可以输入一个新的VLAN号或旧的来进行修改
name vlan-name 可选)输入一个VLAN名,如果没有配置VLAN名,缺省的名字是VLAN号前面用0填满
的4位数,如VLAN0004是VLAN4的缺省
名字
mtu mtu-size (可选) 改变MTU大小
例
Switch# configure terminal
Switch(config)# vlan 20
Switch(config-vlan)# name test20
Switch(config-vlan)# end
或
Switch# vlan database
Switch(vlan)# vlan 20 name test20
Switch(vlan)# exit
将端口分配给一个VLAN
configure terminal 进入配置状态
interface interface-id 进入要分配的端口
switchport mode access 定义二层口
switchport access vlan vlan-id 把端口分配给某一VLAN
例
Switch# configure terminal
Enter configuration commands, one per line. with CNTL/Z.
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 2
Switch(config-if)# end
Switch#
配置VLAN trunk
configure terminal 进入配置状态
interface interface-Id 进入端口配置状态
switchport trunk encapsulation {isl | dot1q | negotiate}配置trunk封装ISL 或 802.1Q 或
自动协商
switchport mode {dynamic {auto | desirable} | trunk} 配置二层trunk模式。
dynamic auto—自动协商是否成为trunk
dynamic desirable—把端口设置为trunk如果对方端口是trunk, desirable, 配置Native VLAN
(802.1q)
或自动模式,trunk—设置端口为强制的trunk方式,而不理会对方端口是否为trunk
switchport access vlan vlan-id 可选) 指定一个缺省VLAN, 如果此端口不再是trunk
switchport trunk native vlan vlan-id 指定802.1Q native VLAN号
例:
Switch# configure terminal
Enter configuration commands, one per line. with CNTL/Z.
Switch(config)# interface fastethernet0/4
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk encapsulation dot1q
Switch(config-if)# end
定义TRUNK允许的VLAN
configure terminal子 进入配置状态
interface interface-id 进入端口配置
switchport mode trunk 配置二层口为trunk
switchport trunk allowed vlan {add | all | except | remove} vlan-list可选) 配置trunk允
许的VLAN.使用add, all, except, remove关健字
no switchport trunk allowed vlan 允许所有VLAN通过
例
Switch(config)# interface fastethernet0/1
Switch(config-if)# switchport trunk allowed vlan remove 2
Switch(config-if)# end
配置Native VLAN(802.1q)
configure terminal 进入配置状态
interface interface-id 进入配置成802.1qtrunk的端口
switchport trunk native vlan vlan-Id 配置native VLAN号
no switchport trunk native vlan 端口配置命令回到缺省的状态
配置基于端口权值的负载均衡
configure terminal 进入Switch 1配置状态
vtp domain domain-name 配置VTP域
vtp mode server 将Switch 1配置成VTP server.
show vtp status 验证VTP的配置
show vlan 验证VLAN
configure terminal 进入配置状态
interface fastethernet 0/1 进入F0/1端口
switchport trunk encapsulation {isl | dot1q | negotiate}配置trunk