文章目录
eNSP实验——三层交换机不同网段通信
及供参考
基础概念
三层交换机(Layer 3 Switch)
三层交换机是一种在网络层工作的设备。它在传统二层交换机的基础上增加了路由功能,能够在数据链路层(第二层)和网络层(第三层)之间进行数据转发和处理。三层交换机的核心思想是“一次路由,多次交换”,即在首次确定数据包的路由后,后续相同路径的数据包可以直接通过交换功能快速转发,从而提高网络效率。
三层交换机可以理解为会路由的交换机,它同时具备两种能力:
二层交换:像普通交换机一样,通过MAC地址快速转发同一局域网内的数据(比如同一办公室的电脑互传文件)
三层路由:像路由器一样,根据IP地址跨网段转发数据(比如让财务部和研发部的不同网段电脑互相通信)
核心特点:“一次路由,多次交换”。首次跨网段通信时,三层交换机会像路由器一样确定路径;后续相同目的地的数据则直接通过交换功能高速转发,省去重复路由的开销。
三层路由功能
- IP路由:根据IP地址进行数据包转发,支持多种路由协议(如RIP、OSPF)。
- 跨VLAN通信:实现不同VLAN之间的数据转发。
- ACL与安全控制:通过访问控制列表实现流量过滤和安全策略。
三层交换机的核心功能
功能 | 说明 | 实际场景举例 |
---|---|---|
IP路由 | 根据IP地址跨网段转发数据,支持RIP、OSPF等动态路由协议 | 连接公司总部分部和仓库的不同子网 |
跨VLAN通信 | 无需外接路由器,直接让不同VLAN(虚拟局域网)互通 | 让财务部(VLAN 10)和市场部(VLAN 20)共享打印机 |
流量管控 | 通过ACL(访问控制列表)限制特定IP或端口的访问权限 | 禁止访客网络访问内部服务器 |
二层交换机 vs 三层交换机
对比项 | 二层交换机 | 三层交换机 |
---|---|---|
工作层级 | 数据链路层(Layer 2) | 网络层(Layer 3) |
核心任务 | 基于MAC地址表转发同一广播域内的数据 | 基于IP路由表实现跨子网、跨VLAN的数据转发 |
跨子网通信 | 跨网段通信必须依赖外部路由器 | 内置路由功能,独立完成跨子网通信 |
转发性能 | 纯硬件交换,延迟低至微秒级 | ASIC芯片硬件加速,支持线速转发(如10Gbps) |
典型场景 | 终端接入层(办公室电脑、IP电话互联) | 网络核心层(部门VLAN互通、服务器集群访问) |
三层交换机和路由器
对比项 | 三层交换机 | 传统路由器 |
---|---|---|
设计目标 | 高速局域网(LAN)内部跨子网通信 | 广域网(WAN)互联及复杂路由策略(如BGP、MPLS) |
硬件架构 | ASIC芯片实现交换与路由,吞吐量高、功耗低 | 通用CPU+软件路由,灵活性高但吞吐量受限 |
核心功能 | - VLAN间路由 - 基础ACL/QoS - 高端口密度 | - NAT/PAT转换 - VPN/IPsec加密 - 防火墙策略 |
典型场景 | 企业内网核心(数据中心东西向流量) | 企业边界(互联网接入、跨城市VPN互联) |
成本与扩展性 | 适合固定规模的局域网扩展 | 支持复杂网络拓扑(如多ISP接入、流量负载均衡) |
SVI(交换虚拟接口):VLAN 的 虚拟网关
SVI的核心作用
- 为VLAN分配IP地址:
- 示例:将VLAN 10的SVI配置为
192.168.1.254/24
,作为该VLAN内所有设备的默认网关。 - 意义:类似给一个部门(VLAN)分配一个统一的“门牌号”,方便跨部门通信。
- 示例:将VLAN 10的SVI配置为
- 实现VLAN间路由:
- 场景:市场部(VLAN 20)的设备通过SVI访问技术部(VLAN 30)的服务器,流量由三层交换机直接转发。
- 优势:无需外接路由器,减少网络延迟。
- 虚拟接口特性:
- 对比物理接口:SVI没有实体端口,但可配置IP、ACL等策略,灵活性更高。
- 示例:即使物理端口故障,只要VLAN存在,SVI仍可提供网关服务。
# 例:创建VLAN 10并绑定SVI
interface Vlan10
ip address 192.168.1.254 255.255.255.0 # 分配网关IP
- 总结
- 三层交换机是局域网全能核心,路由器是广域网战略枢”,二层交换机是基层执行者。
- 二层交换机负责终端接入,三层交换机处理内网路由,路由器连接外部。
- IP路由打通子网,SVI消除VLAN壁垒。
实验环境
拓扑图
设备信息
设备名称 | 设备类型 | 接口 | IP地址/交换机SVI | 所属VLAN | IP地址/子网 | 备注 |
---|---|---|---|---|---|---|
LSV1 | 三层交换机 | GE 0/0/2 | 192.168.2.1 | VLAN 20 | 192.168.2.0/24 (Vlanif20) | 负责 VLAN 20 路由 |
GE 0/0/1 | 192.168.1.254 | VLAN 10 | 192.168.1.0/24 (Vlanif10) | 负责 VLAN 10 路由(网关) | ||
LSV2 | 三层交换机 | GE 0/0/2 | 192.168.2.2 | VLAN 20 | 192.168.2.0/24 (Vlanif20) | 与 LSV1 协同管理 VLAN 20 |
GE 0/0/1 | 192.168.3.254 | VLAN 30 | 192.168.3.0/24 (Vlanif30) | 负责 VLAN 30 路由(网关) | ||
PC1 | 终端设备 | Ethernet 0/0/1 | 192.168.1.1 | VLAN 10 | 192.168.1.0/24 | 网关为 VLAN 10 的 Vlanif10 IP |
PC2 | 终端设备 | Ethernet 0/0/1 | 192.168.3.1 | VLAN 30 | 192.168.3.0/24 | 网关为 VLAN 30 的 Vlanif30 IP |
配置VLAN
创建VLAN配置接口类型
注意:交换机之间的Trunk干链路,Trunk链路用于承载多个VLAN的流量。如果VLAN20的数据包要通过Trunk链路传输,必须确保该Trunk链路允许VLAN20通过,否则即使配置了路由,数据包也无法通过该链路。这是确保VLAN流量正确传输的基本要求。
SW1
<Huawei>sy
Enter system view, return user view with Ctrl+Z.
[Huawei]un in en
Info: Information center is disabled.
[Huawei]sy SW1
[SW1]
[SW1]vlan batch 10 20
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1]
[SW1]int g0/0/1
[SW1-GigabitEthernet0/0/1]port link-type access
[SW1-GigabitEthernet0/0/1]port default vlan 10
[SW1-GigabitEthernet0/0/1]
[SW1]int g0/0/2
[SW1-GigabitEthernet0/0/2]port link-type trunk
[SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all # 允许通过所有VLAN
[SW1-GigabitEthernet0/0/2]q
[SW1]
SW2
<Huawei>sy
Enter system view, return user view with Ctrl+Z.
[Huawei]un in en
Info: Information center is disabled.
[Huawei]sy SW2
[SW2]
[SW2]
[SW2]vl
[SW2]vlan batch 20 30
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW2]
[SW2]int g0/0/1
[SW2-GigabitEthernet0/0/1]port link-type access
[SW2-GigabitEthernet0/0/1]port default vlan 30
[SW2-GigabitEthernet0/0/1]q
[SW2]
[SW2]int g0/0/2
[SW2-GigabitEthernet0/0/2]port link-type trunk
[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan all # 允许通过所有VLAN
[SW2-GigabitEthernet0/0/2]q
[SW2]
给VLAN配置IP地址
这里 VLAN 10 和 VLAN 30 作为网关。
这里 VLAN 20 作为接口地址。
SW1交换机配置Vlanif(相当于192.168.1.0/24的网关)
192.168.1.254 将作为 VLAN 10 的网关地址,PC1(192.168.1.1)将通过这个网关与网络中的其他部分通信。
[SW1]int Vlanif 10
[SW1-Vlanif10]ip address 192.168.1.254 24 # PC1网关地址要和这个地址对上
[SW1-Vlanif10]q
[SW1]
[SW1]int Vlanif 20
[SW1-Vlanif20]ip address 192.168.2.1 24
[SW1-Vlanif20]q
[SW1]
[SW1]dis ip int b
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 4
The number of interface that is DOWN in Physical is 1
The number of interface that is UP in Protocol is 3
The number of interface that is DOWN in Protocol is 2
Interface IP Address/Mask Physical Protocol
MEth0/0/1 unassigned down down
NULL0 unassigned up up(s)
Vlanif1 unassigned up down
Vlanif10 192.168.1.254/24 up up
Vlanif20 192.168.2.1/24 up up
[SW1]
SW2交换机配置Vlanif(相当于192.168.3.0/24的网关)
192.168.3.254 将作为 VLAN 30 的网关地址,PC2(192.168.3.1)将通过这个网关与网络中的其他部分通信。
#
[SW2]int Vlanif 20
[SW2-Vlanif20]ip address 192.168.2.2 24
[SW2-Vlanif20]q
[SW2]
[SW2]int Vlanif 30
[SW2-Vlanif30]ip address 192.168.3.254 24 # PC2网关地址要和这个地址对上
[SW2-Vlanif30]q
[SW2]
[SW2]dis ip int b
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 4
The number of interface that is DOWN in Physical is 1
The number of interface that is UP in Protocol is 3
The number of interface that is DOWN in Protocol is 2
Interface IP Address/Mask Physical Protocol
MEth0/0/1 unassigned down down
NULL0 unassigned up up(s)
Vlanif1 unassigned up down
Vlanif20 192.168.2.2/24 up up
Vlanif30 192.168.3.254/24 up up
[SW2]
配置路由(三选其一)
- 静态路由适合小型网络或固定路径的场景。
- 动态路由适合大型网络或需要自动调整路径的场景。
- 默认路由适合简化配置或作为备用出口的场景。
这里举例三种路由配置,一种默认路由,一种动态路由,一种静态路由。选择其中一种即可,设备上的路由表有通往目标网段的路由,就可以进行一个跨网段的数据转发。
这里看了一下路由表,只有直连相邻的设备的路由,SW1并没有3.0网段的路由,还需要配置路由,(SW2同理)。
[SW1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 6 Routes : 6
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.254 Vlanif10
192.168.1.254/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.2.0/24 Direct 0 0 D 192.168.2.1 Vlanif20
192.168.2.1/32 Direct 0 0 D 127.0.0.1 Vlanif20
[SW1]
[SW2]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 6 Routes : 6
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.2.0/24 Direct 0 0 D 192.168.2.2 Vlanif20
192.168.2.2/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 Direct 0 0 D 192.168.3.254 Vlanif30
192.168.3.254/32 Direct 0 0 D 127.0.0.1 Vlanif30
[SW2]
默认路由配置
默认路由是一种路由配置,它将所有未明确指定目的地的数据包转发到一个预设的下一跳地址。(默认路由是静态路由的特殊形式)
# 默认路由配置
# ip route-static 0.0.0.0 0 [下一跳地址]
# ip route-static 0.0.0.0 0.0.0.0 [下一跳地址]
这里用的是默认路由,SW1上面配置了一条默认路由之后,也要在SW2上面配置一条默认路由,路由向来是有去有回的。
# SW1 配置默认路由
[SW1]ip route-static 0.0.0.0 0 192.168.2.2
# SW2 配置默认路由
[SW2]ip route-static 0.0.0.0 0 192.168.2.1
SW1和SW2路由表(默认路由)
# 默认路由是匹配不在路由表上的任何网段的路由,SW1路由表上看不到192.168.3.0/24网段是正常的。
[SW1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
0.0.0.0/0 Static 60 0 RD 192.168.2.2 Vlanif20 # 默认路由
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.254 Vlanif10
192.168.1.254/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.2.0/24 Direct 0 0 D 192.168.2.1 Vlanif20
192.168.2.1/32 Direct 0 0 D 127.0.0.1 Vlanif20
[SW1]
#
[SW2]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
0.0.0.0/0 Static 60 0 RD 192.168.2.1 Vlanif20 # 默认路由
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.2.0/24 Direct 0 0 D 192.168.2.2 Vlanif20
192.168.2.2/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 Direct 0 0 D 192.168.3.254 Vlanif30
192.168.3.254/32 Direct 0 0 D 127.0.0.1 Vlanif30
[SW2]
OSPF 动态路由
OSPF(开放最短路径优先)是一种基于链路状态的内部网关协议,用于在自治系统内部动态发现和传播路由信息。
在标准OSPF配置中(如宣告直连网段、配置区域),下一跳由协议自动生成,无需手动干预。
ospf 1 # 启动OSPF协议,并指定进程ID为1。进程ID是一个标识符,用于区分不同的OSPF实例。
area 0 # 指定配置的是OSPF的区域0,也就是骨干区域。OSPF使用区域来组织网络,骨干区域是所有其他区域必须连接的中心区域
network 0.0.0.0 0.0.0.0 # 这是一个特殊的OSPF网络声明,它使用通配符掩码0.0.0.0来匹配所有接口。这意味着路由器上的所有接口都会被加入到OSPF区域0中。
- 备注:
- 网络地址(network address):0.0.0.0 表示匹配任何IP地址。
- 反掩码(wildcardmask):0.0.0.0 表示不进行任何匹配过滤,即匹配所有接口。
# SW1
[SW1]ospf 1
[SW1-ospf-1]area 0
[SW1-ospf-1-area-0.0.0.0]network 0.0.0.0 0.0.0.0
[SW1-ospf-1-area-0.0.0.0]
# SW2
[SW2]ospf 1
[SW2-ospf-1]area 0
[SW2-ospf-1-area-0.0.0.0]network 0.0.0.0 0.0.0.0
[SW2-ospf-1-area-0.0.0.0]
SW1和SW2路由表(动态路由)
[SW1-ospf-1-area-0.0.0.0]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.254 Vlanif10
192.168.1.254/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.2.0/24 Direct 0 0 D 192.168.2.1 Vlanif20
192.168.2.1/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 OSPF 10 2 D 192.168.2.2 Vlanif20 # 这里可以看到已经获取到3.0段的路由
[SW1-ospf-1-area-0.0.0.0]
[SW2-ospf-1-area-0.0.0.0]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 OSPF 10 2 D 192.168.2.1 Vlanif20 # 这里可以看到已经获取到1.0段的路由
192.168.2.0/24 Direct 0 0 D 192.168.2.2 Vlanif20
192.168.2.2/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 Direct 0 0 D 192.168.3.254 Vlanif30
192.168.3.254/32 Direct 0 0 D 127.0.0.1 Vlanif30
[SW2-ospf-1-area-0.0.0.0]
静态路由
使用静态路由指向具体的目标网段
# 静态路由,配置去192.168.3.0/24网段
[SW1]ip route-static 192.168.3.0 24 192.168.2.2
# 静态路由,配置去192.168.1.0/24网段
[SW2]ip route-static 192.168.1.0 24 192.168.2.1
SW1和SW2路由表(静态路由)
[SW1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.254 Vlanif10
192.168.1.254/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.2.0/24 Direct 0 0 D 192.168.2.1 Vlanif20
192.168.2.1/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 Static 60 0 RD 192.168.2.2 Vlanif20 # 静态路由
[SW1]
#
[SW2]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Static 60 0 RD 192.168.2.1 Vlanif20 # 静态路由
192.168.2.0/24 Direct 0 0 D 192.168.2.2 Vlanif20
192.168.2.2/32 Direct 0 0 D 127.0.0.1 Vlanif20
192.168.3.0/24 Direct 0 0 D 192.168.3.254 Vlanif30
192.168.3.254/32 Direct 0 0 D 127.0.0.1 Vlanif30
[SW2]
- 跨网段通信必须配置路由,因为不同网段之间的设备无法直接通信。
- 路由的作用是告诉路由器或三层交换机如何将数据包转发到目标网段。
- 路由配置可以是静态的、动态的或默认的,具体选择取决于网络规模和需求。
测试
PC1能和PC2通信
要实现三层交换机上不同网段的通信,需要确保正确配置VLAN接口(SVI)并分配适当的IP地址,同时在交换机之间配置trunk链路以允许必要的VLAN通过,从而实现不同网段间的路由。