BGP的基础实验。

一、先复习一下BGP选路规则:

二、实验拓扑如下图:

设备互联用xy.1.1.x<--->xy.1.1.y/24 如 ar1--ar2 :12.1.1.1<----->12.1.1.2
各设备环回口loop0 x.x.x.x/32
IBGP内部用ospf或IS-IS,邻居采用环回口建立,EBGP直接用互联地址。(我这边as100 用ospf ,as 400 用IS-IS)

三、设备基本配置:

AR1(列出两个设备,其它配置都差不多)

#
interface GigabitEthernet0/0/0
 ip address 12.1.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 13.1.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ip address 10.0.0.1 255.255.255.0 
#
interface NULL0
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 
#
bgp 100
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 3.3.3.3 as-number 100 
 peer 3.3.3.3 connect-interface LoopBack0
 #                                        
 ipv4-family unicast
  undo synchronization
  network 10.0.0.0 255.255.255.0 
  peer 2.2.2.2 enable
  peer 3.3.3.3 enable
#
ospf 1 router-id 1.1.1.1 
 area 0.0.0.0 
  network 1.1.1.1 0.0.0.0 
  network 12.1.1.1 0.0.0.0 
  network 13.1.1.1 0.0.0.0 
#

AR3

#
interface GigabitEthernet0/0/0
 ip address 34.1.1.3 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 13.1.1.3 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ip address 23.1.1.3 255.255.255.128 
#
interface NULL0
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255 
#
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 34.1.1.4 as-number 200              
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 2.2.2.2 enable
  peer 34.1.1.4 enable
#
ospf 1 router-id 3.3.3.3 
 area 0.0.0.0 
  network 3.3.3.3 0.0.0.0 
  network 13.1.1.3 0.0.0.0 
  network 23.1.1.3 0.0.0.0 
#

AR7

#
isis 1
 network-entity 49.0000.0000.0007.00
#
interface GigabitEthernet0/0/0
 ip address 67.1.1.7 255.255.255.0 
 isis enable 1
#
interface GigabitEthernet0/0/1
 ip address 10.0.1.1 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ip address 47.1.1.7 255.255.255.0 
#
interface GigabitEthernet1/0/0
#
interface NULL0
#
interface LoopBack0
 ip address 7.7.7.7 255.255.255.255 
 isis enable 1                            
#
bgp 400
 peer 6.6.6.6 as-number 400 
 peer 6.6.6.6 connect-interface LoopBack0
 peer 47.1.1.4 as-number 200 
 #
 ipv4-family unicast
  undo synchronization
  network 10.0.1.0 255.255.255.0 
  peer 6.6.6.6 enable
  peer 47.1.1.4 enable
#

3.1 next-hop-local的应用

全部设备配置结束后在R1上查看BGP路由可以学到R7,R8下的业务地址正常。但是 NextHop 是34 与24 这两个网段,因为下一跳不可达(选路规则1)所以该路由不会被放入到路由表中,需要在R2,及R3上增加 peer 1.1.1.1 next-hop-local 命令。让下一跳变成可达的IBGP的邻居地址。

<R1>dis bgp routing-table   

 BGP Local router ID is 12.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   10.0.0.0/24        0.0.0.0         0                     0      i
   i  10.0.1.0/24        34.1.1.4                   100        0      200 400i
   i                     24.1.1.4                   100        0      200 400i
   i  10.0.2.0/24        34.1.1.4                   100        0      200 400 500i
   i                     24.1.1.4                   100        0      200 400 500i

修改后路由生效,选路规则前面的都相同,因R2的路由ID小,优选R2.

<R1>dis bgp routing-table

 BGP Local router ID is 12.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   10.0.0.0/24        0.0.0.0         0                     0      i
 *>i  10.0.1.0/24        2.2.2.2                    100        0      200 400i
 * i                     3.3.3.3                    100        0      200 400i
 *>i  10.0.2.0/24        2.2.2.2                    100        0      200 400 500i
 * i                     3.3.3.3                    100        0      200 400 500i
<R1>

3.2下面通过local_pref属性来影响出AS选路,让R1去往10.0.2.0/24选择R3作为出AS路径,在R2上配置。

#新增路由策略,匹配10.0.2.0/24 减小local-preference(默认100,值大优先)
route-policy 10 permit node 10 
 if-match ip-prefix 10 
 apply local-preference 50 
#
route-policy 10 permit node 20 
#
ip ip-prefix 10 index 10 permit 10.0.2.0 24
#
应用到24.1.1.4邻居进方向
bgp 100
 peer 24.1.1.4 route-policy 10 import

查看R1上的路由表R2过来的LocPrf变为50所以优选R3

<R1>dis bgp routing-table

 BGP Local router ID is 12.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   10.0.0.0/24        0.0.0.0         0                     0      i
 *>i  10.0.1.0/24        2.2.2.2                    100        0      200 400i
 * i                     3.3.3.3                    100        0      200 400i
 *>i  10.0.2.0/24        3.3.3.3                    100        0      200 400 500i
 * i                     2.2.2.2                    50         0      200 400 500i

3.3通过MED影响进入AS的选路。R1到R7的往返路径不一致.并且非最优,需要在R6上配置,解决这个问题.

<R1>tracert -a 10.0.0.1 10.0.1.1
 traceroute to  10.0.1.1(10.0.1.1), max hops: 30 ,packet length: 40,press CTRL_C to break 
 1 12.1.1.2 30 ms  30 ms  20 ms 
 2 24.1.1.4 30 ms  30 ms  10 ms 
 3 46.1.1.6 30 ms  30 ms  20 ms 
 4 67.1.1.7 30 ms  30 ms  50 ms 
<R7>tracert -a 10.0.1.1 10.0.0.1
 traceroute to  10.0.0.1(10.0.0.1), max hops: 30 ,packet length: 40,press CTRL_C to break 
 1 47.1.1.4 40 ms  20 ms  20 ms 
 2 24.1.1.2 30 ms  30 ms  40 ms 
 3 12.1.1.1 40 ms  40 ms  30 ms

具体操作

#配置路由策略并应用
route-policy MED permit node 10 
 if-match ip-prefix 10 
 apply cost 100 
#
route-policy MED permit node 20 
#
ip ip-prefix 10 index 10 permit 10.0.1.0 24

bgp 400
  peer 46.1.1.4 route-policy MED export

#查看R4上的路由表MED 小优先。
<R4>dis bgp routing-table

 BGP Local router ID is 34.1.1.4 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   10.0.0.0/24        24.1.1.2                              0      100i
 *                       34.1.1.3                              0      100i
 *>   10.0.1.0/24        47.1.1.7        0                     0      400i
 *                       46.1.1.6        100                   0      400i
 *>   10.0.2.0/24        46.1.1.6                              0      400 500i

#在R1上测试
<R1>tracert -a 10.0.0.1 10.0.1.1
 traceroute to  10.0.1.1(10.0.1.1), max hops: 30 ,packet length: 40,press CTRL_C to break 
 1 12.1.1.2 30 ms  10 ms  10 ms 
 2 24.1.1.4 20 ms  20 ms  20 ms 
 3 47.1.1.7 30 ms  40 ms  10 ms 

3.4 团体属性的应用,在R8上新增了几个网段10.0.3.0/24 10.0.4.0/24,要求新增的10.0.3.0/24 不被AS 100 200 300 访问,在R8上配置。

增加两个Loopback接口,并在bgp500 network
LoopBack1                         10.0.3.1/24          up         up(s)     
LoopBack2                         10.0.4.1/24          up         up(s)    

bgp 500
  network 10.0.3.0 255.255.255.0 
  network 10.0.4.0 255.255.255.0
#查看R1上的路由
 *>   10.0.0.0/24        0.0.0.0         0                     0      i
 *>i  10.0.1.0/24        2.2.2.2                    100        0      200 400i
 * i                     3.3.3.3                    100        0      200 400i
 *>i  10.0.2.0/24        3.3.3.3                    100        0      200 400 500i
 * i                     2.2.2.2                    50         0      200 400 500i
 *>i  10.0.3.0/24        2.2.2.2                    100        0      200 400 500i
 * i                     3.3.3.3                    100        0      200 400 500i
 *>i  10.0.4.0/24        2.2.2.2                    100        0      200 400 500i
 * i                     3.3.3.3                    100        0      200 400 500i

在R8上为10.0.3.0 配置团体属性community no-advertise,并应用在68.1.1.6的出方向。记得peer 68.1.1.6 advertise-community,不然不生效。配置完只有R6上能收到10.0.3.0 其它路由器都收不到。

#
route-policy COMM permit node 10 
 if-match ip-prefix 10 
 apply community no-advertise 
#
route-policy COMM permit node 20 
#
ip ip-prefix 10 index 10 permit 10.0.3.0 24
bgp 500 
  peer 68.1.1.6 route-policy COMM export
  peer 68.1.1.6 advertise-community

3.5 as-path,在R5上过滤来自AS100与AS 400的路由,在R5上操作。

#
bgp 300
peer 45.1.1.4 as-path-filter 10 import 
#
ip as-path-filter 10 deny _100|400$
ip as-path-filter 10 permit .*

#查看R5的路由表成功过滤掉100 及400结尾的路由
 *>   10.0.2.0/24        45.1.1.4                              0      200 400 500i
 *>   10.0.4.0/24        45.1.1.4                              0      200 400 500i

3.6为R5下发默认路由,在R4上操作。peer xxxx default-route-advertise命令用来设置给对等体(组)发布缺省路由

peer 45.1.1.5 default-route-advertise
查看R5路由表,多出默认路由


 *>   0.0.0.0            45.1.1.4        0                     0      200i
 *>   10.0.2.0/24        45.1.1.4                              0      200 400 500i
 *>   10.0.4.0/24        45.1.1.4                              0      200 400 500i

3.7负载分担,在R1上启用负载分担。

#启用前查看10.0.4.1路由表
 [R1-bgp]dis ip routing-table 10.0.4.1     
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 1
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

       10.0.4.0/24  IBGP    255  0          RD   2.2.2.2         GigabitEthernet0/0/0
#启用
bgp 100
maximum load-balancing ibgp 2
#启用后路由表
10.0.4.0/24  IBGP    255  0          RD   2.2.2.2         GigabitEthernet0/0/0
                    IBGP    255  0          RD   3.3.3.3         GigabitEthernet0/0/1

3.8 认证,为as100 增加MD5 认证。

R1,R2 ,R3 ,相互间都要配置,以下是R1的配置
peer 3.3.3.3 password cipher huawei
peer 2.2.2.2 password cipher huawei

3.9 GTMS,在R6与R8上启用GTMS(防止非法BGP连接攻击)

#需要两边同时配置不然会报HOLD timer expired
Apr 13 2018 23:08:40-08:00 R6 %%01BGP/3/STATE_CHG_UPDOWN(l)[0]:The status of the peer 68.1.1.8 changed from ESTABLISHED to IDLE. (InstanceName=Public, StateChangeReason=Hold Timer Expired)
#R6
bgp 400
peer 68.1.1.8 valid-ttl-hops 1 
#R8
bgp 500 
peer 68.1.1.6 valid-ttl-hops 1
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,588评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,456评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,146评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,387评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,481评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,510评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,522评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,296评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,745评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,039评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,202评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,901评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,538评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,165评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,415评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,081评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,085评论 2 352

推荐阅读更多精彩内容