现代多层交换机似乎同时支持 SVI(交换机虚拟接口)和子接口概念。两者都是用于执行路由选择功能的虚拟层3点的概念和一些设备支持两者。
有时,文档甚至可以对 SVI 和子接口设置复合限制,同时突出显示相似之处。这是Cisco Catalyst 9500 系列交换机的片段。
您不能配置超过 4,000 个三层 VLAN 接口。所有路由接口、SVI 接口和子接口的总和应等于或小于 4000。
多层交换机的SVI和子接口有什么区别?一个总是可以用来代替另一个吗?
现代多层交换机似乎同时支持 SVI(交换机虚拟接口)和子接口概念。两者都是用于执行路由选择功能的虚拟层3点的概念和一些设备支持两者。
有时,文档甚至可以对 SVI 和子接口设置复合限制,同时突出显示相似之处。这是Cisco Catalyst 9500 系列交换机的片段。
您不能配置超过 4,000 个三层 VLAN 接口。所有路由接口、SVI 接口和子接口的总和应等于或小于 4000。
多层交换机的SVI和子接口有什么区别?一个总是可以用来代替另一个吗?
对 zac67 在他的回答中已经给出的内容进行了扩展:
在路由接口(又名no switchport)的标记(子)接口上使用的 VLAN ID可以完全独立于交换机的“交换”上下文 [1]。
在扩展中:子接口上使用的 VLAN 标记不会在交换机上显示为 L2 VLAN,既不消耗也不属于(每个 VLAN-)生成树的任何实例,并且不会成为任何 VTP/ GVRP 设置等。甚至可以有使用相同(重叠)VLAN 标记的多个路由接口的子接口 - 它们将完全独立:有时,这称为“端口本地 VLAN 感知”。
给出一个自由编写的配置示例,用伪 Cisco 配置说话。本质上,这与经典路由器(ISR G1、ISR G2、ISR 4K 等)获得 VLAN 感知子接口的方式非常相似(当然,经典路由器不需要“无交换机端口”部分)
interface gig1/1
no switchport
interface gig1/1.100
encapsulation dot1q 100
ip address 192.168.100.1/24
...
interface gig1/1.200
encapsulation dot1q 200
ip address 192.168.200.1/24
...
interface gig1/2
no switchport
interface gig1/2.100
encapsulation dot1q 100
ip address 192.168.201.1/24
...
相反,SVI 基于给定交换机上给定 VLAN(如“L2-VLAN”)的存在。因此,要拥有 SVI,您需要首先创建所述 VLAN,正确设置其生成树,检查它是否是 VTP/GVRP 的一部分(如果有意等)。
然后,您将确保与其相关的交换机端口设置正确(有些是access vlan xxx,有些可能是switchport trunk allowed vlan xxx,有些带有 portfast,有些没有...),然后您可以通过interface vlan xxx.
由于每个交换机的 VLAN 是唯一的(至少对于普通的、不支持 VDC 的交换机),这种唯一性限制也适用于 SVI。interface vlan xxx同一个 VLAN ID不能有多个。
vlan 100
name MyVLAN100
vlan 200
name MyVLAN200
spanning-tree vlan 100 priority 16384
spanning-tree vlan 200 priority 16384
interface vlan 100
ip address 192.168.100.1/24
...
interface vlan 200
ip address 192.168.200.1/24
...
interface gig1/1
switchport mode trunk
switchport switchport trunk allowed vlan 100,200
spanning-tree port type edge trunk
...
[1] 嗯……有点。有些交换机(例如 Cat6500)在配置路由端口时会消耗 VLAN ID(此后隐藏),并且它们有问题或显然不允许此类路由端口的标记子接口。在幕后,他们会在内部配置一个没有生成树的 VLAN,将配置的端口映射到该 VLAN,并添加一个带有伪路由端口的配置 IP 地址的 SVI)。
子接口是物理接口的一部分,用于单个 VLAN。通常,您只有那些不参与 L2 转发 = 交换的路由接口 (L3)。
SVI(交换机虚拟接口)是到 VLAN 实例本身的网络层绑定 (L3) - 由于 VLAN 分布在所有参与的端口上,因此该绑定是虚拟的(交换机虚拟接口)。与子接口一样,SVI 可用于路由、管理、DHCP、...
主要区别在于 SVI 绑定到用于 L2 交换的 VLAN,而子接口是 L3 接口的一部分,不参与 L2 交换。因此,子接口上的特定 VLAN ID 可能指示与另一个接口上的相同 VLID不同的VLAN(L2 段也称为广播域)。
当您使用 VLAN 进行第 2 层配置时,每个 VLAN 基本上都充当虚拟交换机。毕竟,这就是 VLAN 的意义所在。您可以将流量视为通过端口进入,拆分(解复用)为不同的 VLAN 流,在每个 VLAN 中独立进行 L2 交换,然后在输出端,来自不同 VLAN 的流合并(复用)在它们流出单个物理端口之前再次。
(当然,交换机实际上并没有为每个 VLAN 单独布线。它们大多表现得好像它们是一样的)
交换机还具有某种实现虚拟路由器(但不是交换机)的第 3 层处理硬件。
SVI 将其中一个 VLAN 虚拟交换机连接到虚拟路由器。如果数据包被广播或寻址到虚拟路由器,它会在那里被转发,就像它会被转发到连接到 VLAN 中的端口的主机一样。(可以有额外的过滤,作为优化)
相比之下,子接口将虚拟路由器直接连接到 VLAN 复用/解复用层。这意味着每个端口/VLAN 组合都可以有一个单独的第 3 层接口。这也意味着第 2 层转发不适用于该端口/VLAN 组合。
有些交换机每个端口仅支持一种模式或另一种模式,有些交换机允许您混合搭配,某些 VLAN 使用 L2 桥接,其他 VLAN 使用 L3 子接口。
这是一个概念模型 - 实际实现可能会有所不同。
术语 SVI 和子接口几乎相同。它的功能似乎也相同,但随着我们使用它的地方,它的终端学发生了变化..
一般子接口配置在路由器中用于路由器和棒配置或Vlan间配置,以确保不同Vlan或不同子网之间的通信。
而SVI(交换机虚拟接口)配置在三层交换机或多层交换机中,交换机可以同时在二层和三层上运行..三层交换机中的SVI配置将确保不同VLAN或不同子网之间的通信..
路由器子接口配置
它是特定子网的 L3 接口
Router(config)# int f0/1
Router(config)#no ip address
Router(config)#no shutdown
Router(config)#int f0/1.10
Router(config)#encapsulation dot1 10
Router(config)#ip address 192.168.10.1 255.255.255.0
Router (config)#no shutdown
SVI配置三层交换机(多层三层交换机)
Switch (config) # interfàce vlan 10
Switch (config)#iip address 192.168.10.1 255.255.255.0
Switch (config) #no shutdown