之前一直没搞明白BGP有啥用,加了跟没加没啥区别,专门查资料写了这篇《BGP协议解析》。

下面使用eNSP模拟器演示!

IBGP与EBGP的区别

BGP分为两种:IBGP与EBGP。

两个路由器的BGP号相同,建立邻居关系叫IBGP,BGP号不相同就是EGBP,BGP的号就是自制区域号(AS)。

IBGP

IBGP之间一般使用逻辑接口建立邻居关系(比如各个分总司之前的路由器运行BGP,因为他们属于一个大公司,或者说属于一个自治区域AS)。

IBGP之间一般使用逻辑接口建立邻居关系的好处:IBGP一般是在同一个公司内部使用,公司网络往往有可靠性的规划,可能会有多种路径可以走,如果其中一条线路断了,只要能ping通,当前的邻居状态就不受影响。

EBGP

EBGP之间一般使用物理接口建立邻居关系(比如两家不同公司之间的路由器运行BGP,因为他们不属于同一个公司,之间一般是用一条专用线路通信,或者说他们不属于一个自治区域AS)。

EBGP有报文跳数的限制,默认为1跳,报文跳数可以更改。

BGP的邻居

BGP的主要目的不是发现邻居或者自动发现路由,BGP的邻居是手动指定的,它的邻居是可以跨网段的(前提条件是:得有路由才能建立邻居),也可以是不直接相连的(比如:两条路由器之间隔了好多路由器的情况)。

BGP一般不是用来发现底层路由的作用,而是用他来作为传递路由的载体(所以一般部署BGP之前会先部署OSPF

BGP往往是不发现底层路由和底层邻居的一个角色,往往是传递路由用的,比如用于:在复杂的要跨越多个公司,跨越多个区域的场景。

BGP大多配置下底层都会有IGP(如OSPF)的配置,,在此之上进行配置BGP的邻居关系。

BGP邻居表与BGP路由表

BGP路由表,当network自己的网段之后,就可以通过BGP路由表来查看被广播出来的网段是哪个BGP路由器的,最前面的符号:* 表示可以通,< 表示最优路径,什么也没有表示不通。

不通的情况,例如:

AR5广播出自己的网段(10.1.1.0)后,AR7可以收到广播出的网段,但是显示时不通的,因为AR5到AR7之间是通过AR6来进行传播的(AR5与AR6运行的EBGP,不是同一个自治区域的),AR广播出自己的网段,R7收到后,自身的BGP路由表还是记录的10.0.1.1 : 10.1.1.0。然而,R7并不知道10.0.1.1是谁,怎么走(因为不在同一个自治区域内)。这时候需要AR6进行转发BGP路由信息的时候,把10.0.1.1 : 10.1.1.0中的10.0.1.1改成自己的id(10.0.2.2)。

BGP邻居表

state下显示的是Idel是没有建立成功,显示的是Established是已经建立成功了。

配置好之后,建立的过程需要一分钟左右。

其它

N个运行IBGP之间相互建立邻居关系,需要设置N(N-1)/2个邻居关系(一个路由器要与另外N-1个路由器建立关系)。

华为路由器BGP常用配置代码:

bgp 100  #自身编号route-id 6.6.6.6  #id,一般为loopback 0的地址peer 1.1.1.1 as-number 100               #邻居的地址和AS号peer 1.1.1.1 connect-intface loopback 0  #邻居的loopback 0的地址network 192.168.10.0 24                  #把这个网段广播到BGP中#运行IBGP与EBGP的路由器,向这个邻居转发BGP路由时下一条写自己的地址peer 1.1.1.1 next-hop-local             dis bgp peer              #查看bgp邻居表
dis bgp router-table      #查看bgp路由表

BGP协议解析(白话版)相关推荐

  1. Modbus通信协议+Modbus串口调试工具+Java版协议解析源码

    网络与串口二合一调试助手TCPCOM: https://download.csdn.net/download/liuyuan_java/87454762 Modbus调试工具,模拟串口调试工具 htt ...

  2. 基于FRR全面解析BGP协议(七):FRR编译

    FRR编译 环境:centos 7.6.1810 版本:FRR 7.3 编译 下载FRR源代码包 wget https://github.com/FRRouting/frr/archive/frr-7 ...

  3. 基于FRR全面解析BGP协议(五):FRR的BGP路由策略

    FRR的BGP路由策略 过滤器 FRR提供了基于IP,基于Community和基于AS-PATH的三种类型过滤器来匹配路由. IP Access List 基于IP的路由ACL规则,比较少使用,通常是 ...

  4. SGS 0.9.7 协议解析

    SGS as客户端发送数据规则: sgs 是0.9.7版 协议规则:  包头3个字节: 包大小(2个字节),命令(1个字节)  数据包  注意:包大小=命令+ 数据包 的大小 登陆命令:   命令是: ...

  5. vue 数值 拼接字符串_【Vue原理】Compile - 白话版

    写文章不容易,点个赞呗兄弟 专注 Vue 源码分享,文章分为白话版和 源码版,白话版助于理解工作原理,源码版助于了解内部详情,让我们一起学习吧 研究基于 Vue版本 [2.5.17] 如果你觉得排版难 ...

  6. v-model双向绑定原理_【Vue原理】VModel 白话版

    ↑点击上方 "神仙朱" 一起研究Vue源码吧 专注 Vue 源码分享,为了方便大家理解,分为了白话版和 源码版,白话版让大家可以轻松理解工作原理,源码版让大家更清楚内部操作和 Vu ...

  7. bgp协议 怎么知道相邻路由的ip地址_三级网络技术考前选择题1—BGP

    一.视频讲解 二.知识点背诵 高频:出现 24 次(共有 29 套题) 1.  BGP是边界网关协议,是外部而不是内部网关协议(是不同自治系统(AS)的路由器之间使用的协议).2.  一个BGP发言人 ...

  8. BGP协议测试套开发及使用指导书

    1     协议介绍 1.1   协议概述 BGP(BorderGateway Protocol,边界网关协议)是一种实现AS(自治系统)之间路由的距离矢量性动态路由协议.使用TCP作为其传输层协议( ...

  9. Oracle(TNS)协议解析及C/C++代码解析

    Oracle客户端和服务器使用TNS作为其数据交换协议. 它提供了一种对用户透明的层, 为不同的工业标准协议提供统一, 通用的接口. 基本上是TNS以这样的方式指定了端口1521上的会话是" ...

最新文章

  1. ELF 文件 动态链接 - 地址无关代码(GOT)
  2. sr锁存器 数电_数电课设其实也没那么难2.1
  3. mysql 帮助命令_一篇文章帮你搞定所有MySQL命令!
  4. 汇编---输出AX的地址值
  5. web前端【第十一篇】jQuery属性相关操作
  6. git submodule 子模块的管理和使用
  7. 设计模式的C语言应用-建造者模式-第七章
  8. SQL Server 2016/2014/2012/2008/2005/2000简体中文企业版下载地址
  9. windows 运行linux c++,Visual studio中使用C++的Linux 开发
  10. WPF 自定义IconButton
  11. repeater 的编辑功能
  12. PhoneGap + Dreamweaver 5.5 无法在模拟器中打开的问题
  13. clover写入efi_黑苹果安装核心文件-四叶草引导Clover EFI 配置文件结构讲解
  14. 011游移方位惯导系统的力学编排之指令角速度
  15. 常见的 NoSQL 数据库有哪些?一篇详尽(图表展示)
  16. 李彦宏:为理想找到归宿
  17. 为什么连接xshell报错Could not connect to 172.16.16.100 (port 22): Connection failed
  18. vue打包后华为手机自带浏览器访问空白
  19. html 图片 空白,HTML图片标签空白解决方法
  20. 网站域名被劫持、网站dns被劫持 域名跳转到别的网站的解决方法

热门文章

  1. MTK如何配置长按关机
  2. 问卷设计:NPS/CSAT要先问还是后问?
  3. SysinternalsSuite
  4. RH850 F1L text段代码与S19文件解析
  5. 【统计计算】关于Jackknife的理解和推导
  6. 联盟链系列 - RootCA颁发证书
  7. JetBrains各版本全家桶工具 编程开发全套永久软件!IDE也能免费用
  8. 【洛谷】P1456 Monkey King
  9. 跳跃游戏(Java)
  10. 创建Vue项目的两种方法(镜像和官网)