Bootstrap

BGP高级特性基础

1.BGP路由控制

路由控制一般通过路由策略实现,即通过路由匹配工具匹配特定路由,再通过路由策略工具对路由的发布和接收进行控制。

路由匹配工具:ACLAccess Control List,访问控制列表),IP Prefix List(地址前缀列表)。

路由策略工具:Filter-PolicyRoute-Policy

BGP可以通过匹配AS_PathCommunity等属性进行路由控制。

1.1 正则表达式

正则表达式由普通字符和特殊字符

普通字符:匹配的对象是普通字符本身。

包括所有的大写和小写字母、数字、标点符号以及一些符号。
例如: a 匹配 abc 中的 a 10 匹配 10.113.25.155 中的 10 @ 匹配 [email protected] 中的 @

 特殊字符:配合普通字符匹配复杂或特殊的字符串组合。

                 位于普通字符之前或之后用来限制或扩充普通字符的独立控制字符或占位符。                                 用来描述它前面的字符的重复使用方式。                                                                                           限定一个完整的范围。

.

匹配任意单个的字符,包括空格

0.0   匹配0x0020…

^

匹配行首的位置,即一个字符串的开始

^10  匹配10.1.1.1,不匹配20.1.1.1

$

匹配行尾的位置,即个字符串的结束

1$    匹配10.1.1.1,不匹配10.1.1.2

_

下划线,匹配任意的一个分隔符

匹配一个逗号(,)、左花括号({)、右花括号(})、左圆括号、右圆括号

匹配输入字符串的开始位置(同^

匹配输入字符串的结束位置(同$

匹配一个空格

_10   匹配(10{10、空格10

10_   匹配10)10}10空格等

|

管道字符,逻辑或。如:x|y,匹配xy

100|200  匹配100或者200

\

转义字符用来将下一个字符(特殊字符或普通字符)标记为普通字符

\*           匹配*

*

匹配前面的子正则表达式0次或多次

10*   匹配1101001000

(10)*   匹配空、101010101010…

+

匹配前面的子正则表达式1次或多次

10+  匹配101001000

(10)+   匹配101010101010…

?

匹配前面的子正则表达式0次或1

10?  匹配110

(10)?   匹配空或10

[xyz]

匹配正则表达式中包含的任意一个字符

[123]     匹配255中的2

[^xyz]

匹配正则表达式中未包含的字符

[^123]   匹配123之外的任何字符

[a-z]

匹配正则表达式指定范围内的任意字符

[0-9]     匹配09之间的所有数字

[^a-z]

匹配正则表达式指定范围外的任意字符

[^0-9]   匹配所有非数字字符(即匹配09之外的任何字符)

可以使用正则表达式用于as_path filter  (注意 as_path filter默认是拒绝) 及Community Filter

as-path filter过滤实验

一、正常建立邻居关系

二、引入外部路由

三、配置as_path filter

ip as-path-filter a deny 100$
ip as-path-filter a permit .*   //创建as_path filter  (.*表示所有)

bgp 100                                                                                                                                        peer 10.0.12.2 as-path-filter a export    // 应用as_path filter

Community Filter过滤实验

团体属性是可选过渡属性

分为基本团体属性和高级团体属性

ip ip-prefix com index 10 permit 192.168.10.0 24 greater-equal 24 less-equal 24  //匹配出需修改的路由1

route-policy com01 permit node 10 
if-match ip-prefix com 
apply community 1:100 internet 
route-policy com01 permit node 100    //将匹配出的路由打上团体属性

 peer 10.0.12.2 route-policy com01 export   // 调用策略
 peer 10.0.12.2 advertise-community   // 将团体属性通告给对等体

ip community-filter 1 permit 1:100  //过滤团体属性 

ORF(邻居按需发布)

通过ORF功能将本地的IP前缀列表通过给对等体,使得对等体按照前缀列表的过滤要求通告给本端。节约本端的CPU资源、带宽资源。

[R2-bgp] peer 10.1.12.1 ip-prefix 1 import                                                                                   [R2-bgp] peer 10.1.12.1 capability-advertise orf ip-prefix send

[R1-bgp] peer 10.1.12.2 capability-advertise orf ip-prefix receive

对等体组

对等体组(Peer Group)是一些具有某些相同策略的对等体的集合。当一个对等体加入对等体组中时,该对等体将获得与所在对等体组相同的配置。当对等体组的配置改变时,组内成员的配置也相应改变。

[Huawei-bgp] group group-name [ external | internal ]   //external 表示EBGP对等体组  internal表示ibgp对等体

[Huawei-bgp] peer { ipv4-address | ipv6-address } group group-name  //加入对等体组

[Huawei-bgp] peer group-name as-number { as-number-plain | as-number-dot }    //配置对等体组as号

BGP安全性

常见BGP攻击有:1.建立非法BGP邻居关系          通告非法路由条目                                                                             2.发送大量非法BGP报文          损耗cpu利用率  

BGP认证

1.MD5认证:BGPMD5认证只是为TCP连接设置MD5认证密码,由TCP完成认证。

 peer 10.0.12.2 password simple huawei123 

2.keychain:Keychain是一系列key-id的集合,key-id唯一标识认证信息,认证信息包括认证密码和认证算法。可以周期更换密码

有两种模式:absolute 绝对  :以绝对时间生效

                      periodic 周期   :以周期时间生效

keychain 1 mode periodic daily
 key-id 1 
  algorithm md5   // 加密算法
  key-string cipher  huawei@123 // 设置密码huawei@123

注意:BGPMD5认证与BGPKeychain认证互斥。

BGP的GTSM

GTSM可以检测IP报文头中的TTLTime-to-Live)值是否在一个预先设置好的特定范围内,并对不符合TTL值范围的报文进行丢弃

peer 10.0.12.1 valid-ttl-hops 255 //缺省值是255

4字节AS号

2字节AS号 :1-65534  私有64512-65534  0 和65535保留  23456一般表示占位符

4字节AS分为两种形式:整数形式和点分形式。在系统内部都是以无符号的整数形式存储。           

Speaker (发言者):发送 BGP 消息的路由器称为 BGP Speaker ,它接收或产生新的路由信息,并发布给其它 BGP Speaker
Peer (对等体):相互交换消息的 BGP Speaker 之间互称 Peer
New Speaker :支持 4 字节 AS 号扩展能力的 BGP Speaker
Old Speaker :不支持 4 字节 AS 号扩展能力的 BGP Speaker
New Session New Speaker 之间建立的 BGP 连接。
Old Session New Speaker Old Speaker 之间或者 Old Speaker 之间建立的 BGP 连接。

RR反射器

反射规则:从客户端ibgp收到的路由会发给客户端及非客户端                                                                           从非客户端收到的会发给客户端                                                                                                         从ebgp学到的发给客户端和非客户端

总结:非不传非                                                                                          

备份RR组网

增加网络的可靠性,防止单点故障对网络造成影响,有时需要在一个集群中配置一个以上的 RR。
防环是通过簇列表(集群ID)

 多集群组网

一个AS中可以存在多个集群,各个集群的RR之间建立IBGP对等体。

1.RR所处的网络层相同时,可以将不同集群的RR全互联,形成同级RR

防环通过IBGP 水平分割

2.RR所处的网络层不同时,可以将较低网络层次的RR配成客户机,形成分级RR

多集群设计不仅提供了针对链路失效的物理冗余,同时提供了针对客户机与RR之间的IBGP会话失效的逻辑冗余。

;