BGP基础知识
BGP的简要概述
- BGP是“唯一”的EGP路由协议,主要用来再AS之间传递路由消息
- 在AS之间是一种距离矢量的路由协议,应用特定的属性,避免环路的发生
- 路由信息携带丰富的属性
- 传递协议:TCP 端口号:179
- 支持CIDR(无类别域间选路)
- 路由跟新:只发送增量路由
- 丰富的路由过滤和路由策略
自治域AS号
BGP中AS的定义
AS (Autonomous System number,自治域系统号)是指拥有同一选路策略,在同一技术管理部门下运行的一组路由器的集合。BGP的RFC1771里留给AS的范围是2个字节,所以AS的取值范围为1-65535,其中64512以上的为私有AS。但是鉴于IPv4地址空间不够这个前车之鉴,在RFC4893里定义了一个BGP的新功能——4字节AS(BGP Support for Four-octet AS Number,一般用M.N来描述)。
由于BGP在邻居协商以及路由发送接受的时候都需要使用AS属性,所以RFC4893里也对相应的属性的扩展变化做出了解释。为了便于读者理解,下面列出了RFC4893定义的相关属性变化及说明
AS4_SEQUENCE:记录了该路由传递过程中所经过的AS;
AS4_SET:当出现聚合的时候,记录了聚合路由所合并的AS;
AS4_CONFED_SEQUENCE:在联盟中使用,作用和AS4_SEQUENCE类似;
AS4_CONFED_SET:在联盟中使用,作用和AS4_SET类似;
AS4_AGGREGATOR:记录了聚合者的AS号码;
RFC4893给了一种建议,里面定义了一个公用2字节AS号码AS_TRANS,也就是说需要一个单独的2字节AS为专门用于衔接4字节AS BGP路由器与2字节AS BGP路由器,并且AS_TRANS不能被其他路由器或者组织使用;
BGP中AS的长度
2009年1月之前,只能使用最多2字节(即2*8=16bit)长度的AS号码,即2^16 - 1 = 65535。
其中1-64511为公有AS,65512-65534为私有AS,不能用于公网。记忆办法:2^16-1=65535,私有AS有1024个,65535-1024=64511,因此1-64511为公有AS。
在2009年1月后,IANA决定使用4字节长度AS,范围是65536-4294967295。