ijava学习网> 知识分享> Linux> BGP的工作原理

BGP的工作原理

时间: 2019-02-11 16:02:09 标签BGP , 工作原理

25-BGP
26-BGP
27-QOS/FW ----->串
28-High-P

受众群体(研究)

服务人的工具

灯光
服装
站位
走动
肢体

PPT内容组成:
字 --------------->word、text
图片
配色
讲PPT的风格
彪悍
温柔、专业、充分

==================================================

安全
Linux
-network
高频词


路由协议分类

直连
非直连
  静态
  动态
    IGP(AD/Metric)
      DV
        RIP(RIPv1是有类路由协议,RIPv2是无类路由协议(classless)/VLSM)
        IGRP(有类路由选择协议 - classful routing protocol )
        EIGRP
      LS
        ISIS(CLNP/IP)
        OSPF(v2-IPv4 | v3-IPv6)
    EGP(强大的路由控制功能,因为EGP为路由赋予了更多的路由属性)
      BGP-boundary gateway protocol ,边界网关协议;

RIP - UDP 520 - L2+IP+UDP+RIP
IGRP/EGIRP - 90/88 =L2+IP+EIGRP
OSPF - 89 = L2+IP+OSPF
ISIS - L2+ISIS
BGP - TCP 179 - L2+IP+TCP+BGP

BGP协议:
属于公有协议,位于 OSI 第 7 层,套接字为 TCP 179.
该协议本身不会产生路由,仅仅用来传递路由
一般应用于不同公司之间,可以在长时间内稳定的传输
大量的路由条目。可以赋予路由条目众多属性,从而可以
实现路由条目的灵活控制。

有的时候也将其称之为“路径矢量”,同样存在自动汇总,
但是可以人工关闭,因为BGP协议传输路由时,是有子网
掩码的。

BGP的工作原理

1、建立邻居表
      router bgp 1
         no auto-summary  //关闭自动汇总功能;
         no synchronization //关闭BGP与IGP的同步功能
         bgp router-id 1.1.1.1 // 设置 BGP 的 RID;
         neighbor 192.168.12.2 remote-as 1 //单播建立BGP邻居          

      验证命令;
      show ip bgp summary 
           标注一下每个字段的意思;

2、同步数据库(DB\Topology\LSDB\BGP Table)
       #路由宣告成功,就会进入到数据库
        在BGP中,BGP不会产生路由,仅仅传递路由
        所以,要宣告进入到BGP中的路由,必须已经
        存在于当前的路由表中。

           -宣告:network + redistribute

       #R1: router bgp 1
             network 10.10.1.0 mask 255.255.255.0
       #R3:  router bgp 2
             no auto-summary
             no synchronization
             bgp router-id 3.3.3.3
             neighbor 192.168.23.2 remote-as 1
             redistribute  connected 
        当路由被宣告进入到 BGP 数据库时,
        如果条目的状态是 best,则进行以下动作:
            1、尝试着装入到路由表;(成功或失败)
            2、发送给自己的BGP邻居;              
    验证命令:
            show ip bgp neighbor x.x.x.x adver 
                      //查看该路由器向邻居xxxx发送了
                         哪些路由;

            show ip bgp //查看本地的 BGP 数据库                          

3、创建路由表
show ip route
show ip route bgp


BGP在传递路由的过程中,next-hop的变化:
1、外部邻居之间传路由,next-hop默认是变化的;
2、内部邻居之间传路由,Next-hop默认是不变的;

但是,一个AS的边界路由器传递给内部BGP邻居时,
如果不进行 next-hop的变化,则会导致内部BGP路由器
产生“下一跳”不可达的现象,所以该路由不可用。
为了解决该问题,我们在 AS 的边界路由上,对内部邻居
做“next-hop-self";
R2:
router bgp 1
neighbor 192.168.12.1 next-hop-self

注意:
BGP非常的稳定,所以当BGP路由发生变化时,数据库和
路由表反映的很慢,为了能够快速看到现象,我们可以
手动的清除 BGP 的数据库,分为软清和硬清两种类型。
clear ip bgp soft --> 软清,重新进行数据库的请求
clear ip bgp
-->硬清,会直接断开建立好的BGP邻居
关系。必须慎重,现实工作尽量不用。

非直连的 BGP 邻居关系:
为了增强 BGP 邻居关系的稳定性,才考虑通过非直连的
链路IP地址进行邻居关系的建立(即通过loopback口建立)
另外,非直连建立邻居时,务必需要考虑一个“更新源检测机制”
的问题。如果更新源检测不通过,则导致邻居无法建立。

注意:
BGP中的 TCP 179 ,表示的仅仅是目标端口号。

配置思路:
    1、确保内网路由互通
          通过RIP/OSPF等其他IGP协议;
    2、建立BGP邻居关系
         router bgp 1
           no auto-summary
           no synchronization
           bgp router-id 1.1.1.1
           neighbor 10.10.2.2 remote-as 1 
             #neighbor,表示的是单播建立邻居;
             #10.10.2.2 
                &表示的是该设备主动向10.10.2.2 的TCP 179 发起连接;
                &表示的是该设备只接受10.10.2.2 发送过来的 BGP 连接请求;

             #remote-as ,期望对方发送过来的AS号为1;

R1:BGP-TCP
neighbor 10.10.2.2
R1:randoam---TCP-----> 10.10.2.2 : 179

R2:BGP-TCP
neighbor 10.10.1.1
R2:randoam---TCP-----> 10.10.1.1 : 179

TCP连接建立,是存在 delay的,
如果两个设备之间的 TCP 179 连接都建立成功,
则最终仅仅会保留一个:delay小的。

查看设备上已经建立的 TCP 连接:
show tcp brief
针对BGP连接而言,
随机端口一方为主动发起方,为源。

                                                                                                              李军
                                                                                                                                                                                                 Tel:15135361516
                                                                                                                                                                                                         qq:344728662
                                                                                                                                                                                 @:501xiaofeng@163.com

版权说明| 关于ijava| 合作伙伴| 联系我们| 网站地图| 招贤纳士

Copyright © 2017 www.ijava.com All Rights Reserved 版权所有•ijava学习网 京ICP备14061482号-18         官方QQ:3325669927

ijava学习网提供免费java教程和大量java面试题库,给高级会员提供免费的java培训,同时提共一些java开发项目和java下载,java工程师,java菜鸟们快来哦。记住我们的网站:www.ijava.com