有三种主要的类型:Text(文本)、Number(数字)和Date/Time(日期/时间)类型。用于建立BGP对等体之间的连接关系,Keepalive:周期性地向BGP对等体发出Keepalive消息,用来保持连接的有效性,Update,携带的是路由更新(删减、增加)信息,Notification,当BGP检测到错误状态时,就向对等体发出Notification消息,之后BGP连接会立即被关闭。
open:用于建立第一个BGP连接。(包括hold-time、router-id),Keepalive:对等体之间周期交换这些信息,使对话有效。(默认60秒)Update:在对等体之间使用这些信息交换网络层的可达性信息。Notification:这些信息用于通知错误信息。
所有BGP分组共享同一个公共首部,在学习不同类型的分组之前,首先讨论公共首部,如下所示,该首部的字段如下。
标记:该16字节标记字段保留在鉴别用。长度:该2字节字段的定义包括最初的文件总长度3.类型:该1字节字段定义组的类型,以数值1~4定义BGP信息类型开放信息:主要利用该文件建立邻居,运行BGP的路由器与邻居的TCP连接打开文件格式如下。
版本:该1字节字段定义BGP版本,当前版本为42,自治系统:该2字节字段定义自治系统编号。
维持时间:这两个字节字段的定义是,如果路由器在维持时间内没有收到这些报告中的一个,则认为对方不工作。
BGP协议标志:这是一个2字节字段,这定义了打开文件的路由器。因此,该路由器通常使用IP地址之一作为BGP标志符。
选项长度:打开报纸也可以包含选项参数。如果包含,该1字节字段定义选项参数的总长度,如果没有选项参数,该字段的值为06,选项参数:如果选项参数长度的值不是0,则表示有一定的选项参数,各选项参数本身有两个字段,参数长度和参数值,至今定义的唯一选项参数是鉴别。
更新文件:更新文件是BGP协议的核心,海外专线路由器使用它取消以前通知的终点,宣布新终点的路由,或者两者都有。请注意,BGP可以取消以前通知的几个终点,但在单一更新文件中只能通知一个新终点。
不可行的路由长度:这两个字段定义下一个字段的长度。
一、MP-BGP
传统的BGP-4只能管理IPv4单播路由信息,MP-BGP对BGP-4进行了扩展,提供对多种网络层协议的支持;
MP-BGP使用 扩展属性 和 地址族 来实现对IPv6、组播和VPN相关内容的支持,BGP协议原有的报文机制和路由机制并没有改变;
BGP4+,指MP-BGP对IPv6单播网络的支持特性;
MBGP,指MP-BGP对IPv4组播网络的支持特性;
MP-BGP为IPv6单播网络和IPv4组播网络建立独立的拓扑结构,并将路由信息存储在独立的路由表中,保持单播IPv4网络、单播IPv6网络和组播网络之间的路由信息相互隔离,实现用单独的路由策略维护各自网络的路由;
MP-BGP扩展属性
为实现对多种网络层协议的支持,BGP需要将网络层协议的信息反映到NLRI及Next-hop,因此MP-BGP引入了两个新的可选非过渡路径属性:
1、MP_REACH_NLRI 多协议可达NLRI
用于发布可达路由信息和下一跳信息;
内容含义:
(1)Flag标志位:可选非过渡属性;
(2)AFI为IPv6,SAFI为单播;
(3)可达路由信息为2000:10:1:1::/64,下一跳地址为fe80::2
2、MP_REACH_NLRI 多协议不可达NLRI
用于撤销不可达的路由信息;
内容含义:
(1)Flag标志位为可选非过渡属性;
(2)AFI是IPv6,NAFI为单播
(3)需要撤销的路由为2000:10.1:4::/64 , 2000:10:1:5::/64
二、BGP ORF Outbound Route Filtering出口路由过滤
能将本端设备配置的基于前缀的入口策略通过路由刷新报文发送给BGP邻居;
BGP邻居根据这些策略构造出口策略,在路由发送时对路由进行过滤;
这样不仅避免了本端设备接收大量的无用路由,降低了本端设备的CPU使用率,还降低了链路带宽利用率;
需要两端同时配置,否则不生效,配置命令如下:
peer x.x.x.x capability-advertise orf ip-prefix both
三、路由衰减 dampening 只对EBGP路由起作用
路由振荡指路由表中添加一条路由后,该路由又被撤销的过程;
当发生路由振荡时,设备就会向邻居发布路由更新,收到更新报文的设备需要重新计算路由并修改路由表,所以频繁的路由振荡会消耗大量的带宽资源和CPU资源;
为了防止频繁的路由振荡带来的不利影响,BGP使用路由衰减来抑制不稳定的路由;
1、惩罚值penalty value
用来衡量一条路由的稳定性,惩罚值越高说明路由越不稳定;
路由每发生一次振荡,路由就会增加1000的惩罚值;
2、抑制阀值suppress value
当惩罚值达到或超过抑制阀值时(缺省为2000),路由被抑制(不加表,不通告给邻居);
3、半衰期half-life
被抑制的路由每经过一段时间(半衰期,缺省为15min),惩罚值会减少一半;
4、使用阀值reuse value
当被抑制的路由经过半衰期减少到可用的阀值(缺省为750),路由恢复可用(加表,通告给邻居);
5、最大上限值ceiling
惩罚值增加到一定程度后(惩罚上限值,缺省为16000),不会再增加;
6、抑制时间suppress time
从路由被抑制到路由恢复可用的时间;
路由衰减配置示例:
配置半衰期10分钟、使用阀值1000、抑制阀值2000、最大惩罚值5000;
bgp 100
dampening 10 1000 2000 5000
四、对等体组
在大型BGP网络中,对等体的数量会很多,其中很多对等体具有相同的策略,在配置时会重复使用一些命令,邻居越多配置量越大;
对等体组是一些具有某些相同策略的对等体的集合,对等体组中的对等体可以继承对等体组的配置,当对等体组的配置改变时,组内成员的配置也相应改变;
利用对等体组可以实现批量配置,简化管理的难度,并提高路由通告效率;
对等体组配置示例:
group ttt external
peer ttt as-number 200
peer ttt connect-interface loopback0
peer ttt ebgp-max-hop
peer 10.1.2.2 group ttt
peer 10.1.3.3 group ttt
五、BGP认证
BGP认证分为md5认证和keychain认证;
md5认证只能为TCP连接设置认证密码;
keychain认证除了可以为TCP连接设置认证密码外,还可以对BGP协议报文进行认证;
BGP使用TCP作为传输层协议,可以在建立TCP连接时进行md5认证,认证由TCP来提供;
peer x.x.x.x passward cipher xxx
md5认证配置后生成单一密码,需要人为干预才可以切换密码;
配置BGP keychain认证前,必须配置keychain-name对应的keychain认证;
peer x.x.x.x keychain xxx
keychain具有一组密码,可以根据配置自动切换,适用于对安全性要求比较高的网络;
六、BGP GTSM Generalized TTL Security Mechanism
开启BGP GTSM功能,设备对所有BGP报文的TTL值进行检查,丢弃TTL值小于阀值的攻击报文,避免网络攻击报文占用CPU;
peer x.x.x.x valid-ttl-hops xxx
gtsm default-action drop
GTSM是对称的,需要在对等体双方都配置;
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)