本文档描述了使用通过集成路由和桥接 (IRB) 功能路由和桥接 IP 的路由器实施的 VLAN 的级数行进。此外,本文档还提供了在路由器上配置 IRB 功能的配置示例。
注意:Catalyst 6500系列交换机和Cisco 7600系列路由器上故意禁用了IRB。有关详细信息,请参阅 Catalyst 6000 及 Cisco 7600 Supervisor 引擎和 MSFC 上的 Cisco IOS 版本 12.1 E 的发行版本注释中的一般限制部分。
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
本文档没有任何特定的前提条件。
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备创建的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您是在真实网络上操作,请确保您在使用任何命令前已经了解其潜在影响。
为了使 VLAN 能跨越路由器,路由器必须能够在维护 VLAN 报头的同时,将帧从一个接口转发到另一个接口。如果路由器被配置为路由第 3 层(网络层)协议,则它将会在帧到达的接口上终止 VLAN 和 MAC 层。如果路由器桥接网络层协议,则可以维护 MAC 层报头。但是,正常的桥接仍然会终止 VLAN 报头。使用Cisco IOS®版本11.2或更高版本中的IRB功能,可以对路由器进行配置,以便在同一接口上路由和桥接相同的网络层协议。这就使得在将帧从路由器的一个接口转发到另一个接口上时,可以维护帧中的 VLAN 报头。通过 IRB,可以在桥接域和带有网桥组虚拟接口 (BVI) 的路由域之间进行路由。BVI 是路由器中的虚拟接口,它与不支持桥接功能的普通路由接口类似,但是它还可以将网桥组表示为路由器中的路由接口。BVI 的接口编号就是虚拟接口表示的网桥组的编号。编号是 BVI 和网桥组之间的链路。
在 BVI 上配置并启用路由时,从路由接口进入但目标为网桥组中某个网段上的主机的数据包将被路由到 BVI。然后数据包将被从 BVI 转发到桥接引擎,桥接引擎再通过网桥接口将其转发。数据包将根据目标 MAC 地址被转发。同样地,从网桥接口进入但目标为路由网络上的主机的数据包将首先被转发到 BVI。接下来,BVI 将数据包转发到路由引擎,然后路由引擎再通过路由接口将其转发。在单个物理接口上,可以使用两个VLAN子接口(802.1Q标记)创建IRB;一个VLAN子接口具有用于路由的IP地址,另一个VLAN子接口桥接用于路由的子接口与路由器上的其他物理接口。
因为 BVI 将网桥组表示为路由接口,所以仅可以为其配置第 3 层 (L3) 特性,例如网络层地址。与此类似,不能为配置用来桥接协议的接口配置任何 L3 特性。
在图 I 中,PC A 和 B 连接到 VLAN 上,而 VLAN 又被路由器分隔。这说明了一个常见的误解,即认为一个 VLAN 可以在其中心拥有基于路由器的连接。
此图也显示了穿越 PC A 和 PC B 之间的链路的数据帧的三层报头的流向。
当帧流过交换机时,应用了 VLAN 报头,因为该连接是中继链路。在中继链路中可能有多个 VLAN 在进行通信。
路由器会终止 VLAN 层和 MAC 层。它会检查目标 IP 地址,然后相应地转发帧。在本示例中,将把 IP 帧从端口中转发到 PC B。这也是 VLAN 中继,因此将应用 VLAN 报头。
虽然将交换机 2 与路由器连接的 VLAN 和将交换机 1 与路由器连接的 VLAN 可以有相同的编号,但实际上它们不是同一个 VLAN。当帧到达路由器时,原始 VLAN 报头将被删除。当帧离开路由器时,可能会应用一个新的报头。这个新报头中包含的 VLAN 编号可能与帧到达时被剥离的 VLAN 报头中使用的 VLAN 编号相同。可用来说明上述内容的事实是:穿过路由器的 IP 帧没有附加 VLAN 报头,IP 帧是根据 IP 目标地址字段中的内容而不是根据 VLAN ID 字段中的内容进行转发的。
由于两个 VLAN 中继位于路由器的两端,它们必须属于不同的 IP 子网。
为了使两个 PC 有相同的子网地址,路由器必须在其接口上桥接 IP。然而,让 VLAN 上的设备共享同一子网并不意味着这些设备位于同一 VLAN 上。
图 II 显示了 VLAN 拓扑结构的样子。
通过在与 VLAN 连接的路由器的部分或所有接口上桥接 IP,可以避免在传输过程中为 IP 终端站重新分配地址。然而,这也会丧失建立基于路由器的网络来控制网络层广播的所有好处。图 III 显示了将路由器配置为桥接 IP 时,会发生什么变化。图 IV 显示了将路由器配置为使用 IRB 来桥接 IP 时,会发生什么。
图 III 显示了路由器正在桥接 IP。两个 PC 当前处在同一子网上。
注意:路由器(网桥)现在将MAC层报头转发到外向接口。路由器仍然会终止 VLAN 报头并在将帧发送到 PC B 之前应用一个新的报头。
图 IV 显示了配置 IRB 时,会发生什么。VLAN 此时跨越了路由器,并且当帧流经路由器时,会维护 VLAN 报头。
此配置是 IRB 的示例配置。此配置允许在两个以太网接口之间桥接 IP,并允许使用网桥虚拟接口 (BVI) 从网桥接口路由 IP。在以下网络图中,当 PC_A 尝试与 PC_B 联系时,路由器 R1 检测到目标 (PC_B) 的 IP 地址在相同的子网内,因此路由器 R1 将在接口 E0 和 E1 之间桥接数据包。当 PC_A 或 PC_B 尝试与 PC_C 联系时,路由器 R1 检测到目标 (PC_C) 的 IP 地址位于一个不同的子网内,因此路由器 R1 将使用 BVI 路由数据包。这种情况下,将在同一个路由器上桥接和路由 IP 协议。
配置示例 |
---|
Current configuration: ! version 12.0 service timestamps debug uptime service timestamps log uptime no service password-encryption ! hostname R1 ! ! ip subnet-zero no ip domain-lookup bridge irb !-- This command enables the IRB feature on this router. ! ! ! interface Ethernet0 no ip address no ip directed-broadcast bridge-group 1 !-- The interface E0 is in bridge-group 1. ! Interface Ethernet1 no ip address no ip directed-broadcast bridge-group 1 !-- The interface E1 is in bridge-group 1. ! Interface Serial0 ip address 10.10.20.1 255.255.255.0 no ip directed-broadcast no ip mroute-cache no fair-queue ! interface Serial1 no ip address no ip directed-broadcast shutdown ! interface BVI1 ip address 10.10.10.1 255.255.255.0 !-- An ip address is assigned to the logical BVI for routing !-- IP between bridged interfaces and routed interfaces. no ip directed-broadcast ! ip classless ip route 10.10.30.0 255.255.255.0 10.10.20.2 ! bridge 1 protocol ieee !-- This command enables the bridging on this router. bridge 1 route ip !-- This command enable bridging as well routing for IP protocol. ! line con 0 transport input none line aux 0 line vty 0 4 ! end |
show interfaces [interface] irb
此命令用于显示指定的接口上可路由或桥接的协议,如下所示:
R1#show interface e0 irb Ethernet0 Routed protocols on Ethernet0: ip Bridged protocols on Ethernet0: ip ipx !-- IP protocol is routed as well as bridged. Software MAC address filter on Ethernet0 Hash Len Address Matches Act Type 0x00: 0 ffff.ffff.ffff 0 RCV Physical broadcast 0x2A: 0 0900.2b01.0001 0 RCV DEC spanning tree 0x9E: 0 0000.0c3a.5092 0 RCV Interface MAC address 0x9E: 1 0000.0c3a.5092 0 RCV Bridge-group Virtual Interface 0xC0: 0 0100.0ccc.cccc 157 RCV CDP 0xC2: 0 0180.c200.0000 0 RCV IEEE spanning tree 0xC2: 1 0180.c200.0000 0 RCV IBM spanning tree R1#
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
08-Sep-2014 |
初始版本 |