乾颐堂军哥HCIE8-BGP工作原理以及更新机制(含下一跳解析)[通俗易懂]

乾颐堂军哥HCIE8-BGP工作原理以及更新机制(含下一跳解析)

大家好,又见面了,我是全栈君。

BGP(规则)乾颐堂军哥HCIE8-BGP工作原理以及更新机制(含下一跳解析)
1.BGP基本的工作机制

dis bgp routing //验证BGP路由的手段
<R1>dis ip routing-table protocol bgp //目的是通过BGP更新路由
已经在AS内部存在了IGP,为什么还要使用iBGP呢? 逐跳转发、BGP黑洞、路由操控
构建环回接口来建立iBGP邻居的前提条件:源目IP可达
[R1-bgp]ping -a 11.1.1.1 15.15.15.15
PING 15.15.15.15: 56 data bytes, press CTRL_C to break
Reply from 15.15.15.15: bytes=56 Sequence=1 ttl=254 time=30 ms
Reply from 15.15.15.15: bytes=56 Sequence=2 ttl=254 time=50 ms
R1:
bgp 10
peer 10.1.12.2 as-number 20
peer 15.15.15.15 as-number 10
peer 15.15.15.15 connect-interface LoopBack0
SW3:
[SW3-bgp]dis th
#
bgp 10
peer 11.1.1.1 as-number 10
peer 11.1.1.1 connect-interface LoopBack0 //指定本端的去建立TCP连接的源IP地址
验证邻居关系:
[SW3-bgp]display bgp peer

BGP local router ID : 10.1.15.3
Local AS number : 10
Total number of peers : 1 Peers in established state : 1

Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv

11.1.1.1 4 10 3 3 0 00:00:33 Established 1

采用非直连的方式构建eBGP邻居关系
备份
eBGP报文中的TTL=1,所以需要修改TTL
bgp 60
peer 55.1.1.1 as-number 345
peer 55.1.1.1 ebgp-max-hop 255 //修改ebgp报文的TTL为255,
peer 55.1.1.1 connect-interface LoopBack0 //使用环回接口0作为建立TCP会话的源地址

2.BGP的报文类型
先建立TCP链接,之后再发送BGP的报文
OPEN(扩展能力:多协议BGP的能力、路由刷新能力、4字节AS号码的能力)
Keepalive ([R6-bgp]timer keepalive 50 hold 150 //针对所有邻居 ;[R6-bgp]peer 55.1.1.1 timer keepalive 40 hold 120 //针对某个邻居做出参数修改 )
UPdate,承载NLRI(网络层可达信息,即路由条目属性,公认必遵属性:1.起源(出身i,e和?);2.as-path;3.下一跳)
Notification
Route-refresh,(<R6>refresh bgp all import //发出去该种报文,请求对端发送更新-update报文给本端,import才会触发route-refresh报文)
3.BGP的邻居状态机
6种状态
IDLE
connect
active
opensent
openconfirm
est

常见的问题:指定的错误的邻居AS;指定了错误的邻居的地址;没有到达对端源地址的路由;本设备指定了错误的源地址;认证错误
为什么R1和R2之间没有指定“连接接口呢”
从邻居处得到bgp表(dis bgp routing)–过滤、策略,选出最优的路由–全局路由表(dis ip rou)
4.BGP路由的更新(通告)原则
4.1
BGP仅仅向邻居通告最优的路由;如果存在多路径(没有开启负载均衡的情况下),BGP选取最优的放入路由表
[R5]dis bgp routing-table peer 44.1.1.1 advertised-routes

BGP Local router ID is 10.1.35.5
Status codes: * – valid, > – best, d – damped,
h – history, i – internal, s – suppressed, S – Stale
Origin : i – IGP, e – EGP, ? – incomplete

Total Number of Routes: 3
Network NextHop MED LocPrf PrefVal Path/Ogn

> 5.5.5.5/32 55.1.1.1 0 100 0 i
> 6.6.6.6/32 66.1.1.1 0 100 0 60i
*> 55.1.1.1/32 55.1.1.1 0 100 0 i
[R5]
4.2
从ebgp邻居得到的路由会向所有的BGP邻居通告(ibgp和ebgp),除了得到该路由的eBGP邻居(水平分割)
下一跳的议题,下一跳在bgp中指到达其他AS的一个转发地址
1)iBGP环境下的下一跳
BGP路由最优的2个基本条件:A 下一跳可达性 B 同步关闭
[R1-bgp]peer 15.15.15.15 next-hop-local //从ebgp邻居处得到的路由,更新给ibgp邻居,会保持原来的下一跳(会导致下一跳不可达),ASBR针对ibgp邻居修改下一跳为本设备
[SW3]dis bgp routing-table

BGP Local router ID is 10.1.15.3
Status codes: * – valid, > – best, d – damped,
h – history, i – internal, s – suppressed, S – Stale
Origin : i – IGP, e – EGP, ? – incomplete

Total Number of Routes: 3
Network NextHop MED LocPrf PrefVal Path/Ogn

>i 5.5.5.5/32 11.1.1.1 100 0 20 345i
>i 6.6.6.6/32 11.1.1.1 100 0 20 345 60i
*>i 22.1.1.1/32 11.1.1.1 0 100 0 20i
2)eBGP多跳环境下的下一跳
3)多点接入网络环境的下一跳
BGP自动优化多点接入网络的下一跳(类似OSPF的转发地址技术)
在SW3和R5之间新建一个ebgp邻居
<R2>tracert 5.5.5.5
traceroute to 5.5.5.5(5.5.5.5), max hops: 30 ,packet length: 40,press CTRL_C to break
1 10.1.12.1 40 ms 10 ms 20 ms
2 10.1.15.5 60 ms 40 ms 30 ms
和重定向没有关系(ICMP重定向要经过报文触发)
4)RR(路由反射器)情况下的下一跳
敬请期待
4.3 iBGP的防环机制
从ibgp邻居处得到的iBGP路由不会再更新给iBGP邻居(铁公鸡,ibgp路由更新一跳-指一个ibgp邻居)
造成路由黑洞(由于某些设备没有运行bgp,而导致该设备缺少路由,而IP转发是逐跳转发)
解决方案:设备之间两两互联(所有设备都存在邻居关系)

作业:
1.在R1、R5和SW3之间观察MA网络的bgp下一跳自动优化,主要看R1到R5的路由
之后拿掉SW3和R5的邻居
2)构建ebgp邻居以及配置下一跳本地:
eBGP:2+4;1+2;5+6
iBGP:4+5;1+SW3
下一跳本地:R1\R5\R4

转载于:https://blog.51cto.com/enderjoe/2058348

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107769.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ant-design-pro Login 组件 实现 rules 验证「建议收藏」

    ant-design-pro Login 组件 实现 rules 验证「建议收藏」ant-design-pro Login 组件 实现 rules 验证

    2022年4月20日
    204
  • 电磁场与电磁波实验三 熟悉Mathematica软件在电磁场领域的应用

    电磁场与电磁波实验三 熟悉Mathematica软件在电磁场领域的应用假设一个铜环(或其他导电环)放在电磁铁的一极上。当电流接通时(如图中红色的电路颜色所示),环会飞离磁铁。随时间变化的磁场会在环内产生循环电流。这将不会发生,如果一个径向狭缝是通过环,从而防止任何电流循环。为了可视化,这个动作是用慢动作来显示的,圆盘在落回地面之前是停在半空中的。此demo展示了电偶极子或赫兹偶极子的电磁场、电场和磁场,相关的能量密度和坡印廷矢量分布。此demo可以改变直流或静态偶极场的偶极矩、频率和时间。该模型显示了极化正弦波的垂直电、磁分量。五、赫兹偶极子的电磁场。微信公众号创享日记。..

    2025年7月7日
    0
  • 基于cesuim三维框架开发的三维路径分析的实现「建议收藏」

    基于cesuim三维框架开发的三维路径分析的实现「建议收藏」1、可以利用百度地图web服务或者天地图web服务,得到二维的路径分析的经纬度;2、利用cesuim地形数据采样接口:sampleTerrain得到高程,然后就有了三维路径分析的坐标信息;3、然后利用画线的接口,就能完成路径分析;记录一下sanpleTerrain的用法://QuerytheterrainheightoftwoCartographicpositionsva…

    2022年8月24日
    3
  • C# 中 Struct 与 Class 的区别,以及两者的适用场合

    C# 中 Struct 与 Class 的区别,以及两者的适用场合

    2021年7月30日
    54
  • c语言背包问题(动态规划解法)

    c语言背包问题(动态规划解法)题目描述:有若干个物品要装进背包,并且每个物品有各自的价值,物品的数量、价值以及背包的容量由用户输入,求背包内能够存入的最大价值为多少,并且求出此时放入了哪些物品输入格式:第一行输入物品的容量r和物品个数n第二行输入每个物品的重量第三行输入每个物品的价值输出格式:第一行输出背包中能够存储的最大价值第二行输出此时背包中的物品编号思路分析:可以把这个问题看成是一个二维数组,行是物品编号,列是背包容量,若物品编号为2,背包容量为4,代表的则是当背包容量为..

    2022年7月14日
    15
  • C++ – 容器(container)的erase()函数

    C++ – 容器(container)的erase()函数

    2021年12月2日
    53

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号