说明:该笔记作于 BGP 路由协议基本配置讲解

参考:红茶三杯

1:创建 BGP 进程

  • 仅仅执行 router bgp 并不能再路由器上激活 BGP 路由属性,必须至少执行一个子命令才能在路由器上激活 BGP 进程

  • 在路由器上只能配置一个 BGP 实例

 Router(config)# router bgp autonomous-system

2:指定 BGP 邻居及激活 BGP 会话

  • 邻居指定的 IP 地址必须路由可达

  • BGP 邻居都需手工指定,不能像 IGP 那样通过协议自动发现

  • AS 决定了与邻居建立的是 EBGP 会话还是 IBGP 会话

  • 如果采用默认路由指 neighbor Peer 是不能建立 BGP peer 对等体关系,必须为明细路由

 Router(config-router)# neighbor {ip-address | peer-group-name} remote-as autonomous-system

3:指定 BGP 将通告的网络

  • network 命令与 IGP 不同, BGP 命令 network 为通告哪些 IGP 路由 BGP 进程,而不是在接口上启用 BGP

  • network 支持无类前缀,前缀必须与路由表中的条目完全匹配

  • 如果不指定 mask,直通告主类网络号,而仅当主类网络中至少有一个子网出现在 IP 路由表中,BGP 才会将该主类网络作为一条 BGP 路由通告

  • 指定了 mask,则仅当路由选择表中有与该网络完全匹配的条目时才会被通告出去

 Router(config-router)# network network-number [mask network-mask] [route-map map-tag]

4:指定跟新源

  • 当创建 BGP 会话,邻居状态定义了目的 IP 地址和出接口定义了源 IP 地址

  • 对于 BGP 分组,源 IP 地址必须与另一台路由器上相应的 neighbor 命令指定的地址相同,不相同,则 BGP 分组将被忽略

 Router(config-router)# neighbor ip-address update-source loopback number

5:指定 Next-hop

具体参考 BGP 基础-2

 Router(config-router)# neighbor 1.1.1.1 next-hop-self

6:操作 EBGP 之间使用 Loopback 建立 Peer 更新源

 Router(config-router)# neighbor 4.4.4.4 ebgp-multihop 2 

7:关闭同步规则

关于同步规则,参考 BGP 基础-1 笔记

 Router(config-router)# no synchronization

8:关闭自动汇总

 Router(config-router)# no auto-summary

基本配置案例


说明:该案例结合了上方所有基本配置,同时需要结合 BGP 基本理论知识巩固

topo 图如下:

讲解:

通过上述命令参考,我们可以分析过程基本如下步骤

以下为 IBGP 内部配置,配置完毕即可内部 AS ping 通,但是如果有 EBGP Peer 则需要一些其他配置

1:激活 BGP

2:指定 BGP neighbor

3:指定更新源 (loopback)

4:通告 BGP 网络

*5:指定 EBGP 邻居

*6:指定 EBGP 邻居更新源 (loopback)

*7:通告 BGP 网络

*8:EBGP 路由可达 (出与回的流量)

*9:修改 EBGP 邻居默认 next-hop 1 变为 2

*10:修改邻接下一跳使得 R1,R2 下一跳地址改为 R3 (若不修改默认为 R4)

参考:neighbor 1.1.1.1(2.2.2.2) next-hop-self

具体配置参考如下:

!! R1 配置:
!
interface Loopback0ip address 1.1.1.1 255.255.255.0
!
interface Serial0/0ip address 10.1.1.1 255.255.255.0
!
router ospf 1network 1.1.1.1 0.0.0.0 area 0network 10.1.1.1 0.0.0.0 area 0
!
router bgp 123network 1.1.1.0 mask 255.255.255.0neighbor 2.2.2.2 remote-as 123neighbor 2.2.2.2 update-source Loopback0neighbor 3.3.3.3 remote-as 123neighbor 3.3.3.3 update-source Loopback0
!
end
!! R2 配置
!
interface Loopback0ip address 2.2.2.2 255.255.255.0
!
interface Serial0/0ip address 10.1.1.2 255.255.255.0
!
interface Serial0/1ip address 20.1.1.1 255.255.255.0
!
router ospf 1network 2.2.2.2 0.0.0.0 area 0network 10.1.1.2 0.0.0.0 area 0network 20.1.1.1 0.0.0.0 area 0
!
router bgp 123network 2.2.2.0 mask 255.255.255.0neighbor 1.1.1.1 remote-as 123neighbor 1.1.1.1 update-source Loopback0neighbor 3.3.3.3 remote-as 123neighbor 3.3.3.3 update-source Loopback0
!
end
!! R3 配置
!
interface Loopback0ip address 3.3.3.3 255.255.255.0
!
interface Serial0/1ip address 20.1.1.2 255.255.255.0
!
interface Serial0/2ip address 30.1.1.1 255.255.255.0
!
router ospf 1network 3.3.3.3 0.0.0.0 area 0network 20.1.1.2 0.0.0.0 area 0
!
router bgp 123network 3.3.3.0 mask 255.255.255.0neighbor 1.1.1.1 remote-as 123neighbor 1.1.1.1 next-hop-selfneighbor 2.2.2.2 remote-as 123neighbor 2.2.2.2 update-source Loopback0neighbor 2.2.2.2 next-hop-selfneighbor 4.4.4.4 remote-as 300neighbor 4.4.4.4 ebgp-multihop 2neighbor 4.4.4.4 update-source Loopback0
!
ip route 4.4.4.4 255.255.255.255 Serial0/2
!
end
!! R4 配置
!
interface Loopback0ip address 4.4.4.4 255.255.255.0
!
interface Serial0/2ip address 30.1.1.2 255.255.255.0
!
router bgp 300network 4.4.4.0 mask 255.255.255.0neighbor 3.3.3.3 remote-as 123neighbor 3.3.3.3 ebgp-multihop 2neighbor 3.3.3.3 update-source Loopback0
!
ip route 0.0.0.0 0.0.0.0 30.1.1.1
!
end

路由黑洞 & IBGP 水平分割

1:最后需要注意的是,如果 R2 不配置 BGP 会造成路由黑洞的问题

2:R1 不指定与 R3 的 Peer 对等体关系,则会造成 R2 IBGP 水平分割

BGP 基本配置参考相关推荐

  1. RHEL/CentOS通用性能优化、安全配置参考

    RHEL/CentOS通用性能优化.安全配置参考 本文的配置参数是笔者在实际生产环境中反复实践总结的结果,完全适用绝大多数通用的高负载.安全性要求的网络服务器环境.故可以放心使用. 若有异议,欢迎联系 ...

  2. 【Android 安装包优化】动态库打包配置 ( “armeabi-v7a“, “arm64-v8a“, “x86“, “x86_64“ APK 打包 CPU 指令集配置 | NDK 完整配置参考 )

    文章目录 一.动态库打包配置 二.NDK 完整配置参考 三.参考资料 一.动态库打包配置 在 build.gradle 构建脚本中 , 配置 ndk 编译的动态库 CPU 架构类型 ; 在 " ...

  3. dubbo配置参考手册

    配置参考手册 <dubbo:service/> <dubbo:reference/> <dubbo:protocol/> <dubbo:registry/&g ...

  4. CSE 支持spring 4/5 以及spring boot 1/2 maven组件依赖关系配置参考

    [摘要] 本文介绍了CSE如何使用Spring 4或者Spring 5,以及在Spring Boot 1和Spring Boot 2中如何集成CSE,重点介绍了CSE提供的maven管理器,以及如何使 ...

  5. MYSQL使用MHA实现主从复制高可用、Galera Cluster介绍、压力测试、my.cnf配置参考

    MHA介绍 MHA: Master High Availability,对主节点进行监控,可实现自动故障转移至其它从节点:通过提升某一从节点为新的主节点,基于主从复制实现,还需要客户端配合实现,目前M ...

  6. 最新postfix 的master.cf配置参考

    上次安装完服务后,我将last配置作了一次magic,以供配置参考 此配置文件里的格式和参数可以参考postfix官方文档: http://www.postfix.com/documentation. ...

  7. 对于MCU看门狗IIWDG WWDG喂狗时间的配置参考

    对于MCU看门狗IIWDG WWDG喂狗时间的配置参考可以参考MCU的datasheet: 在每个MCU的datasheet中都有这样的表格: 6.3.25 Timer characteristics ...

  8. stm32 spi nss硬件模式配置参考程序

    By: Ailson Jack Date: 2020.11.27 个人博客:http://www.only2fire.com/ 本文在我博客的地址是:http://www.only2fire.com/ ...

  9. MRTG教程(五):MRTG的配置参考指南

    mrtg的配置参考指南 内容 NAME OVERVIEW SYNTAX GLOBAL KEYWORDS OPTIONAL GLOBAL KEYWORDS EXAMPLES NAME mrtg-refe ...

  10. 大型企业及运营商国际出口使用的BGP技术,BGP基础配置

    一.BGP基础 BGP属于边界网关协议,用于不同的AS之间,对于不同的运营商或企业可以使用不同的AS号,一般运营商配合MPLS常用的技术. 早些年是EGP属于外部网关协议,而EGP不能进行路由优选环路 ...

最新文章

  1. python给图片添加字符
  2. oracle 保留一个记录吗,笔记:Oracle查询重复数据并删除,只保留一条记录
  3. 腾讯研发专家:TXSQL如何成为云计算时代数据库核弹头?
  4. VSS Get Latest Version 没有提示recursive的对话框解决
  5. 中内连和外联的去区别_喜欢和爱的区别是什么?“爱”的繁体字会告诉你答案...
  6. [转]PCM文件格式
  7. C++《STL和泛型编程》算法accumulate、for_each、sort简单使用例子
  8. Java-虚拟机-类加载(装载连接初始化)
  9. Python+OpenCV:直方图均衡化(Histogram Equalization)
  10. ubuntu 怎么格式化U盘?(转载)
  11. 人人都该懂点儿TCP---ACK延缓(转)
  12. 图像缩放之双线性插值
  13. python定义变量取值范围_python怎么限定函数自变量取值范围?
  14. 并查集 --算法竞赛专题解析(3)
  15. 【接口测试】Http请求各内容说明
  16. 光纤收发器结构介绍和故障解决
  17. 2022年1~6中国市场汽车销量可视化
  18. Python中面向对象封装案例——小明爱跑步、摆放家具
  19. 风靡全球的15则数学动图,让你秒懂数学概念
  20. 4线电子围栏安装示意图_电子围栏系统安装教程(图文)

热门文章

  1. simulink中积分环节、惯性环节、比例环节
  2. C语言程序设计实验报告——实验五
  3. 74HC595芯片引脚,功能介绍【250字】【原创】
  4. 深入浅出WPF(一)
  5. 常见计算机密码破解实用手册
  6. docker中启动Springboot时异常之Failed to instantiate [com.zaxxer.hikari.HikariDataSource]
  7. Canon EOS Utility安装和使用说明
  8. 计算机安全中心无法启动,win10无法启动安全中心服务的解决方法
  9. linux下解压bin文件怎么打开方式,安卓手机如何打开.bin文件?
  10. Cterm里面自动发帖的Python脚本