目录

简介

先决条件

要求

使用的组件

规则

背景信息

网络环境

仅允许来自AS 4的网络进入Router 1

只允许通过 AS4 的网络输入 AS3

拒绝起源于 AS4 的网络输入 AS3 但允许所有其它网络这么做

只允许起源于 AS4 的网络和直接连接到 AS4 的 AS 进入路由器 1

相关信息

简介

本文档介绍如何使用带边界网关协议(BGP)的正则表达式。

先决条件

要求

Cisco 建议您了解以下主题：

- 基本BGP配置

使用的组件

本文档中的信息基于 Cisco IOS® 软件版本 12.0。

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

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

背景信息

您可以在中使用正则表达式 ip as-path access-list 命令。有关正则表达式的更多一般信息，请参阅有关正则表达式的 Cisco 文档。有关基本BGP配置的详细信息，请参阅BGP案例研究和配置基本BGP网络。

网络环境

这是本文档中提到的网络图。

仅允许来自AS 4的网络进入Router 1

如果您希望路由器1仅接收源自AS 4的路由（而不接收互联网路由），则可以在路由器1上应用入站访问列表：

ip as-path access-list 1 permit ^4$

router bgp 1

neighbor 10.4.4.4 remote-as 4

neighbor 10.4.4.4 route-map foo in

route-map foo permit 10

match as-path 1

这样可确保只有源自 AS 4 的网络允许进入路由器 1。

只允许通过 AS4 的网络输入 AS3

如果仅希望通过AS 4的网络从路由器3进入AS 3，则可以在路由器3上应用入站过滤器：

ip as-path access-list 1 permit _4_

router bgp 3

neighbor 10.2.2.2 remote-as 1

neighbor 10.2.2.2 route-map foo in

route-map foo permit 10

match as-path 1

可以使用下划线 (_) 作为 ip as-path access-list 命令中的输入字符串和输出字符串。请注意，本例中没有使用锚定（例如，没有 ^），因此哪些自治系统在 AS 4 前后到来是无关紧要的。

拒绝起源于 AS4 的网络输入 AS3 但允许所有其它网络这么做

如果要拒绝源自AS 4的所有网络并允许所有其他路由从路由器3进入AS 3，可以在路由器3上应用入站过滤器：

ip as-path access-list 1 deny _4$

ip as-path access-list 1 permit .*

router bgp 3

neighbor 10.2.2.2 remote-as 1

neighbor 10.2.2.2 route-map foo in

route-map foo permit 10

match as-path 1

只允许起源于 AS4 的网络和直接连接到 AS4 的 AS 进入路由器 1

如果希望AS 1获取源自AS 4的网络和所有直接连接AS 4的网络，请在路由器1上应用下一个入站过滤器。

ip as-path access-list 1 permit ^4_[0-9]*$

router bgp 1

neighbor 10.4.4.4 remote-as 4

neighbor 10.4.4.4 route-map foo in

route-map foo permit 10

match as-path 1

如果 ip as-path access-list  命令，则字符(^)将启动输入字符串并指定“AS”。下划线(_)表示字符串中在“AS 4”之后有一个空字符串。[0-9]* 指定具有有效 AS 编号的所有已连接的 AS 可以通过过滤器。[0-9]*语法的优点是它让您能够灵活地添加任意数量的AS，而无需修改此命令字符串。有关其他信息，请参阅 AS 正则表达式。

相关信息

- IP 路由 支持页

- 思科技术支持和下载