一、动态路由协议划分
算法
- 距离矢量型 RIP EIGRP(收敛最快) BGP(路径信息)
- 链路状态型 OSPF ISIS
- 路径矢量型 BGP
范围 AS
BGP 区分号 AS 1-65535 64512-65535 私有AS 2^16 AS号不足
二、特点
- 可以跨跳建立邻居
- 强调路由传递控制的一种协议,控制:路由学习选择性,选路的控制
- 手动建立邻居
- BGP有多种路由属性
三、BGP的建邻
BGP是通过单播使用TCP协议建邻 端口号 179
邻居类型:
- IBGP邻居 AS内部建立的BGP邻居,邻居路由器的AS号是一致的
- EBGP邻居 AS之间建立BGP邻居,邻居路由器的AS号不相同
一般而言BGP的EBGP建邻会使用直连建立,IBGP建邻会使用回环建立。 如果我们用回环建立EBGP邻居需要修改建邻跳数。
bgp 200
router-id 2.2.2.2
peer 10.1.24.2 as-number 300
peer 10.4.4.4 as-number 300
peer 10.4.4.4 ebgp-max-hop 2
peer 10.4.4.4 connect-interface LoopBack0
bgp 100
router-id 1.1.1.1
peer 10.1.13.2 as-number 300
peer 10.1.13.2 password simple 123
BGP邻居转态以及包 BGP没有周期更新,只有触发更新,update包可以更新路由也可以撤销路由,BGP更新速度非常慢。
四、BGP路由生成
- network
Network命令是逐条将IP路由表中已经存在的路由引入到BGP路由表中。 掩码宣告,必须和路由表中路由掩码对应,否则宣告不进去。 - import
Import命令是根据运行的路由协议(RIP,OSPF,ISIS等)将路由引入到BGP路由表中,同时 import命令还可以引入直连和静态路由。
五、BGP路由学习
- 仅将自己最优的路由发布给邻居
- 通过EBGP获得的最优路由发布给所有BGP邻居
- IBGP之间不能中转路由----原因为了防环是一种水平分割的设置–IBGP之间没有设置防环计算
- BGP与IGP同步 —BGP会查看自身路由有没有被重发布到IGP中,如果有就是同步,如果没有就是不同步(不同步的路由在BGP中不优)路由黑洞问题
-1 BGP全互联—在黑洞路由器上配置BGP并且与其他BGP路由器建立邻居 -2 重发布—把BGP路由引入IBGP—BGP与IGP同步 -3 mpls做隧道 - IBGP之间传递路由时路由的下一跳不变
peer 10.4.4.4 next-hop-local //解决下一跳不可达问题 - EBGP之间传递路由时路由的下一跳会修改为自己的更新地址(建邻地址)
六、BGP的路由更新
本地路由(BGP-RIB)---->过滤---->出向BGP-RIB—updata–>邻居的入向BGP-RIB–>过滤—>邻居的本地BGP-RIB
七、BGP的过滤
- 使用前缀列表来实现过滤
bgp 100
router-id 1.1.1.1
peer 10.1.13.2 as-number 300
#
ipv4-family unicast
undo synchronization
network 30.1.1.1 255.255.255.255
network 100.1.1.1 255.255.255.255
network 100.2.2.2 255.255.255.255
network 100.3.3.3 255.255.255.255
peer 10.1.13.2 enable
peer 10.1.13.2 ip-prefix 3 export
#
ip ip-prefix 3 index 10 deny 100.3.3.3 32
ip ip-prefix 3 index 20 permit 0.0.0.0 0 less-equal 32
- 使用route-policy来实现过滤
bgp 300
router-id 4.4.4.4
peer 10.1.24.1 as-number 200
peer 10.3.3.3 as-number 300
peer 10.3.3.3 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
network 20.4.4.4 255.255.255.255
import-route direct route-policy direct
peer 10.1.24.1 enable
peer 10.1.24.1 route-policy 2 export
peer 10.3.3.3 enable
peer 10.3.3.3 next-hop-local
route-policy 2 deny node 10
if-match ip-prefix 3
#
route-policy 2 permit node 20
#
ip ip-prefix 3 index 10 permit 100.2.2.2 32
|