您的位置:首页 > 其它

GP AS-PATH的正则表达式的理解

2009-07-30 15:42 609 查看
关于BGP AS-PATH的正则表达式的理解
^ 标志一个表达式的开始,如果不用这个字符,那么默认就没有开始的限制了。如:当使用permit
^254,那么表示的意思就是和本地相连的AS是254传过来的路由全部都允许了。如果使用简单的permit 254,那么就是只要是经过了AS 254的路由,全部都被允许了,其实和permit _254_表达的意思相同。

$
标志一个表达式的结束,如果不用这个字符,那么默认就没有结束的限制了。如:当使用了permit 254$,那么表示的意思就是起源于AS 254的路由全部被接受,如果permit 254那么见上面的解释。

?
标志匹配前面的一个字符,注意:只是匹配一个字符。?允许前面的字符出现一次或者是空。如:permit 254[0-9]?$,那么就是只匹配起源于AS
254/2540---2549的路由,注意?在CISCO路由器上用CTRL-V来替代。

*
标志匹配前面的一个字符,注意,和?不同的是,*允许前面的字符出现许多次或者是空,而?只允许匹配出现一次或者是空。如:permit 254[0-9]*$,那么就是只匹配起源于AS 254/2540---25499999........的路由
如果是permit 254[5-9],那么就是匹配起源自AS 254/2545-2549/25455-25459/254555-

254599............

+
和*的区别就是*可以匹配空,但是+必须匹配一个值才行如permit ^254+$,表示起源于254或者2544/25444........而permit ^254*$则可以匹配起源于AS 25/254/25444。

句号 .标志匹配任意一个字符,包括空格,如:当我们使用permit .*的时候,表示匹配所有的路由。

_
表示两个AS之间的连接符,如:permit
^254_253_252$, 表示起源于252,经过253和254的路由条目。
本文出自 “love~gg” 博客,请务必保留此出处http://chinagg.blog.51cto.com/294200/185470
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: