BGP高级特性——ORF、对等体组、GTSM特性
如果设备希望只接受自己需要的路由,可以通过配置BGP基于前缀的ORF(Outbound Route Filters出口路由过滤器),ORF通过BGP Refresh报文告诉对等体我只需要X.X.X.X的路由,对等体收到后,就只会给设备发送X.X.X.X的路由。即通用TTL安全保护机制,检测IP报文头中的TTL值,检查此值是否在设置的TTL的有效范围中,对不在有效范围中的报文进行丢弃;peer 10
目录
邻居按需发布路由(ORF)
基本原理
如果设备希望只接受自己需要的路由,可以通过配置BGP基于前缀的ORF(Outbound Route Filters出口路由过滤器),ORF通过BGP Refresh报文告诉对等体我只需要X.X.X.X的路由,对等体收到后,就只会给设备发送X.X.X.X的路由
ORF与Router-policy的区别
ORF: 我直接告诉对端需要的路由,对端只给我发送这条路由
Router-policy:对端把所有的路由都发给我,我自己过滤出我想要的路由
优点
避免了本端设备接收大量无用路由,降低了链路带宽的占用率
配置命令(一端配置接口ORF,一端配置发送ORF)
华为设备配置
通过IP-Prefix定义自己需要哪些路由,并对指定邻居调用
系统视图:ip ip-prefix 123 permit 1.1.1.1 32 匹配1.1.1.1/32路由
BGP视图:peer 10.0.0.1 ip-prefix 123 import/export
import 对自己对等体10.0.0.1接收的路由通过前缀列表过滤
export 对自己对等体10.0.0.1发布的路由通过前缀列表过滤
配置ORF的发送与接收
BGP视图:peer 10.0.0.1 capability-advertise orf ip-prefix 123 [both/receive/send]
both: 对对等体10.0.0.1允许发送和接收ORF报文
receive:对对等体10.0.0.1只允许接收ORF报文
send: 对对等体10.0.0.1只允许发送其报文
standard-match:按照RFC标准规定的前缀匹配规则来匹配路由
BGP对等体组(Peer Group)
对等体组是一些具有某些相同策略的对等体的集合
将一个对等体加入对等体组中时,该对等体将会获得与所在对等体相同的配置
当对等体组的配置改变之后,组成员的配置也相应改变
对等体组中的单个对等体也可以单独配置自己的发布路由与接收路由的策略
配置命令(Bgp视图下配置)
华为设备配置
创建对等体组
group [name] [external/internal]
name:对等体组的名称
external:创建EBGP对等体组
internal:创建IBGP对等体组
为对等体组Name配置AS号
peer [name] as-number [as-number]
当为IBGP对等体组时,不需要做此配置
当为EBGP对等体时,需要做此配置(AS号为对端AS号)
将对等体IP加入到对等体组Name
peer [ip] group [name]
为对等体组Name指定发送BGP报文的源接口,并指定发起连接时使用的源地址
peer [name] connect-interface [接口] [源地址]
配置完成后,对对等体Name的操作就相当于直接对Peer [ip]的操作
A-R1上配置IBGP对等体组实例
华为设备配置——A-R2和A-R3与A-R1的1.1.1.1建立IBGP邻居
bgp 100
peer Group1 internal 创建IBGP对等体组Group1
peer 10.0.12.2 group Group1 将对等体10.0.12.2加入对等体组
peer 10.0.13.3 group Group1 将对等体10.0.13.3加入对等体组
peer Group1 connect-interface Loopback 0 配置对等体组的源接口与源IP地址
等同于
bgp 100
peer 10.0.12.2 as-number 100
peer 10.0.13.3 as-number 100
peer 10.0.12.2 connect-interface Loopback 0
peer 10.0.13.3 connect-interface Loopback 0
AR1上配置EBGP对等体组实例
华为设备配置——AR2和AR3与AR1的1.1.1.1建立EBGP邻居
bgp 100
peer Group2 external 创建EBGP对等体组Group2
peer Group2 as-number 200 配置对等体组的AS号为200
peer 10.0.12.2 group Group2 将对等体10.0.12.2加入到对等体组
peer 10.0.13.3 group Group2 将对等体10.0.13.3加入到对等体组
peer Group2 ebgp-max-hop 2 配置对等体组的Ebgp跳数为2
peer Group2 connect-interface LoopBack0 1.1.1.1 配置对等体组的源接口和源地址
等同于
bgp 100
peer 10.0.12.2 as-number 200
peer 10.0.13.3 as-number 200
peer 10.0.12.2 ebgp-max-hop 2
peer 10.0.13.3 ebgp-max-hop 2
peer 10.0.12.2 connect-interface LoopBack0 1.1.1.1
peer 10.0.13.3 connect-interface LoopBack0 1.1.1.1
BGP安全性
常见的BGP攻击:建立非法的BGP邻居、发送大量非法的BGP报文
通过BGP认证和GTSM两个方法来保证BGP对等体之间的交互安全
BGP认证
可以在建立TCP连接时使用MD5值进行MD5认证,确保TCP连接安全建立
也可以在建立TCP连接时使用Keychain认证
MD5方式和Keychaiin方式互斥
即通用TTL安全保护机制,检测IP报文头中的TTL值,检查此值是否在设置的TTL的有效范围中,对不在有效范围中的报文进行丢弃;避免网络攻击者模拟合法BGP报文攻击设备
GTSM配置命令
华为设备配置
BGP视图
使能GTSM功能,并设置TTL跳数值(缺省是255)
peer [ip-address] valid-ttl-hops [hops] 需要在对等体之间都配置
TTL的范围=[256-设置的hops值 ,255 ]
例如:如果两台BGP对等体直连,就可以设置TTL范围为[255,255],表示中途没有经过其它设备(IP报文默认TTL为255)
系统视图
设置未匹配GTSM策略的报文的缺省动作(默认为可以通过过滤)
gtsm default-action [drop/pass]
在丢弃GTSM报文时记录LOG信息
gtsm log drop-packet all
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)