目录

简介

先决条件

要求

使用的组件

规则

背景信息

配置

网络图

配置

debug 和 show 命令

show 命令输出示例

Catalyst 交换机

Cisco 路由器

相关信息

简介

本文档介绍如何使用外部Cisco路由器配置配置以设置VLAN间路由。

先决条件

要求

思科建议您了解以下主题：

- 基本的路由知识。

使用的组件

本文档中的信息基于以下软件和硬件版本：

- 运行Cisco IOS 12.0(5.x)XU的Catalyst 3512XL交换机

- 运行Cisco IOS 12.1(3)T的Cisco 2621路由器

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

规则

有关文件规则的更多信息请参见“ Cisco技术提示规则”。

背景信息

本文档介绍使用外部Cisco路由器设置VLAN间路由的配置，并通过在Catalyst 3500-XL交换机和Cisco 2600路由器之间的802.1Q中继上的示例配置进行说明；每个命令的执行结果均显示出来。Cisco 3600或Cisco 2600系列路由器的其他成员（具有快速以太网接口）以及任何Catalyst交换机都可以在本文档中介绍的场景中使用，以获得相同结果。

中继是一种在两个设备之间点到点链路上传输来自若干 VLAN 的流量的方式。最初，以太网中继的实施方式有两种：

- InterSwitch Link(ISL)Cisco专有协议。

- 电气电子工程师协会(IEEE)802.1Q标准。

Trunk链路创建并用于在Catalyst交换机和/或Cisco路由器之间的单个链路上传输来自两个或多个VLAN（例如VLAN1和VLAN2）的流量。

Cisco路由器用于在VLAN-X和VLAN-Y之间执行VLAN间路由，当Catalyst系列交换机仅是第2层(L2)且无法在VLAN（例如2900XL/3500XL/2940/2950/2970）之间路由或通信时，此配置非常有用。

为了创建本文档中的示例，实验室环境中的下一台交换机使用了已清除的配置：

- 运行Cisco IOS 12.0(5.x)XU的Catalyst 3512XL交换机

- 运行Cisco IOS 12.1(3)T的Cisco 2621路由器

对于 Catalyst 2900XL/3500XL/2940/2950/2970 交换机：

有关支持中继的交换机型号的示例列表，请参阅表1:

表 1

交换机型号

IEEE 802.1Q 中继所要求的最低版本

中继 (ISL/802.1Q) 所要求的当前版本

C2912-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

C2924-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C2924C-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C2924M-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C2912MF-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C2924M-XL-DC

12.0(5)XU

12.0(5)WC(1) 或更高版本

WS-C3508G-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C3512-XL

11.2(8)SA5（原始版本）

12.0(5)WC(1) 或更高版本

WS-C3524-XL

11.2(8)SA5（企业版）

12.0(5)WC(1) 或更高版本

WS-C3548-XL

12.0(5)XP（企业版）

12.0(5)WC(1) 或更高版本

WS-C3524-PWR-XL

12.0(5)XU

12.0(5)WC(1) 或更高版本

WS-C2940-8TF

12.1(13)AY

12.1(13)AY 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2940-8TT

12.1(13)AY

12.1(13)AY 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950-12

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950-24

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950C-24

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950T-24

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950G-12-EI

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950G-24-EI

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950G-48-EI

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950SX-24

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2950-24-EI-DC

12.0(5)WC(1)

12.0(5)WC(1) 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2955T-12

12.1(13)EA1

12.1(13)EA1 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2955S-12

12.1(13)EA1

12.1(13)EA1 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2955C-12

12.1(13)EA1

12.1(13)EA1 或以上版本，支持 802.1Q。不支持 ISL。

WS-C2970G-24T

12.1(11)AX

12.1(11)AX 或以上版本

WS-C2970G-24TS

12.1(14)EA1

12.1(14)EA1 或以上版本

注意：只有思科注册用户才能访问内部文档、工具和信息。

注：在Catalyst 2900XL/3500XL/2940/2950/2970交换机中，可以为交换机上配置的每个VLAN创建一个VLAN接口，例如int vlan 1、int vlan 2和int vlan x。然而，每次只有一个 VLAN 可用作管理 VLAN。IP 地址只分配到管理 VLAN 的 VLAN 接口。如果将IP地址分配给其VLAN未用作管理VLAN的另一个VLAN接口，则该接口无法启动。首选的做法是只为管理 VLAN 创建 VLAN 接口。

适用于Cisco 2600路由器

在使用 802.1Q 中继时，有一个 VLAN 不会被标记。此 VLAN 称为本地 VLAN。当端口在 802.1Q 中继模式下时，本地 VLAN 用于未标记的数据流。配置802.1Q中继时，请记住，中继链路两端的本征VLAN必须配置相同。当路由器和交换机之间配置了802.1Q中继时，不匹配本征VLAN是一个常见的错误。

在此示例配置中，默认情况下，Cisco路由器和Catalyst交换机上的本征VLAN都是VLAN1。根据您的网络需求，您必须使用除默认VLAN(VLAN1)以外的本征VLAN。本文档的配置部分中提到了如何更改这些设备上的本地VLAN的命令。

本文档中介绍的示例配置可用于Cisco 2600/3600和其他具有快速以太网接口或更高接口的系列路由器。此外，请确保使用支持802.1Q VLAN中继的Cisco IOS版本。有关支持802.1Q VLAN中继和受支持的Cisco IOS版本的Cisco 2600/3600路由器的示例列表，请参阅表2。

表 2

路由器型号

IEEE 802.1Q 中继所要求的最低版本

所要求的最低功能集 (ISL/802.1Q)

Cisco 2620

12.0(1)公吨

IP PLUS/IP PLUS

Cisco 2621

12.0(1)公吨

IP PLUS/IP PLUS

Cisco 2620

12.1(3a)吨

IP PLUS/IP PLUS

Cisco 2650

12.1(3a)吨

IP PLUS/IP PLUS

Cisco 3620

12.0(1)公吨

IP PLUS/IP PLUS

Cisco 3640

12.0(1)公吨

IP PLUS/IP PLUS

Cisco 3661

12.0(5)T

IP PLUS/IP PLUS

Cisco 3662

12.0(5)T

IP PLUS/IP PLUS

Cisco 4500-M

12.0(1)公吨

IP PLUS/IP PLUS

Cisco 4700-M

12.0(1)公吨

IP PLUS/IP PLUS

注意：只有思科注册用户才能访问内部文档、工具和信息。

注意：表2仅列出支持此示例配置的最低或当前维护/主要版本。带有某些网络模块的路由器型号可以具有不同的最低Cisco IOS版本。

注意：支持的最低版本不一定就是推荐的版本。要确定思科产品的最佳维护版本，请在Bug工具包中搜索按产品组件列出的错误。

注意：表2列出了执行IP Inter-VLAN路由和中继所需的最低功能集，以支持此示例配置。

配置

本部分提供有关如何配置本文档所述功能的信息。

网络图

本文档使用此图所示的网络设置。

网络图

网络图

配置

本文档使用以下配置。

- Catalyst 3500-XL

- Cisco 2600 路由器

- 使用版本低于 12.1(3)T 的 Cisco IOS 的路由器的 802.1Q 配置

注意：下一个屏幕截图显示了在3500XL交换机上输入的命令。命令之间的备注添加为蓝色斜体，旨在解释特定命令和步骤。

Catalyst 3500-XL

!-- Set the privileged mode

!-- and Telnet password on the switch.

switch#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

switch(config)#hostname 3512xl

3512xl(config)#enable password mysecret

3512xl(config)#line vty 0 4

3512xl(config-line)#login

3512xl(config-line)#password mysecret

3512xl(config-line)#exit

3512xl(config)#no logging console

3512xl(config)#^Z

!-- Set the IP address and default gateway for VLAN1 for management purposes.

3512xl#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

3512xl(config)#interface vlan 1

3512xl(config-if)#ip address 10.10.10.2 255.255.255.0

3512xl(config-if)#exit

3512xl(config)#ip default-gateway 10.10.10.1

3512xl(config)#end

!-- Set the VTP Mode. In our example, we have set the mode to be transparent.

!-- Depending on your network, set the VTP Mode accordingly.

3512xl#vlan database

3512xl(vlan)#vtp transparent

Setting device to VTP TRANSPARENT mode.

!-- Adding VLAN2. VLAN1 already exists by default.

3512xl(vlan)#vlan 2

VLAN 2 added:

Name: VLAN0002

3512xl(vlan)#exit

APPLY completed.

Exiting....

!-- Enable trunking on the interface fastEthernet 0/1.

!-- Enter the trunking encapsulation as either as dot1q.

3512xl#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

3512xl(config)#interface fastEthernet 0/1

3512xl(config-if)#switchport mode trunk

3512xl(config-if)#switchport trunk encapsulation dot1q

!-- In case of 2940/2950 series switches, none of the above two commands are used,

!-- 2940/2950 series switches only support 802.1q encapsulation which is configured automatically,

!-- when trunking is enabled on the interface by using switchport mode trunk command.

!-- In case of dot1q, you need to make sure that the native VLAN matches across the link.

!-- On Catalyst Switches, by default, the native VLAN is 1.

!-- It is very important that you change the native VLAN on the router accordingly.

!-- You may change the native VLAN, if needed, by using the following command:

!-- 3512xl(config-if)#switchport trunk native vlan

!-- Allow all VLANs on the trunk.

3512xl(config-if)#switchport trunk allowed vlan all

3512xl(config-if)#exit

!-- The following set of commands can place FastEthernet 0/2 into VLAN2.

3512xl(config)#interface fastEthernet 0/2

3512xl(config-if)#switchport mode access

3512xl(config-if)#switchport access vlan 2

3512xl(config-if)#exit

!-- FastEthernet 0/3 is already in VLAN1 by default.

3512xl(config)#interface fastEthernet 0/3

3512xl(config-if)#switchport mode access

3512xl(config-if)#^Z

!-- Remember to save the configuration.

3512xl#write memory

Building configuration...

3512xl#

--------------------------------------------------------------------------------

3512xl#show running-config

Building configuration...

Current configuration:

!

version 12.0

no service pad

service timestamps debug uptime

service timestamps log uptime

no service password-encryption

!

hostname 3512xl

!

no logging console

enable password mysecret

!

!

!

!

!

ip subnet-zero

!

!

!

interface FastEthernet0/1

switchport mode trunk

switchport trunk encapsulation dot1q

!

interface FastEthernet0/2

switchport access vlan 2

switchport mode access

!

interface FastEthernet0/3

switchport mode access

!

interface FastEthernet0/4

!

interface FastEthernet0/5

!

interface FastEthernet0/6

!

interface FastEthernet0/7

!

interface FastEthernet0/8

!

interface FastEthernet0/9

!

interface FastEthernet0/10

!

interface FastEthernet0/11

!

interface FastEthernet0/12

!

interface GigabitEthernet0/1

!

interface GigabitEthernet0/2

!

interface VLAN1

ip address 10.10.10.2 255.255.255.0

no ip directed-broadcast

no ip route-cache

!

ip default-gateway 10.10.10.1

!

line con 0

transport input none

stopbits 1

line vty 0 4

password mysecret

login

line vty 5 15

login

!

end

2600 路由器

注：下一个屏幕截图显示了在Cisco 2600路由器上输入的命令。命令之间的注释以斜体形式添加，以解释某些命令和步骤。

!-- Set the privileged mode

!-- and Telnet password on the router.

Router#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

Router(config)#hostname c2600

c2600(config)#enable password mysecret

c2600(config)#line vty 0 4

c2600(config-line)#login

c2600(config-line)#password mysecret

c2600(config-line)#exit

c2600(config)#no logging console

c2600(config)#^Z

c2600#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

!-- Select FastEthernet 0/0 for the trunk configuration.

!-- No L2 or Layer 3 (L3) configuration is done here.

c2600(config)#interface fastEthernet 0/0

c2600(config-if)#no shut

c2600(config-if)#exit

!-- Enable trunking on the sub-interface FastEthernet 0/0.1.

!-- The actual trunks are configured on the sub-interfaces.

c2600(config)#interface fastEthernet 0/0.1

!-- Enter the trunking encapsulation as dot1q.

!-- Make sure that the native VLAN matches across the link.

!-- On the switch, by default, the native VLAN is 1.

!-- On the router, configure VLAN1 as the native VLAN.

c2600(config-subif)#encapsulation dot1Q 1 ?

native  Make this is native vlan

<cr>

c2600(config-subif)#encapsulation dot1Q 1 native

!-- On the switch, if you have a native VLAN other than VLAN1,

!-- on the router, configure the same VLAN to be the native VLAN,

!-- by using the above command.

注:Cisco IOS版本12.1(3)T中添加了encapsulation dot1Q 1 native命令。

!-- Configure L3 information on the sub-interface 0/0.1.

c2600(config-subif)#ip address 10.10.10.1 255.255.255.0

c2600(config-subif)#exit

!-- Enable trunking on the sub-interface FastEthernet 0/0.2.

!-- The actual trunks are configured on the sub-interfaces.

!-- Enter the trunking encapsulation as dot1q:

c2600(config)#int fastEthernet 0/0.2

c2600(config-subif)#encapsulation dot1Q 2

!-- Configure L3 information on the sub-interface 0/0.2.

c2600(config-subif)#ip address 10.10.11.1 255.255.255.0

c2600(config-subif)#exit

c2600(config)#^Z

!-- Remember to save the configuration.

c2600#write memory

Building configuration...

[OK]

c2600#

注：要使此设置正常运行，并且要在workstation1和workstation2之间成功ping，您需要确保工作站上的默认网关设置正确。对于workstation1，默认网关必须为10.10.11.1；对于workstation2，默认网关必须为10.10.10.1。

--------------------------------------------------------------------------------

c2600#show running-config

Building configuration...

Current configuration:

!

version 12.1

service timestamps debug uptime

service timestamps log uptime

no service password-encryption

!

hostname c2600

!

no logging console

enable password mysecret

!

!

!

!

!

ip subnet-zero

!

!

!

!

!

!

!

!

!

!

interface FastEthernet0/0

no ip address

duplex auto

speed auto

!

interface FastEthernet0/0.1

encapsulation dot1q 1 native

ip address 10.10.10.1 255.255.255.0

no ip redirects

!

interface FastEthernet0/0.2

encapsulation dot1q 2

ip address 10.10.11.1 255.255.255.0

no ip redirects

!

!

interface FastEthernet0/1

no ip address

shutdown

duplex auto

speed auto

!

ip classless

no ip http server

!

!

!

line con 0

transport input none

line aux 0

line vty 0 4

password mysecret

login

!

no scheduler allocate

end

debug 和 show 命令

此部分帮助您确认您的配置是否按预期工作。

在Catalyst交换机上，您可以使用以下命令帮助进行验证：

- show interface {FastEthernet | GigabitEthernet}

switchport

- show vlan

- show vtp status

在Cisco 2600路由器上，使用以下命令：

- show ip route

- show interface

show 命令输出示例

Catalyst 交换机

show int {FastEthernet | GigabitEthernet}

switchport

此命令用来检查端口的管理和运行状态。还用来确保中继两端的本地 VLAN 互相匹配。当端口在 802.1Q 中继模式下时，本地 VLAN 用于未标记的数据流。

对于802.1Q中继，输出命令显示：

3512xl#show int fastEthernet 0/1 switchport

Name: Fa0/1

Switchport: Enabled

Administrative mode: trunk

Operational Mode: trunk

Administrative Trunking Encapsulation: dot1q

Operational Trunking Encapsulation: dot1q

Negotiation of Trunking: Disabled

Access Mode VLAN: 0 ((Inactive))

Trunking Native Mode VLAN: 1 (default)

Trunking VLANs Enabled: ALL

Trunking VLANs Active: 1,2

Pruning VLANs Enabled: 2-1001

Priority for untagged frames: 0

Override vlan tag priority: FALSE

Voice VLAN: none

show vlan

此命令用于验证接口（端口）是否属于正确的 VLAN。在本示例中，只有接口Fa0/2属于VLAN2。其他接口属于 VLAN1。

3512xl#show vlan

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

1    default                          active    Fa0/3, Fa0/4, Fa0/5, Fa0/6,

Fa0/7, Fa0/8, Fa0/9, Fa0/10,

Fa0/11, Fa0/12, Gi0/1, Gi0/2

2    VLAN0002                         active    Fa0/2

1002 fddi-default                     active

1003 token-ring-default               active

1004 fddinet-default                  active

1005 trnet-default                    active

...(output suppressed)

show vtp status

此命令用来检查交换机上的 VLAN 中继协议 (VTP) 配置。在本示例中，使用透明模式。正确的 VTP 模式取决于网络拓扑结构。

3512xl#show vtp status

VTP Version                     : 2

Configuration Revision          : 0

Maximum VLANs supported locally : 254

Number of existing VLANs        : 6

VTP Operating Mode              : Transparent

VTP Domain Name                 :

VTP Pruning Mode                : Disabled

VTP V2 Mode                     : Disabled

VTP Traps Generation            : Disabled

MD5 digest                      : 0xC3 0x71 0xF9 0x77 0x2B 0xAC 0x5C 0x97

Configuration last modified by 0.0.0.0 at 0-0-00 00:00:00

Cisco 路由器

show ip route

此命令可告知L3路由器上配置的子接口的相关路由信息。

c2600#show ip route

Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP

a - application route

+ - replicated route, % - next hop override, p - overrides from PfR

Gateway of last resort is not set

10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks

C        10.10.10.0/24 is directly connected, fastEthernet0/0.1

L        10.10.10.1/32 is directly connected, fastEthernet0/0.1

C        10.10.11.0/24 is directly connected, fastEthernet0/0.2

L        10.10.11.1/32 is directly connected, fastEthernet0/0.2

show interface

此命令用来检查接口的管理和运行状态。对于路由器接口状态，输出命令显示：

c2600#show interfaces fastEthernet 0/0.1

FastEthernet0/0.1 is up, line protocol is up

Hardware is AmdFE, address is 0003.e36f.41e0 (bia 0003.e36f.41e0)

Internet address is 10.10.10.1/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation 802.1Q Virtual LAN, Vlan ID  1.

ARP type: ARPA, ARP Timeout 04:00:00

c2600#show interfaces fastEthernet 0/0.2

FastEthernet0/0.2 is up, line protocol is up

Hardware is AmdFE, address is 0003.e36f.41e0 (bia 0003.e36f.41e0)

Internet address is 10.10.11.1/24

MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation 802.1Q Virtual LAN, Vlan ID  2.

ARP type: ARPA, ARP Timeout 04:00:00

相关信息

- 在Catalyst 3550/3750和Catalyst交换机之间配置802.1q中继

- 使用PortFast和其他命令解决工作站启动连接延迟问题

- 技术支持和下载 — Cisco Systems