精华内容
下载资源
问答
  • BGP
    2021-04-20 16:57:03

    AS的概念

    • 自治系统( Autonomous System,AS),指的是在同一个组织管理下、使用相同策略的设备的集合。
    • 不同AS通过AS号区分,AS号取值范围1-65535,其中64512-65535是私有AS号。IANA负责AS号的分发。
    • 中国电信163AS号:4134
    • 中国电信CN2AS号:4809
    • 中国网通AS号:9929。
      在这里插入图片描述

    BGP概述

    • 边界网关协议( Border Gateway Protocol,BGP)是一种实现自治系统AS之间的路由可达,并选择最佳路由的矢量性协议。早期发布的三个版本分是BGP-1(RFC1105)、BGP-2(RFC1163)和BGP3(RFC1267),1994年开始使用BGP-4(RFC1771),2006年之后单播IP4网络使用的版本是BGP-4(RFC4271),其他网络使用的版本是MP-BGP(RFC4760)。

    - BGP的特点:

    • BGP能够承载大批量的路由信息,能够支撑大规模网络。
    • BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能导邻居按策略发布路由。
    • BGP能够支撑 MPLS/PN的应用,传递客户VPN路由。
    • BGP提供了路由聚合和路由衰减功能用于防止路由振荡,有效是高了网络的稳定性。
    • BGP使用TCP作为其传输层协议(端口号为179),并支持BGP与BFD联动、 BGP Tracking、BGP Auto FRRI和 BGP GR和NSR,提高了网络的可靠性。

    BGP的路径矢量特征

    • BGP通常被称为路径矢量路由协议(Path- Vector Routing Protocol)。
    • 每条BGP路由都携带着多种路径属性( Path attribute),在各种路径属性中,AS_Pah属性是非常关键的一个。 AS Path属性记录了BGP路由传递过程中所经过的AS号,实际上它是一个AS号的列表。
    • BGP路由器不接受AS_Path中包含其自身AS号的路由更新。AS_Path属性值的长短(AS号的个数)会作为一个比较的依据,影响BGP路由选择的决策。
      在这里插入图片描述

    BGP协议特征

    • BGP使用TCP为传输层协议,TCP端口号179.路由器之间的BGP会话基于TCP连接而建立。
    • 运行BGP的路由器被称为BGP发言者(BGP Speaker),或BGP路由器。
    • 两个建立BGP会话的路由器互为对等体(Peer).BGP对等体之间交换BGP路由表。
    • BGP路由器只发送增量的BGP路由更新,或进行触发更新(不会周期性更新)。
    • BGP具有丰富的路径属性和强大的路由策略工具。
    • BGP能够承载大批量的路由前缀,用于大规模的网络中。

    在这里插入图片描述

    BGP报文类型

    在这里插入图片描述
    ### BGP

    BGP的状态机

    在这里插入图片描述

    BGP Peer

    • 运行BGP的路由器被称为BGP发言者,或者BGP路由器。

    • BGP对等体也叫BGP邻居,与OSPF、RIP等协议不同,BGP的会话是基于TCP建立的。建立BGP对等体关系的两台路由器并不要求必须直连。

    • BGP存在两种对等体关系类型:EBGP及IBGP。针对这两种对等体类型,BGP处理路由的操作存在较大差异。
      在这里插入图片描述

    • EBGP(External BGP): 位于不同自治系统的BGP路由器之间的BGP邻接关系。

    • 两台路由器之间要建立EBGP对等体关系,必须满足两个条件:
      - 两个路由器所属AS不同(也即AS号不同)。
      - 在配置BGP时,Peer命令所指定的对等体IP地址要求路由可达,并且TCP连接能够正确建立。

    IBGP( Internal BGP): 位于相同自治系统的BGP路由器之间的BGP邻接关系。

    • 两台路由器之间要建立IBGP对等体关系,必须满足两个条件:
      • 两个路由器所属AS需相同(也即AS号相同)。
      • 在配置BGP时,Peer命令所指定的对等体IP地址要求路由可达,并且TCP连接能够正确建立。

    BGP同步(synchronization)

    • 若路由器从IBGP对等体学习到一条BGP路由,它不能使用该条路由,更不能将路由传递给自己的EBGP对等体,除非它又从IGP学习到该条路由,这就是BGP的同步规则。
    • 同步规则的存在,可以防止数据在传输AS内由于转发设备没有目标网络的路由而被丢弃的问题,也就是所谓的黑洞问题。
    • 为了使得BGP路由能够正常交互,我们就不得不在该传输AS内所有路由器上都运行BGP,且构建全互联的IBGP对等体关系;或者在AS边界上将BGP路由引入IGP.显然这两种方法各有利弊,尤其是后者,盲目地将BGP路由引入IGP是非常危险的。
    • 同步规则的存在意义是避免出现黑洞问题,而如果AS内路由问题已经解决,那么同步规则也就没有必要再开启了。华为路由交换产品缺省关闭同步规则。

    IBGP水平分割规则

    • BGP路由在AS之间的防环依赖于AS_Path路径属性,当路由器收到BGP路由后,发现该路由所携带的AS_Path属性中出现了其自己所处的AS号,则路由器认为出现了路由环路,它将忽略该条路由。
    • AS_Path属性仅在路由离开AS时才会被更改,而BGP路由在AS内部传递时,路由的AS_Path属性值不会发生改变,如此一来,IBGP路由的防环就无法依赖AS_Path了。
    • 为了防止BGP路由在AS内部传递时发生环路,BGP要求:“路由器不能将自己从IBGP对等体学习到的路由再传递给其他IBGP对等体”,这就是IBGP水平分割规则。
    • 由于IBGP水平分割原则的存在,BGP要求AS内须保证IBGP对等体关系的全互联,因为只有这样,才能够确保每一个路由器都能学习到路由。

    在这里插入图片描述

    C到E学习到的BIG路由,由于水平分割规则的限制,不能够传送给B路由器,这将导致B无法学习到F通告的BGP路由。

    • 考虑到IBGP水平分割规则的限制,为了使得AS内的路由器都能够正常学习到BGP路由,我们不得不建立一个全互联的BGP对等体关系(如图所示)。
    • 然而在AS内的所有BGP路由器之间维护全互联的BGP对等体关系是需要耗费大量资源的,网络的可扩展性、可维护性也非常差。解决方案:
      • 路由反射器
      • 联邦
        在这里插入图片描述

    BGP路由通告规则

    • 当存在多条路径时,路由器只选取最优(Best)的BGP路由来使用(没有激活负载均衡的情况下)。
    • BGP只把自己使用的路由,也就是自己认为最优的路由传递给对等体。
    • 路由器从EBGP对等体获得的路由会传递给它所有的BGP对等体(包括EBGP和IBGP对等体)。
    • 路由器从IBGP对等体获得的路由不会传递给它的IBGP对等体(存在反射器RR的情况除外)。
    • 路由器从IBGP对等体获得的路由是否通告给它的EBGP对等体要视IGP和BGP同步的情况来决定。

    BGP相关的几张表

    在这里插入图片描述

    BGP邻居表

    在这里插入图片描述
    在这里插入图片描述

    BGP基础配置

    • 启动BGP进程,并指定BGP Router-ID:
      [Router] bgp as-num
      [Router-bgp]router-id x.x.x.x
    • As-num参数为设备所处的AS号;
    • 为了增加网络的可靠性,建议将BGP Router-ID手工配置为设备Loopback接口的地址。如果没有配置,则BGP会自动选取系统视图下的Router-ID作为BGP协议的Router-ID.系统视图下的Router-ID选择规则,请参见命令router-id中的描述。

    配置BGP对等体:

    [Router-bgp] peer x.x.x.x as-number as-num

    • Peer关键字后面的x.x.x.x为对等体的P地址,本设备与该IP地址之间必须路由可达。
    • 在BGP中,对等体需要通过peer命令手工指定,无法像IGP那样通过协议自动发现。
    • AS号码决定了与对等体建立的是EBGP会话还是BGP会话。
    • (可选)指定用于建立BGP会话(也就是TCP连接)的源接口或源地址:
      [Router-bgp] peer x.x.x.x connect-interface intf[ipv4-src-address]
    • 缺省情況下,BGP使用报文出接口的IP地址作为与对等体建立会话的源地址。

    BGP引入IGP路由

    • 需注意的是:BGP本身不发现路由,因此需要将其他路由引入到BGP路由表。
    • BGP引入路由时支持Import和Network两种方式:
      • Import方式是按协议类型,将RIP、OSPF、ISIS等协议的路由引入到BGP路由表中。Import方式还可以引入静态路由和直连路由。
      • Network方式是逐条将IP路由表中已经存在的路由引入到BGP路由表中。
    • BGP在引入IGP的路由时,可以使用路由策略进行路由过滤和路由属性设置。

    BGP基础配置

    • 使用network命令将路由通告到BGP:
      [router-bgp] network ipv4-address [ mask | mask-length ]
    • 使用network命令将路由表中的路由通告到BGP.路由必须存在于路由表中才能够被成功通告到BGP。
    • 如果上述命令没有指定mask或mask-length参数,则按有类地址处理。指定了mask,则仅当路由选择表中有与该网络完全匹配的条目时才被通告出去。
    • BGP中的network命令与IGP中的network是大不相同的,BGP中的network命令用于将路由通告到BGP,而不是在接口上激活BGP.
    • 在执行上述命令时,可以关联route-policy从而更为灵活的控制所引入的路由。

    BGP基本配置-修改BGP路由下一跳为自身

    • BGP是AS-by-AS的路由协议,而不是Router-by-Router的路由协议。在BGP中,Next-Hop属性值并不
      意味着是下一台路由器,而是到达下一个AS的IP地址。
    • 当路由器将一条BGP路由传递给自己的EBGP对等体时,缺省情况下该路由的Next-Hop属性值为其更新
      源地址,一般为自己的接口IP地址。

    BGP基本配置-指定更新源IP

    • 指定BGP连接所使用的建立TCP连接会话的源接口和源地址
      [Router-bgp]peer x.x.x.x connect-interface intf[ipv4-src-address]
      缺省情况下,BGP使用报文出接口的IP地址作为与对等体建立会话的源地址。
    • 在部署IBGP对等体关系时,建议使用Loopback地址作为更新源地址。Loopback接口非常稳定,而且可以借助AS内的IGP和冗余拓扑来保证可靠性。
    • 在部署EBGP对等体关系时,通常使用直连接口的IP地址作为源地址,如若使用Loopback接口建立EBGP对等体关系,则应注意EBGP多跳问题。

    BGP基本配置-EBGP多跳

    • 通常EBGP的对等体关系基于直连接口建立。如果EBGP的对等体关系并非基于直连接口建立,而是基于Loopback接口,又或者EBGP对等体不是直连的(中间隔着其他设备),那么要注意EBGP多跳的问题:在EBGP之间,所发送的BGP报文默认的TTL为1,因此如果EBGP对对等体之间存在多跳,则需修改最大跳数限制。
    • 命令如下:
      [Router-bgp] peer ipv4-address ebgp-max-hop [hop-count],
      如果配置上述命令时没有指定参数hop-count,则为255.
    更多相关内容
  • bgp

    2021-02-14 12:36:14
    bgp
  • 文件功能BGPHeader.java BGP数据包头解码/编码/访问BGP监听器.java 实际使用其余部分来侦听 BGP 馈送的主程序BGPNotificationPacket.java BGP 通知包解码/编码/访问BGPOpenPacket.java BGP 开放包解码/编码/访
  • BGP模拟器 BGP-4协议的基本拓扑仿真。 我们使用现有的AS拓扑数据构造BGP AS图。 每个AS都简单地表示为图中的一个节点。 主要功能是查找从AS a到AS b的路径。 使用此基本模拟器,我们可以测试任何BGP或AS相关项目的...
  • 通过路由软件Zebra实现一个具有部分路由器功能的监测代理,并将其连接到网络中一台BGP边界路由器,通过它们之间的BGP协议交互,监测代理可捕获到整个网络的路由信息,并籍此进行BGP路由监测。  1 引言  随着...
  • bgp:Go 中的 BGP 实现

    2021-06-13 17:20:17
    BGP BGP 是 Go 中的 BGP-4 实现。 RFC BGP 社区: : BGP-4 功能广告: : BGP-4: : BGP 扩展社区: : BGP 32 位 AS 编号: : BGP 32 位 AS 编号: : 笔记 open 消息中的参数似乎没有使用。 可以完全隐藏它,...
  • BGP的邻居状态详解.doc

    2020-04-29 16:22:06
    BGP设备的IP路由表内不存在去往邻居的路由信息,停留在此状态的原因: (1)本BGP设备没有去往对等体的路由 (2)收到TCP的结束连接报文(删除邻居或者邻居超时触发) (3)收到来自邻居的Notification报文 触发...
  • BGP Graceful Restart

    2019-04-22 13:57:45
    关于GR通用的基本概念,原理,以及作用,请参考《网络之路-OSPF专题讨论》中的文章《OSPF Graceful Restart》。...该文对于GR的来源,作用和通原理做了详细的介绍,本文将跳过这方面,直接进入BGP GR实现的介绍。
  • bgp_java 这是用于BGP更新相关性分析的控制台软件。 以下论文描述了示例分析: 安德烈·萨佩金(Andrey Sapegin)和史蒂夫·乌里格(Steve Uhlig)。 “关于Internet中BGP更新的相关程度以及它告诉我们有关BGP...
  • 检查-bgp Gitoyen BGP 通过 SNMP 检查 链接 安装 在受监控的路由器上 只需在/usr/local/etc/quagga-snmp-bgpd安装quagga-snmp-bgpd.pl脚本 并在您的snmpd.conf添加这一行 pass_persist .1.3.6.1.4.1.99999.1 /...
  • BGP选路原则13条

    2018-11-06 14:50:20
    bgp选路原则: 1. weight是首先考虑的参数,weight值最高的路径被优选。Weight是cisco专有的参数,并且它是本地有效的。缺省情况下,本地始发的路由具有相同的weight为32768,所有其他的weight值为0. 2. local-...
  • BGP4+通常应用于大型和复杂的IPv6网络,用于在AS之间传递路由信息。 1 BGP4+概述 2 配置BGP4+的基本功能 3 配置BGP4+对等体组 4 控制路由信息的引入 5 控制路由信息的发布 6 控制BGP4+的路由选择 7 配置BGP4+路由...
  • bgp-server.rb 作者: Shindo (2012 - 2021) 这是一个由 Ruby 编写的非常简单的 BGP4 实现。 这段代码的目的是让用户可以非常灵活地操作 BGP4 消息并将其发送给对等方。 没有意图支持 BGP4 的所有能力。 由于这个...
  • BGP仪表板BGP网络的“实时” Web视图我与谁同行? 我可以从同行那里收到多少条路线? 我该使用谁来进行翻译? 前缀从我的网络中取出哪个AS路径? 我看到多少条路线和自治系统? BGP眼镜(IPv4 / IPv6 / ASN)这个...
  • BIRD 与 BGP 的新手开场 我本来是一直不想写这个这类文章的,因为我一直认为动态路由(包括但不限于 BGP)这玩意儿基本都是学习了计算机网络基础知识的人玩的。这些人大都有足够的阅读、学习经验与能力,根据 BIRD ...
  • BGPHist是一款能够获取MP-BGP更新,对其进行解码并写入后端存储以进行日志记录和监视的工具。 它不仅支持Internet路由,还支持以下地址族:1. ipv4组播2. ipv4标记为单播3. vpnv4单播4. ipv6单播5. ipv6标记为单播6....
  • 针对IP骨干网路由规模大、路径多、重叠度高而易绕转的问题,在分析传统BGP路由选路机制缺陷的基础上,采用SDN控制技术,提出了一种支持传统路由设备和OpenFlow设备的路由反射优化方法,并给出了具体实现算法及部署...
  • BGP路由泄露研究

    2021-01-20 05:28:02
    随着互联网规模的急剧扩大,边界网关协议(BGP,border gateway protocol)在域间路由系统中的作用愈加重要。BGP本身存在很大的安全隐患,导致前缀劫持、AS_PATH劫持及路由泄露攻击事件频频发生,给互联网造成了严峻...
  • BGP路由协议实验.doc

    2020-06-29 16:25:40
    BGP虽然是一种动态路由协议,但它实际上本身并不产生路由、不发现路由、不计算路由,其主要功能是完成最佳路由的选择并在BGP邻居之间进行最佳路由的传递。BGP选择了TCP作为其传输协议,端口号是179。 BGP的邻居关系...
  • 海外交换中心使用技术,BGP的router-server模式,仅供参考。
  • OSPFV3. IPV6 ISIS.BGP4协议对ipv6的支持
  • 本文中,我们对构成BGP连接的BGP发言人加以额外限制:他们必须是自己直接共享数据链路子网。因此,相邻AS间的BGP会话无需AS内或AS间的路由。超出本文范围的案例可能与该限制不符。自治系统在本文档中的含义,即使它...
  • 飞塔关于FortiGate的BGP动态路由的详细解释及示例。FortiOS版本为6.0。
  • 网络大爬虫BGP专题

    2018-05-26 13:26:45
    H3C专家早年编写的BGP基础教程,非常想学习BGP的同学入门
  • BGP实验一分析(hcip)

    2021-01-20 13:11:54
    目录  拓扑设计  拓扑搭建  配置 ...[r3-bgp]peer 2.2.2.2 connect-interface LoopBack 1 //IBG内部采用环回建立邻居关系,因为IBGP内部存在备份和负载,如果有动荡,不影响BGP.  [r3-bgp
  • RIP协议是最早的路由协议,OSPF是目前应用最广泛的IGP协议,IS-IS是另外一种链路状态型的路由协议,BGP协议是唯一的EGP协议,那么这几种路由协议有什么特点和不同呢?下面就一起来看看了解下
  • BGP安全之殇.pdf

    2020-01-11 10:24:41
    BGP(RFC 1771、RFC 4271): 全称是Border Gateway Protocol, 对应中文是边界网关协议,最新版本是BGPv4。BGP是互联网上一个核心的互联网 去中心化自治路由协议。它的地位是核心的毫不夸张地说,是目前唯一连接海陆空...
  • BGP查看工具

    2021-08-26 13:23:52
    ctf遇到bgp?没事使用该工具即可搞定,可以用来查看BGP,非常好用的一款隐写工具
  • BGP.xmind

    2020-04-29 14:21:35
    BGP思维导图汇总总结------适合喜欢网络,想加入我们数据通信大家庭的每一位猿猿.本次思维导图适用于初级人士了解认识BGP ,仅供学习和交流经验参考!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 51,820
精华内容 20,728
关键字:

BGP

友情链接: assembly-language.rar