HCIE-day11-BGP1

ops/2025/1/11 13:11:25/

BGP

  • AS之间为EGP协议,AS之内IGP协议。通常在IGP之间完成路由计算;BGP完成路由的转发控制,选择最佳路由。
  • BGP使用TCP作为传输层协议(端口号179),提高了协议的可靠性。
  • 支持无类别域间路由CIDR(A B C类), 目的减少路由表条目的数量。
  • 路由更新时,BGP只发送更新的路由(IGP更新后,会发送所有路由),大大减少了BGP传播路由所占用的带宽。
  • 是一种距离矢量路由协议,从设计上避免了环路的产生。
    (1)AS内部,从IGP学到的路由不会发给IGP。
    (2)AS之间,AS-Path中包含自己的,会丢弃掉。
    公有自治系统号码范围为1-64511,私有自治系统号码范围为64512-65535

路由传递过程

(1)BGP邻居建立 (2)IGP路由注入到BGP (3)BGP邻居之间通过BGP路由通告原则互相传递路由。

协议报文

报文功能
open 报文通过TCP建立BGP连接时,发送open消息
keepalive 报文邻居关系稳定后,定时发送保持BGP连接的有效性
update 报文连接建立后,如果有路由需要发送或者路由变化时,发送update通知对端路由信息
Notification 报文当本地BGP在运行中发现错误时,要通过notification通告BGP对等体
route refresh更新之后,可获取全量路由

邻居关系建立状态机

在这里插入图片描述

BGP邻居关系类型

BGP邻居关系类型:IBGP邻居(AS内部)和EBGP邻居(AS之间)。
在这里插入图片描述
EBGP:
[RTE] bgp 300
[RTE-bgp] peer 20.0.0.1 as-number 200

IBGP:
[RTD] bgp 200
[RTD-bgp] peer 2.2.2.2 as-number 200

指定更新源和EBGP多跳:
在使用loopback地址建立EBGP时需要注意
(1)不同AS之间没有IGP来提供loopback网段的路由可达,需要另外配置静态路由来使EBGP邻居路由器之间的loopback网段路由可达。
(2)EBGP邻居之间的协议报文的TTL默认为1,如果邻居关系使用非直连网段地址建立,需要手工修改TTL值。
EBGP多跳:
[RTE] bgp 300
[RTE-bgp] peer 4.4.4.4 as-number 200
[RTE-bgp] peer 4.4.4.4 connect-interface loopback 0
[RTE-bgp] peer 4.4.4.4 ebgp-max-hop 2
[RTE] ip route-static 4.4.4.4 32 20.0.0.1
BGP默认是根据物理接口建立的连接,如果需要用环回口建立,需要进行说明(peer x.x.x.x connect-interface loopback 0 )
[RTD] bgp 200
[RTD-bgp] peer 2.2.2.2 as-number 200
[RTD-bgp] peer 2.2.2.2 connect-interface loopback 0


http://www.ppmy.cn/ops/149167.html

相关文章

TypeScript Jest 单元测试 搭建

NPM TypeScript 项目搭建 创建目录 mkdir mockprojectcd mockproject初始化NPM项目 npm init -y安装TypeScript npm i -D typescript使用VSCode 打开项目 创建TS配置文件tsconfig.json {"compilerOptions": {"target": "es5","module&…

Lambda expressions in C++ (C++ 中的 lambda 表达式)

Lambda expressions in C {C 中的 lambda 表达式} 1. Parts of a lambda expression (Lambda 表达式的各个部分)1.2. Parameter list (Optional) References lambda /ˈlm.də/:the 11th letter of the Greek alphabet (希腊语字母表的第 11 个字母)https://learn.m…

Go语言中的sync.WaitGroup详解

Go 语言作为一种现代并发编程语言,提供了强大的并发模型和工具。其中,sync.WaitGroup 是 Go 标准库中的一个重要同步工具,广泛用于协程(goroutine)的同步控制。本文将深入探讨 sync.WaitGroup 的工作原理、应用场景以及如何避免使用共享变量和信号量来实现同步。 一、syn…

身份鉴权(PHP)(小迪网络安全笔记~

免责声明:本文章仅用于交流学习,因文章内容而产生的任何违法&未授权行为,与文章作者无关!!! 附:完整笔记目录~ ps:本人小白,笔记均在个人理解基础上整理,…

机器学习赋能的智能光子学器件系统研究与应用

在人工智能与光子学设计融合的背景下,科研的边界持续扩展,创新成果不断涌现。从理论模型的整合到光学现象的复杂模拟,从数据驱动的探索到光场的智能分析,机器学习正以前所未有的动力推动光子学领域的革新。据调查,目前…

Ubuntu 磁盘修复

Ubuntu 磁盘修复 在 ubuntu 文件系统变成只读模式,该处理呢? 文件系统内部的错误,如索引错误、元数据损坏等,也可能导致系统进入只读状态。磁盘坏道或硬件故障也可能引发文件系统只读的问题。/etc/fstab配置错误,可能…

Java基础 注解

分类 Java自带的标准注解,包括Override、Deprecated和SuppressWarnings,分别用于标明重写某个方法、标明某个类或方法过时、标明要忽略的警告,用这些注解标明后编译器就会进行检查。元注解,元注解是用于定义注解的注解&#xff0…

关于Mac中的shell

1 MacOS中的shell 介绍: 在 macOS 系统中,Shell 是命令行与系统交互的工具,用于执行命令、运行脚本和管理系统。macOS 提供了多种 Shell,主要包括 bash 和 zsh。在 macOS Catalina(10.15)之前&#xff0c…