以下内容摘自笔者编著的《路由器配置与管理完全手册——H3C篇》一书。
10.3.1 iBGP对等体组的配置步骤及示例
对等体组是具有相同更新策略的对等体的集合。在大型BGP网络中,对等体的数量会很多,其中很多对等体需要配置相同的策略,通过配置对等体组并将对等体加入到对等体组,可以使对等体获得与所在对等体组相同的配置,而且当对等体组的配置改变时,组内成员的配置也相应改变,从而简化配置。注意的是,如果对等体组中已经存在对等体,则不能改变该对等体组的AS号,也不能使用undo命令删除已指定的AS号。
根据对等体所在的AS,对等体组可分为:
iBGP对等体组:对等体组中的对等体与当前路由器位于同一AS。
eBGP对等体组:对等体组中的对等体与当前路由器位于不同AS。
本节介绍的iBGP(内部BGP)对等体内部的配置。
iBGP对等体组的配置步骤如表10-4所示。创建iBGP对等体组后,系统在将对等体加入iBGP对等体组时,会自动在BGP视图下创建该对等体,并设置其AS号为本地AS号。
表10-4 iBGP对等体组的配置步骤
步骤 |
命令 |
说明 |
Step 1 |
system-view 例如: |
进入系统视图 |
Step 2 |
bgp as-number 例如; [Sysname] bgp 100 |
进入BGP视图。默认情况下,系统没有运行BGP |
Step 3 |
group group-name [ internal ] 例如: [Sysname-bgp] group test internal |
创建iBGP对等体组 |
Step 4 |
peer ip-address group group-name 例如: [Sysname-bgp] peer 10.1.1.1 group test |
向对等体组中加入对等体 |
下面介绍以上配置步骤中的两条主要命令。
1. group internal命令
“group group-name [ internal ]”命令是“group group-name [ external | internal ]”BGP视图/BGP-***实例视图命令的一个子命令,专门用来创建iBGP对等体组。可用“undo group group-name”命令用来删除创建的对等体组。如果不选择internal可选项,则也是默认创建iBGP对等体组。参数group-name用来指定所创建的内部对等体组的名称,为1~47个字符的字符串。
2. peer命令
“peer ip-address group group-name”BGP视图/BGP-***实例视图命令用来向对已创建的等体组中加入对等体。如果执行该命令时,指定的对等体还没有建立,则系统会自动建立该对等体。可用“undo peer ip-address group group-name”命令将对等体从对等体组中移出。默认情况下,对等体不属于任何对等体组。命令中的两个参数说明如下:
group-name:指定对等体所添加到的对等体组的名称,为1~47个字符的字符串。
ip-address:指定要添加到对等体组的对等体的IP地址。
以下示例是在BGP视图下,创建一个EBGP对等体组test,其AS号为100,并在test中添加iBGP对等体10.1.1.1和10.1.2.1。
[Sysname] bgp 100
[Sysname-bgp] group test internal
[Sysname-bgp] peer 10.1.1.1 group test
[Sysname-bgp] peer 10.1.2.1 group test
以下示例是在BGP-***实例视图下,创建一个EBGP对等体组test,其AS号为100,并在test中添加iBGP对等体10.1.1.1和10.1.2.1(必须先创建***1实例)。
[Sysname] bgp 100
[Sysname-bgp] ipv4-family ***-instance ***1
[Sysname-bgp-***1] group test internal
[Sysname-bgp-***1] peer 10.1.1.1 group test
[Sysname-bgp-***1] peer 10.1.2.1 group test
10.3.2 eBGP对等体组的配置步骤及示例
根据对等体组中的对等体是否属于同一个外部AS,eBGP对等体组又可以分为纯eBGP对等体组和混合eBGP对等体组。如果对等体组中的对等体属于同一个外部AS,该对等体组就是纯eBGP对等体组;如果对等体组中的对等体属于不同外部AS,该对等体组就是混合eBGP对等体组。
用户有三种方式配置eBGP对等体组:
创建对等体组后,先指定AS号,再将对等体加入到对等体组中。该方式下加入的对等体具有相同的AS号,也就是所创建的是纯eBGP对等体组。配置步骤如表10-5所示。该方式下,对等体加入对等体之前不能配置AS号,对等体组中所有对等体的AS号等于对等体组的AS号。
创建对等体组后,先配置对等体的AS号,再将对等体加入对等体组中。该方式下加入的对等体可能不具有相同的AS号,也就是所创建的可能是纯eBGP对等体组,也可能是混合eBGP对等体组,具体要根据给加入的对等体所指定的AS号是否一样而定。配置步骤如表10-6所示。
创建对等体组后,将对等体加入对等组的同时指定AS号。该方式下加入的对等体也可能不具有相同的AS号,也就是所创建的可能是纯eBGP对等体组,也可能是混合eBGP对等体组,具体要根据给加入的对等体所指定的AS号是否一样而定。配置步骤如表10-7所示。该方式下,对等体加入对等体之前不能配置AS号。
表10-5 eBGP对等体组的配置步骤一
步骤 |
命令 |
说明 |
Step 1 |
system-view 例如: |
进入系统视图 |
Step 2 |
bgp as-number 例如: [Sysname] bgp 100 |
进入BGP视图 |
Step 3 |
group group-name external 例如: [Sysname-bgp] group test external |
创建eBGP对等体组 |
Step 4 |
peer group-name as-number as-number 例如: [Sysname-bgp] peer test as-number 2004 |
设置对等体组的AS号 |
Step 5 |
peer ip-address group group-name 例如: [Sysname-bgp] peer 10.1.1.1 group test |
向对等体组中加入对等体 |
下面是以上配置步骤中的几个命令中介绍:
1. group external命令
“group group-name external”命令也是“group group-name [ internal ]”命令是“group group-name [ external | internal ]”BGP视图/BGP-***实例视图命令的一个子命令,专门用于创建外部对等体组。其参数与前面介绍的“group group-name [ internal ]”命令中的参数一样。
2. peer as-number命令
“peer group-name as-number as-number”BGP视图/BGP-***实例视图命令用来指定对等体组的AS号。可用“undo peer group-name as-number”命令用来删除对等体组的AS号。命令中的两个参数说明如下:
group-name:指定对等体要加入的对等体组的名称,为1~47个字符的字符串。
as-number:指定对等体/对等体组的AS号,取值范围为1~4294967295。
3. peer group命令
“peer ip-address group group-name”BGP视图/BGP-***实例视图命令用来向对等体组中加入对等体,在上节介绍iBGP对等体中已有介绍,不再赘述。
以下示例是在BGP视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test。
[Sysname] bgp 100
[Sysname-bgp] group test external
[Sysname-bgp] peer test as-number 2004
[Sysname-bgp] peer 10.1.1.1 group test
以下示例是在BGP-***实例视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test(必须先创建***1实例)。
[Sysname] bgp 100
[Sysname-bgp] ipv4-family ***-instance ***1
[Sysname-bgp-***1] group test external
[Sysname-bgp-***1] peer test as-number 2004
[Sysname-bgp-***1] peer 10.1.1.1 group test
表10-6 eBGP对等体组的配置步骤二
步骤 |
命令 |
说明 |
Step 1 |
system-view 例如: |
进入系统视图 |
Step 2 |
bgp as-number 例如: [Sysname] bgp 100 |
进入BGP视图 |
Step 3 |
group group-name external 例如: [Sysname-bgp] group test external |
创建eBGP对等体组 |
Step 4 |
peer ip-address as-number as-number 例如: [Sysname-bgp] peer 10.1.1.1 as-number 2004 |
设置对等体的AS号 |
Step 5 |
peer ip-address group group-name [ as-number as-number ] 例如: [Sysname-bgp] peer 10.1.1.1 group test |
向对等体组中加入对等体。as-number as-number参数可选可不选,如果选择则必须和peer ip-address as-number as-number命令中配置的一致 |
以上配置步骤中的“peer ip-address as-number as-number”与前一种对等体配置方式中的“peer group-name as-number as-number”命令相似,该命令是用来指定对等体AS号(而不是前面“peer group-name as-number as-number”命令的指定对等体组AS号)不同的只是用参数ip-address替代了参数group-name。这里的参ip-address数是用来指定要加入对等体组的对等体的IP地址。
同样以前面介绍的示例进行介绍。
以下示例是在BGP视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test。
[Sysname] bgp 100
[Sysname-bgp] group test external
[Sysname-bgp] peer 10.1.1.1 as-number 2004
[Sysname-bgp] peer 10.1.1.1 group test
以下示例是在BGP-***实例视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test(必须先创建***1实例)。
[Sysname] bgp 100
[Sysname-bgp] ipv4-family ***-instance ***1
[Sysname-bgp-***1] group test external
[Sysname-bgp-***1] peer 10.1.1.1 as-number 2004
[Sysname-bgp-***1] peer 10.1.1.1 group test
表10-7 eBGP对等体组的配置步骤三
步骤 |
命令 |
说明 |
Step 1 |
system-view 例如: |
进入系统视图 |
Step 2 |
bgp as-number 例如: [Sysname] bgp 100 |
进入BGP视图 |
Step 3 |
group group-name external 例如: [Sysname-bgp] group test external |
创建eBGP对等体组 |
Step 4 |
peer ip-address group group-name as-number as-number 例如: [Sysname-bgp] peer 10.1.1.1 group test as-number 2004 |
向对等体组中加入对等体 |
其实这种配置方式与第二种是一样的,只是将第二种中的第4步和第5步合并了,用一个命令来实现,也就是在向对等体组中加入对等体的同时指定了所加入的对等体的AS号。因为所有配置命令在前面均有介绍,所以在此不再赘述。
同样以前面介绍的示例进行介绍。
以下示例是在BGP视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test。
[Sysname] bgp 100
[Sysname-bgp] group test external
[Sysname-bgp] peer 10.1.1.1 group test as-number 2004
以下示例是在BGP-***实例视图下,将IP地址为10.1.1.1的对等体加入到eBGP对等体组test(必须先创建***1实例)。
[Sysname] bgp 100
[Sysname-bgp] ipv4-family ***-instance ***1
[Sysname-bgp-***1] group test external
[Sysname-bgp-***1] peer 10.1.1.1 group test as-number 2004