当前位置: 首页 > news >正文

5.1配置IBGP和EBGP

5.2.1实验1:配置IBGP和EBGP

  1. 实验目的
  1. 熟悉IBGP和EBGP的应用场景
  2. 掌握IBGP和EBGP的配置方法
  1. 实验拓扑

实验拓扑如图5-1所示:

                                   图5-1:配置IBGP和EBGP

  1. 实验步骤
  1. IP地址的配置

R1的配置

<Huawei>system-view

Enter system view, return user view with Ctrl+Z.

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 12.1.1.1 24

[R1-GigabitEthernet0/0/0]quit

[R1]interface LoopBack 0

[R1-LoopBack0]ip address 1.1.1.1 32

[R1-LoopBack0]quit

R2的配置

<Huawei>system-view

Enter system view, return user view with Ctrl+Z.

[Huawei]undo info-center enable

[Huawei]sysname R2

[R2]interface g0/0/1

[R2-GigabitEthernet0/0/1]ip address 12.1.1.2 24

[R2-GigabitEthernet0/0/1]quit

[R2]interface g0/0/0

[R2-GigabitEthernet0/0/0]ip address 23.1.1.2 24

[R2-GigabitEthernet0/0/0]quit

[R2]interface LoopBack 0

[R2-LoopBack0]ip address 2.2.2.2 32

[R2-LoopBack0]quit

R3的配置

<Huawei>system-view

Enter system view, return user view with Ctrl+Z.

[Huawei]undo info-center enable

[Huawei]sysname R3

[R3]interface g0/0/1

[R3-GigabitEthernet0/0/1]ip address 23.1.1.3 24

[R3-GigabitEthernet0/0/1]quit

[R3]interface LoopBack0

[R3-LoopBack0]ip address 3.3.3.3 32 

[R3-LoopBack0]quit

  1. 配置IGP:R1与R2运行OSPF协议

R1的配置

[R1]ospf router-id 1.1.1.1

[R1-ospf-1]area 0

[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

[R1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0

[R1-ospf-1-area-0.0.0.0]quit

[R1-ospf-1]quit

R2的配置

[R2]ospf router-id 2.2.2.2

[R2-ospf-1]area 0

[R2-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

[R2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0

[R2-ospf-1-area-0.0.0.0]quit

  1. 配置IBGP

R1的配置

[R1]bgp 100  //启动BGP进程,进程号为100

[R1-bgp]undo synchronization  //关闭同步,默认配置

[R1-bgp]undo summary automatic  //关闭自动汇总,默认配置

[R1-bgp]router-id 1.1.1.1  //设置BGP的router-id

[R1-bgp]peer 2.2.2.2 as-number 100  //指定邻居和邻居的AS号

[R1-bgp]peer 2.2.2.2 connect-interface LoopBack 0  //用环回口建邻居

[R1-bgp]quit

R2的配置

[R2]bgp 100

[R2-bgp]undo synchronization

[R2-bgp]undo summary automatic

[R2-bgp]bgp    

[R2-bgp]router-id 2.2.2.2

[R2-bgp]peer 1.1.1.1 as-number 100

[R2-bgp]peer 1.1.1.1 connect-interface LoopBack 0

[R2-bgp]quit

  1. 配置EBGP

R2的配置

[R2]bgp 100

[R2-bgp]peer 23.1.1.3 as-number 200  //EBGP用直连接口建邻居

R3的配置

[R3]bgp 200

[R3-bgp]undo synchronization

[R3-bgp]undo summary automatic

[R3-bgp]peer 23.1.1.2 as-number 100

[R3-bgp]quit

【技术要点】配置BGP对等体关系的建议

  • IBGP用环回口建邻居
  • EBGP用直连建邻居
  • 如果EBGP用环回口建邻居必须配置peer ebgp-max-hop命令

  1. 实验调试
  1. 查看TCP连接

<R1>display tcp status

TCPCB    Tid/Soid Local Add:port        Foreign Add:port      VPNID  State

1d322414 59 /1    0.0.0.0:23            0.0.0.0:0             -1     Listening

172ede3c 107/2    0.0.0.0:179           2.2.2.2:0             0      Listening

172ed4fc 107/36   1.1.1.1:179           2.2.2.2:65309         0      Established

通过以上可以看到,TCP连接是成功的

  1. 查看对等体的状态

<R1>display bgp peer

 BGP local router ID : 1.1.1.1    // BGP本地Router ID

 Local AS number : 100    //本地AS编号

 Total number of peers : 1                Peers in established state : 1

   //对等体总个数                                 //处于建立状态的对等体个数

  Peer            V          AS  MsgRcvd  MsgSent  OutQ  Up/Down       State PrefRcv

  2.2.2.2         4         100      146      147     0 02:24:44 Established       0

以上输出邻居表的各个字段的含义如下:

  • Peer:对等体的IP地址
  • V :对等体使用的BGP版本
  • AS:自治系统号
  • MsgRcvd:接收的信息统计数
  • MsgSent:发送的信息统计数
  • OutQ:等待发往指定对等体的消息
  • Up/Down:邻居关系建立的时间
  • State:邻居的状态
  • PrefRcv:本端从对等体上收到路由前缀的数目

(3)在R3上用network宣告的方式产生一条BGP路由、在R1上引入的方式产生一条BGP路由

R3 的配置

[R3]bgp 200

[R3-bgp]network 3.3.3.3 32

[R3-bgp]quit

R1的配置

[R1]bgp 100

[R1-bgp]import-route ospf 1

【技术要点】

BGP路由生成有三种方式:

  • Network
  • Import-route
  • 与IGP协议相同,BGP支持根据已有的路由条目进行聚合,生成聚合路由。

(4)在R1上查看路由表

[R1]display bgp routing-table

 BGP Local router ID is 1.1.1.1

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

 Total Number of Routes: 4

      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   1.1.1.1/32         0.0.0.0         0                     0      ?

 *>   2.2.2.2/32         0.0.0.0         1                     0      ?

   i  3.3.3.3/32         23.1.1.3        0          100        0      200i

 *>   12.1.1.0/24        0.0.0.0         0                     0      ?

以上输出中,路由条目表项的状态码解析如下:

  • *代表路由条目有效  
  • >代表路由条目最优,可以被传递,只有下一跳可达路由才会最优
  • i代表路由是从IBGP学到的
  • Networkw:显示BGP路由表中的网络地址
  •   NextHop:报文发送的下一跳地址
  •    MED  :路由度量值
  •    LocPrf  :本地优先级
  • PrefVal : 协议首选值
  • Path/Ogn:显示AS路径号及Origin属性

以上输出我们可以发现3.3.3.3不是最优的,如果不优就不会在加载进全局路由表,也不会传给其它路由器,本例不优的原因为下一跳不可达,解决办法如下:

R2的配置

[R2]bgp 100

[R2-bgp]peer 1.1.1.1 next-hop-local   //配置下一跳本地

[R2-bgp]quit

(5)再查看R1的路由表

[R1]display bgp routing-table

 BGP Local router ID is 1.1.1.1

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

 Total Number of Routes: 4

      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   1.1.1.1/32         0.0.0.0         0                     0      ?

 *>   2.2.2.2/32         0.0.0.0         1                     0      ?

 *>i  3.3.3.3/32         2.2.2.2         0          100        0      200i

 *>   12.1.1.0/24        0.0.0.0         0                     0      ?

【技术要点】

 什么情况下配置下一跳本地:

对从EBGP邻居收到的路由,在传给IBGP邻居时,修改下一跳地址为本地的connet interface。

(6)查看R2的BGP路由表

<R2>display bgp routing-table

 BGP Local router ID is 2.2.2.2

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

 Total Number of Routes: 4

      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

   i  1.1.1.1/32         1.1.1.1         0          100        0      ?

 *>i  2.2.2.2/32         1.1.1.1         1          100        0      ?

 *>   3.3.3.3/32         23.1.1.3        0                     0      200i

 *>i  12.1.1.0/24        1.1.1.1         0          100        0      ?

通过以上输出,我们可以发现1.1.1.1这条路由虽然下一跳可达,但是不是有效和最优的,其原因为:如果IGP表里面宣告了这条路由,然后再在IBGP里面,路由只能本地有效。

 

相关文章:

5.1配置IBGP和EBGP

5.2.1实验1&#xff1a;配置IBGP和EBGP 实验目的 熟悉IBGP和EBGP的应用场景掌握IBGP和EBGP的配置方法 实验拓扑 实验拓扑如图5-1所示&#xff1a; 图5-1&#xff1a;配置IBGP和EBGP 实验步骤 IP地址的配置 R1的配置 <Huawei>system-view Enter system view, return …...

c++中超级详细的一些知识,新手快来

目录 2.文章内容简介 3.理解虚函数表 3.1.多态与虚表 3.2.使用指针访问虚表 4.对象模型概述 4.1.简单对象模型 4.2.表格驱动模型 4.3.非继承下的C对象模型 5.继承下的C对象模型 5.1.单继承 5.2.多继承 5.2.1一般的多重继承&#xff08;非菱形继承&#xff09; 5.2…...

[答疑]经营困难时期谈建模和伪创新-长点心和长点良心

leonll 2022-11-26 9:53 我们今年真是太难了……&#xff08;此处删除若干字&#xff09;……去年底就想着邀请您来给我们讲课&#xff0c;现在也没有实行。我想再和我们老大提&#xff0c;您觉得怎么说个关键理由&#xff0c;这样的形势合适引进UML开发流程&#xff1f; UML…...

计算机基础知识

计算机网络的拓扑结构 一、OSI 7层网络模型是指什么&#xff1f; 7层分别是什么&#xff1f;每层的作用是什么&#xff1f; OSI7层模型是 国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。 每层功能:&#xff08;自底向上&#xff09; 物理层:建立、…...

Java爬虫—WebMagic

一&#xff0c;WebMagic介绍WebMagic企业开发&#xff0c;比HttpClient和JSoup更方便一&#xff09;&#xff0c;WebMagic架构介绍WebMagic有DownLoad&#xff0c;PageProcessor&#xff0c;Schedule&#xff0c;Pipeline四大组件&#xff0c;并有Spider将他们组织起来&#xf…...

[软件工程导论(第六版)]第2章 可行性研究(复习笔记)

文章目录2.1 可行性研究的任务2.2 可行性研究过程2.3 系统流程图2.4 数据流图概念2.5 数据字典2.6 成本/效益分析2.1 可行性研究的任务 可行性研究的目的 用最小的代价在尽可能短的时间内确定问题是否能够解决。 可行性研究的3个方面 &#xff08;1&#xff09;技术可行性&…...

Mac下安装Tomcat以及IDEA中的配置

安装brew 打开终端输入以下命令&#xff1a; /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 搜索tomcat版本&#xff0c;输入以下命令&#xff1a; brew search tomcat 安装自己想要的版本&#xff0c;例…...

【Linux详解】——文件基础(I/O、文件描述符、重定向、缓冲区)

&#x1f4d6; 前言&#xff1a;本期介绍文件基础I/O。 目录&#x1f552; 1. 文件回顾&#x1f558; 1.1 基本概念&#x1f558; 1.2 C语言文件操作&#x1f564; 1.2.1 概述&#x1f564; 1.2.2 实操&#x1f564; 1.2.3 OS接口open的使用&#xff08;比特位标记&#xff09;…...

HomMat2d

1.affine_trans_region&#xff08;区域的任意变换&#xff09; 2.hom_mat2d_identity&#xff08;创建二位变换矩阵&#xff09; 3.hom_mat2d_translate&#xff08;平移&#xff09; 4.hom_mat2d_scale&#xff08;缩放&#xff09; 5.hom_mat2d_rotate&#xff08;旋转 &…...

Python3 JSON 数据解析

Python3 JSON 数据解析 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。 Python3 中可以使用 json 模块来对 JSON 数据进行编解码&#xff0c;它包含了两个函数&#xff1a; json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。 在 json 的编解码…...

Homebrew 安装遇到的问题

Homebrew 安装遇到的问题 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 文章目录Homebrew 安装遇到的问题前言一、安装二、遇到的问题1.提示 zsh: command not found: brew三、解决问题前言 使用 Homebrew 能够 安装 Apple&#xff08;或您的 Linux 系统&#…...

Metasploit框架基础(二)

文章目录前言一、Meatsplooit的架构二、目录结构datadocumentationlibmodulesplugins三、Measploit模块四、Metasploit的使用前言 Metasploit是用ruby语言开发的&#xff0c;所以你打开软件目录&#xff0c;会发现很多.rb结尾的文件。ruby是一门OOP的语言。 一、Meatsplooit的…...

c++容器

1、vector容器 1.1性质 a&#xff09;该容器的数据结构和数组相似&#xff0c;被称为单端数组。 b&#xff09;在存储数据时不是在原有空间上往后拓展&#xff0c;而是找到一个新的空间&#xff0c;将原数据深拷贝到新空间&#xff0c;释放原空间。该过程被称为动态拓展。 vec…...

Vue.js如何实现对一千张图片进行分页加载?

目录 vue处理一千张图片进行分页加载 分页加载、懒加载---概念介绍&#xff1a; 思路&#xff1a; 开发过程中&#xff0c;如果后端一次性返回你1000多条图片或数据&#xff0c;那我们前端应该怎么用什么思路去更好的渲染呢&#xff1f; 第一种&#xff1a;我们可以使用分页…...

计算机网络复习(六)

考点&#xff1a;MIME及其编码&#xff08;base64,quoted-printable)网络协议http是基于什么协议&#xff0c;应用层到网络层基于什么协议6-27.试将数据 11001100 10000001 00111000 进行 base64 编码&#xff0c;并得到最后传输的 ASCII 数据。答&#xff1a;先将 24 比特的二…...

Redis进阶:布隆过滤器(Bloom Filter)及误判率数学推导

1 缘起 有一次偶然间听到有同事在说某个项目中使用了布隆过滤器&#xff0c; 哎呦&#xff0c;我去&#xff0c;我竟然不知道啥是布隆过滤器&#xff0c; 这我哪能忍&#xff1f;其实&#xff0c;也可以忍&#xff0c;但是&#xff0c;可能有的面试官不能忍&#xff01;&#…...

Java创建对象的方式

Java创建对象的五种方式&#xff1a; &#xff08;1&#xff09;使用new关键字 &#xff08;2&#xff09;使用Object类的clone方法 &#xff08;3&#xff09;使用Class类的newInstance方法 &#xff08;4&#xff09;使用Constructor类中的newInstance方法 &#xff08;5&am…...

dom基本操作

1、style修改样式 基本语法&#xff1a; 元素.style.样式’值‘ 注意: 1.修改样式通过style属性引出 2.如果属性有-连接符&#xff0c;需要转换为小驼峰命名法 3.赋值的时候&#xff0c;需要的时候不要忘记加css单位 4.后面的值必须是字符串 <div></div> // 1、…...

如何将python训练的XGBoost模型部署在C++环境推理

当前环境&#xff1a;Ubuntu&#xff0c;xgboost1.7.4过程介绍&#xff1a;首先用python训练XGBoost模型&#xff0c;在训练完成后注意使用xgb_model.save_model(checkpoint.model)进行模型的保存。找到xgboost的动态链接库和头文件动态链接库&#xff1a;如果你在conda环境下面…...

About Oracle Database Performance Method

bottleneck&#xff08;瓶颈&#xff09;&#xff1a; a point where resource contention is highest throughput(吞吐量)&#xff1a; the amount of work that can be completed in a specified time. response time (响应时间)&#xff1a; the time to complete a spec…...

5分钟终极指南:在Blender中完美导入Rhino 3dm文件的完整教程

5分钟终极指南&#xff1a;在Blender中完美导入Rhino 3dm文件的完整教程 【免费下载链接】import_3dm Blender importer script for Rhinoceros 3D files 项目地址: https://gitcode.com/gh_mirrors/im/import_3dm 你是否正在寻找一种简单、快速且免费的方法&#xff0c…...

嵌入式开发革命:LuatOS云编译实战指南与效率提升

1. 项目概述&#xff1a;为什么我们需要云编译&#xff1f;作为一名在嵌入式领域摸爬滚打了十多年的老鸟&#xff0c;我太懂那种“买板一时爽&#xff0c;环境火葬场”的痛了。尤其是这几年&#xff0c;合宙、乐鑫、兆易这些厂商的产品线越来越丰富&#xff0c;Air780E、ESP32-…...

Solon框架:微内核驱动的Java全栈云原生应用开发实践

1. 项目概述&#xff1a;从“微内核”到“全栈”的Java框架演进如果你在Java生态里摸爬滚打有些年头&#xff0c;肯定经历过从SSH&#xff08;StrutsSpringHibernate&#xff09;到SSM&#xff08;Spring MVCSpringMyBatis&#xff09;的架构变迁&#xff0c;也一定对Spring Bo…...

企业无线准入实战:AC联动RADIUS与内置Portal构建安全访客网络

1. 为什么企业需要安全访客网络&#xff1f; 想象一下这样的场景&#xff1a;你的公司经常有合作伙伴、客户来访&#xff0c;他们需要临时使用Wi-Fi。如果直接开放内部网络&#xff0c;就像把家门钥匙随便发给陌生人&#xff1b;如果用简单密码共享&#xff0c;又像在公共场合大…...

告别命令行!用Python脚本批量管理Docker容器和镜像的实战技巧

告别命令行&#xff01;用Python脚本批量管理Docker容器和镜像的实战技巧 在DevOps和云原生技术快速发展的今天&#xff0c;Docker已经成为现代应用部署的标准工具。然而&#xff0c;随着容器数量的增加和部署频率的提高&#xff0c;手动通过命令行管理Docker容器和镜像变得越来…...

高危场所专用防爆门 符合建筑消防标准

在化工车间、危险品仓库、油气厂区、锅炉房、粉尘车间等高危作业场所&#xff0c;爆炸、明火、冲击波隐患时刻存在&#xff0c;普通门窗无法起到安全防护作用&#xff0c;高危场所专用防爆门成为场地安防必备设施。 这款专业防爆门严格遵循国家建筑消防规范生产制造&#xff0…...

Chrome QRCode插件终极指南:如何在3分钟内实现跨设备无缝内容同步

Chrome QRCode插件终极指南&#xff1a;如何在3分钟内实现跨设备无缝内容同步 【免费下载链接】chrome-qrcode :zap: A Chrome plugin to Genrate QRCode of URL / Text, or Decode the QRcode in website. 一个Chrome浏览器插件&#xff0c;用于生成当前URL或者选中内容的二维…...

工业级大模型学习之路012:RAG 零基础入门教程(第七篇):高级检索架构(解决分块不合理问题)

一、为什么分块是 RAG 的 "原罪"1.1 固定大小分块的三大致命缺陷现在使用的固定大小分块&#xff08;如 512token / 块&#xff09;是最简单也是最常用的分块方法&#xff0c;但它存在三个无法解决的根本性问题&#xff0c;这也是 90% 的 RAG 系统回答质量差的根源。…...

电赛信号分析不止于FFT:用STM32F407的ADC-DMA与加窗技术提升THD测量稳定性的实操指南

电赛信号分析进阶&#xff1a;STM32F407的ADC-DMA与加窗技术实战 在电子设计竞赛的信号分析环节&#xff0c;许多队伍止步于基础的FFT实现&#xff0c;却忽略了采样质量与频谱处理对THD&#xff08;总谐波失真&#xff09;测量结果的深远影响。当你的系统已经能够输出波形和基础…...

ngx_http_read_request_header

1 定义 ngx_http_read_request_header 函数 定义在 ./nginx-1.24.0/src/http/ngx_http_request.cstatic ssize_t ngx_http_read_request_header(ngx_http_request_t *r) {ssize_t n;ngx_event_t *rev;ngx_connection_t *c;ngx_http_…...