zoukankan      html  css  js  c++  java
  • BGP知识点备忘录

    1.有两种路由协议,一种是IGP,另一种是EGP。
    2.IGP路由协议有RIP、EIGRP、OSPF、IS-IS。
    3.BGP目标端口为TCP的179端口,源端口号是随机的。
    4.BGP建立邻居后,会每60秒发送一次keepalive包,如果hold timer为180秒后,认为邻居丢包,则断开与邻居的连接。
    5.BGP能够传递的协议有IPv4、IPv6、VPNv4、CLNS、L2VPN。
    6.两个路由器同属相同的AS,则邻居关系为iBGP,如果属于不同AS,则邻居关系为eBGP。BGP要求eBGP邻居必须直连,而iBGP邻居可以任意距离。
    7.两台BGP路由器正常的建立邻居,必须有一台收到目标IP地址是自己的BGP源地址,任意一个邻居满足条件即可。即A的目标IP地址是B的源IP地址。
    8.每台BGP路由器都拥有多条链路的BGP邻居保持连接,路由器的loopback口是BGP路由器系统的接口,不会像某个物理接口断连了,整个BGP邻居失去正常工作状态,因为还有通畅的链路让BGP邻居仍然可以保持连接;实现了连接的冗余性和稳定性。
    9.iBGP发出的数据包的TTL值最大为255,而eBGP邻居时发出的数据包的TTL值限制为1,就限制了eBGP邻居必须直连;对于建立eBGP数据包的TTL值可以随意修改,甚至改为最大值255都行。
    10.BGP将路由发给eBGP邻居时,会将自己的AS号码添加到AS-path中,所以可以以此来防止环路;而在iBGP之间传递路由时,强制将BGP路由在AS内部只传一跳来防止环路的机制。
    11.在IGP协议当中,路由协议分成两大类:距离矢量路由协议和路径矢量路由协议,路径矢量算法结合了距离矢量特性与AS-path防环特性。
    12.BGP路由的从eBGP学习到的默认AD(管理距离)值为20,iBGP学习到的路由默认AD值为200。顺便提一下其它路由协议的默认AD值:直连接口为0、静态路由为1、EIGRP汇总路由为5、EIGRP为90、IGRP为100、OSPF为110、IS-IS为115、RIP(V1&V2)为120、EGP为140、ODR为160、ExEIGRP(外部EIGRP)为170,未知为255。
    13.BGP路由器有两张路由表,一张普通路由表:show ip route,一张BGP路由表:show ip bgp。
    14.当iBGP路由需要跨越N个没有BGP路由,只有IGP路由时,需要在iBGP路由起用BGP Synchronization,否则认为此路由无效而不能发给其它邻居。
    15.IGP路由协议和BGP路由协议在有多条路径可以到达同一目的地时,IGP则根据最小metric值来选择最优路径,而BGP则比较路由条目中的Path Attributes,即路径属性。
    16.BGP路径属性可划分以下四类:公认强制、公认自选、可选可传递、可选不可传递
    17.任何一台运行BGP的路由器,必须支持公认强制属性。BGP路由携带的公认强制属性有三个:Origin、Next_Hop、AS-path。
    18.一些常用BGP属性:Origin(公认强制属性)、AS_Path(公认强制属性)、Next_Hop(公认强制属性)、Local_Pref(公认自选属性)、MULTI——EXIT——DISC(MED,可选不可传递属性)
    19.AS是一个16位的数字,范围为1-65535。1-65411是公有AS;65412-65535共1024个是保留私有AS。

    20.重分布进BGP的路由的Origin属性为Incomplete。
    21.BGP路由表中到达同一目的地存在多条路径时,会通过比较路由的Origin属性来选择最优路径,它们的优先级顺序为IGP>EGP>Incomplete。
    22.当BGP路由表中达到同一目的地存在多条路径时,会优选AS-Path最短的路径。
    23.BGP路由器将路由传递给eBGP邻居时,会将Next-hop属性改为自己的地址,而在将路由传递给iBGP邻居时,不会改变Next-hop属性。本地发起路由的Next-hop属性为0.0.0.0。
    24.Local_Pref属性只能在同一AS内部传递,出了AS后会被还原成默认值。Local_Pref默认值为100。当BGP路由表到达同一目的地存在多条路径时,会比较Local_Pref值的大小,本地优先级越高,路由优先级越高。
    25.MED是BGP路由中的metric,是被设计用来影响多个下一跳为eBGP邻居时,如何选择最优路径,拥有最小MED值的路径会被优先使用。MED默认值为0。
    26.默认情况下,只有当去往目的地的多个下一跳eBGP邻居都为相同AS时,才会比较MED值,如果多个eBGP邻居为不同AS时,是不会比较MED的,若是要强制在多个不同的eBGP邻居之间比较MED值,需要在BGP进程下输入命令:bgp always-compare-med。
    27.Weight属性为Cisco私有属性,Weight值的范围为0〜65535,默认为0;BGP本地路由,则Weight值为32768。手工修改路由的Weight值,只能对本地起作用,不会传递给邻居。当BGP路由表中到达同一目的地下存在多条路径时,会优选Weight值最的的路径。

    28.如果某BGP路由的状态为RIB-Failure,则不能被使用,原因有:1.该路由在IGP中拥有比BGP更高优先级的AD值。2.内容错误。3.超出VRF中路由限制数。
    29.BGP建立邻居的条件有1.双方需要建立邻居的IP地址在网络上是互通的,可以建立TCP会话。2.双方指定的AS号码必须匹配。3.双方BGP数据包必须可达(eBGP默认TTL为1,需要注意)。4.对方BGP数据包的目的IP和自己的源IP必须相同(单向满足即可)
    30.BGP最优路径选择如下:
    1)最高Weight值。默认Weight值为0,本地发起路由为32768。
    2)最高LOCAL_PREF值,如果Weight值相同,则选择拥有最高LOCAL_PREF值的路由,默认为100。)
    3)本地发起路由,用network命令导入,或将其它路由协议重分布进BGP路由表,最后是汇总路由表。
    4)最短AS_PATH。如果本地发起路由无法比出最优路径,则选择拥有最短AS_PATH路由,但可忽略对AS_PATH的比较,而直接比较下一属性,输入命令:bgp bestpath as-path ignore。
    5)最低Origin类型。如果AS_PATH无法比出最优路径,则选择拥有最低Origin类型的路由,从IGP导入,从EGP学习,以及重分布,它们的优先级为IGP优先EGP,EGP优于Incomplete,即IGP>EGP>Incomplete。
    6)最小MED值。如果Origin类型无法比出最优路径,则选择拥有最小MED值的路由,并且只有当多个下一跳邻居在同一AS时才比较MED值。如果要在多个不同AS的下一跳中比较MED,可在BGP进程中输入命令bgp always-compare-med,注意须保证此命令在整个AS的路由器上输入,否则可能产生路由环路。默认的MED值为0,如果收到一条没有MED的路由,也认为是0。
    7)eBGP优于iBGP
    8)最小IGP metric到达下一跳的路由。如果多条路径的下一跳邻居同为eBGP或iBGP,则选择拥有最小IGP metric到达下一跳的路由。)
    9)负载均衡。如果开启的话。maximum-paths n--多条路径的下一跳邻居都为eBGP时,输入此命令。maximum-paths ibgp n--多条路径的下一跳邻居都为ibgp时,输入此命令。n为执行负载均衡的路径数量,最大值为6,默认为1。
    10)如果下一跳都为eBGP,则选择最早学习到的路由(即时间最长的路由)。如果要忽略比较路由学习到的时间长短,可在BGP进程下输入命令bgp best path compare-routerid。
    11)最低Router-ID下一跳。BGP的Router-ID选举如同OSPF,在此步,拥有最低Router-ID的下一跳路由将被选为最优路径。
    12)最短cluster list。cluster list只在BGP reflector(RR)的环境下才有,功能如同AS_PATH。
    13)最小下一跳的邻居地址。如果比较之前的所有属性都无法选出最优路径,最终选择下一跳的邻居地址最小的路由,这个地址就是在建立邻居时所指的地址。

    31.BGP实验1

    R1:
    interface Loopback0
     ip address 1.1.1.1 255.255.255.255
    interface FastEthernet0/0
     ip address 12.1.1.1 255.255.255.0
    interface FastEthernet0/1
     ip address 13.1.1.1 255.255.255.0
    router ospf 3
     router-id 1.1.1.1
     log-adjacency-changes
     network 1.1.1.1 0.0.0.0 area 0
     network 12.1.1.0 0.0.0.255 area 0
     network 13.1.1.0 0.0.0.255 area 0
    router bgp 1
     no synchronization
     bgp router-id 1.1.1.1
     bgp log-neighbor-changes
     neighbor 2.2.2.2 remote-as 1
     neighbor 2.2.2.2 update-source Loopback0
     neighbor 3.3.3.3 remote-as 1
     neighbor 3.3.3.3 update-source Loopback0
     no auto-summary
    R2:
    
    interface Loopback0
     ip address 2.2.2.2 255.255.255.255
    interface FastEthernet0/0
     ip address 12.1.1.2 255.255.255.0
    interface FastEthernet0/1
     ip address 24.1.1.2 255.255.255.0
    router ospf 3
     router-id 2.2.2.2
     log-adjacency-changes
     network 2.2.2.2 0.0.0.0 area 0
     network 12.1.1.0 0.0.0.255 area 0
     network 24.1.1.0 0.0.0.255 area 0
    router bgp 1
     no synchronization
     bgp router-id 2.2.2.2
     bgp log-neighbor-changes
     neighbor 1.1.1.1 remote-as 1
     neighbor 1.1.1.1 update-source Loopback0
     neighbor 4.4.4.4 remote-as 4
     neighbor 4.4.4.4 ebgp-multihop 255
     neighbor 4.4.4.4 update-source Loopback0
     no auto-summary
    R3:
    
    interface Loopback0
     ip address 3.3.3.3 255.255.255.255
    interface FastEthernet0/0
     ip address 34.1.1.3 255.255.255.0
    interface FastEthernet0/1
     ip address 13.1.1.3 255.255.255.0
    router ospf 3
     router-id 3.3.3.3
     log-adjacency-changes
     network 3.3.3.3 0.0.0.0 area 0
     network 13.1.1.0 0.0.0.255 area 0
     network 34.1.1.0 0.0.0.255 area 0
    router bgp 1
     no synchronization
     bgp router-id 3.3.3.3
     bgp log-neighbor-changes
     neighbor 1.1.1.1 remote-as 1
     neighbor 1.1.1.1 update-source Loopback0
     neighbor 4.4.4.4 remote-as 4
     neighbor 4.4.4.4 ebgp-multihop 255
     neighbor 4.4.4.4 update-source Loopback0
     no auto-summary
    R4:
    
    interface Loopback0
     ip address 4.4.4.4 255.255.255.255
    interface FastEthernet0/0
     ip address 34.1.1.4 255.255.255.0
    interface FastEthernet0/1
     ip address 24.1.1.4 255.255.255.0
    router ospf 3
     router-id 4.4.4.4
     log-adjacency-changes
     network 4.4.4.4 0.0.0.0 area 0
     network 24.1.1.0 0.0.0.255 area 0
     network 34.1.1.0 0.0.0.255 area 0
    router bgp 4
     no synchronization
     bgp router-id 4.4.4.4
     bgp log-neighbor-changes
     neighbor 2.2.2.2 remote-as 1
     neighbor 2.2.2.2 ebgp-multihop 255
     neighbor 2.2.2.2 update-source Loopback0
     neighbor 3.3.3.3 remote-as 1
     neighbor 3.3.3.3 ebgp-multihop 255
     neighbor 3.3.3.3 update-source Loopback0
     no auto-summary

     

    32.BGP实验2

    R1:
    interface Loopback0
     ip address 1.1.1.1 255.255.255.255
    interface FastEthernet0/0
     ip address 12.1.1.1 255.255.255.0
    router ospf 1
     router-id 1.1.1.1
     network 1.1.1.1 0.0.0.0 area 0
     network 12.1.1.0 0.0.0.255 area 0
    router bgp 12
     no synchronization
     bgp router-id 1.1.1.1
     network 1.1.1.1 mask 255.255.255.255
     network 12.1.1.0 mask 255.255.255.0
     neighbor 2.2.2.2 remote-as 12
     neighbor 2.2.2.2 update-source Loopback0
     neighbor 2.2.2.2 next-hop-self
     no auto-summary
    R2:
    interface Loopback0
     ip address 2.2.2.2 255.255.255.255
    interface FastEthernet0/0
     ip address 12.1.1.2 255.255.255.0
    interface FastEthernet0/1
     ip address 23.1.1.2 255.255.255.0
    router ospf 1
     router-id 2.2.2.2
     log-adjacency-changes
     network 2.2.2.2 0.0.0.0 area 0
     network 12.1.1.0 0.0.0.255 area 0
     network 23.1.1.0 0.0.0.255 area 0
    router bgp 12
     no synchronization
     bgp router-id 2.2.2.2
     network 2.2.2.2 mask 255.255.255.255
     network 12.1.1.0 mask 255.255.255.0
     network 23.1.1.0 mask 255.255.255.0
     neighbor apple peer-group
     neighbor apple remote-as 3
     neighbor apple ebgp-multihop 2
     neighbor apple next-hop-self
     neighbor orange peer-group
     neighbor orange remote-as 12
     neighbor orange update-source Loopback0
     neighbor 1.1.1.1 peer-group orange
     neighbor 23.1.1.3 peer-group apple   //配置ebgp,相邻的eBGP路由器只有一个节点,必须用直连接口来做eBGP邻居宣告,不能用loopback口来宣告eBGP路由;如果用loopback口来建的话,必然有路由震荡现象。
     no auto-summary
    R3:
    interface Loopback0
     ip address 3.3.3.3 255.255.255.255
    interface FastEthernet0/1
     ip address 23.1.1.3 255.255.255.0
    router ospf 1
     log-adjacency-changes
     network 3.3.3.3 0.0.0.0 area 0
     network 23.1.1.0 0.0.0.255 area 0
    router bgp 3
     no synchronization
     bgp router-id 3.3.3.3
     network 3.3.3.3 mask 255.255.255.255
     network 23.1.1.0 mask 255.255.255.0
     neighbor lemon peer-group
     neighbor lemon remote-as 12
     neighbor lemon ebgp-multihop 2
     neighbor lemon next-hop-self
     neighbor 23.1.1.2 peer-group lemon
     no auto-summary

    1.查看BGP时,相邻的两eBGP节点路由器在show ip route时能看到带有B的路由表,而相同AS的iBGP节点路由器上
    查看show ip route却没有带B的路由表,因为iBGP是IGP路由协议类型,在它的节点路由表只有IGP类型的路由表。
    2.查看路由表,show ip route为查看通用的路由表,也包括BGP,只不过iBGP类型的路由表不显示带B标记;
    而show ip bgp能查到所有iBGP和eBGP路由表,或show ip bgp summary能查看BGP建立的工作时间,如果是
    never标识的表示还没有成功建立BGP关系。

    补充:
          MED属性和Local_Pref属性区别在于:MED用于判断流量进入AS时的最佳路由,Local_Pref属性用于判断流量离开AS时的最佳路由。
  • 相关阅读:
    【JavaScript】RegExp 实例方法
    【JavaScript】RegExp 静态和实例属性
    【JavaScript】String 实例方法(三)
    【JavaScript】String 实例方法(一)
    【JavaScript】String 构造函数和静态方法
    【JavaScript】Symbol 实例属性和方法
    【JavaScript】Symbol 静态属性(二)
    第三节:备忘录模式——游戏角色恢复状态实例
    第二节:备忘录模式——原理&应用
    第一节:备忘录模式——需求说明&传统实现
  • 原文地址:https://www.cnblogs.com/vincent-liang/p/6408044.html
Copyright © 2011-2022 走看看