IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 网络基础(十五)-----BGP -> 正文阅读

[网络协议]网络基础(十五)-----BGP

一.动态路由协议的划分:

算法类:

1.距离矢量型(传输路由表)------RIP、EIGRP(收敛最快)

2.链路状态型(传输拓补信息LSA)----OSPF、ISIS

3.路径矢量型----(传输路径信息)BGP

AS范围类:

1.IGP----内部网关协议

2.EGP-----边界网关协议------->内外互联的中间处理

二.BGP

1.区分号AS:1-65535 ?64512-65535私有AS ?????AS号扩展2^16---->处理AS号不足

2.特点

  1. 可以跨跳建立邻居关系
  2. 强调路由传递控制的一种协议 ? ( 控制:1.路由学习的选择性2.选路控制)
  3. 手动建立邻居关系
  4. BGP有多种路由属性

(一)BGP邻居关系建立与配置

1.BGP的建邻:

BGP是通过TCP协议建立邻居。端口号:179----单播

2.邻居类型:

IBGP邻居----AS内部建立的BGP邻居,邻居路由器的AS号是一致的

EBGP邻居----AS之间建立BGP邻居,邻居路由器的AS号不同

一般情况下,BGP的EBGP建邻会使用直连建立,IBGP建邻会使用回环建邻;如果用回环建立EBGP邻居需要修改建邻跳数。

(二)BGP数据包与状态机(只有触发更新,无周期更新)

Open报文----初始化对等路由间的通信

Keep alive报文----保活包-----测试与对等路由器的连接性

Update报文------更新包-------更新路由以及撤销路由,BGP更新速度慢

Route-refresh报文-----路由刷新包

Notification报文-----错误包-----对不正确的BGP报文的通知

(三)BGP路由生成

1.Network命令是逐条将IP路由表中已经存在的路由引入到BGP路由表中

掩码宣告,必须和路由表中路由掩码对应,否则宣告不进去

2.Import命令是根据运行的路由协议将路由引入到BGP路由表中,同时import命令还可以引入直连和静态路由

(四)BGP路由学习:

原则一:仅将自己最优的路由信息发布给邻居

原则二:通过EBGP获得的最优路由发布给所有BGP邻居

原则:通过IGBP获得的最优路由不会发布给其他的IBGP邻居(IBGP之间不能中转路由)-----为了防环(水平分割

原则四:BGP与IGP同步-----BGP会查看自身路由有没有重发布到IGP中,如果有就是同步,没有就不同步(不同步的路由在BGP中不优)

??????? 路由黑洞问题

????????????????A:BGP全互联----在黑洞路由器上配置BGP并且与其他BGP路由器建立邻居关系

????????????????B:重发布---把BGP路由引入到IBGP-----BGP与IGP同步

????????????????C:mpls做隧道

原则:IBGP之间传递路由时,路由的下一跳不变(peer 10.4.4.4 next-hop-local)

原则六:EBGP之间传递路由时路由的下一跳会修改自己的更新地址(建邻地址)

(五)BGP的路由更新:

本地路由(BGP-RIB)---->过滤---->出向BGP-RIB--->update--->邻居的入向BGP-RIB---->过滤---->邻居的本地BGP-RIB

(六)BGP的过滤:

1.使用前缀列表进行过滤

bgp 100
router-id 1.1.1.1
peer 10.1.13.2 as-number 300
#
ipv4-family unicast
undo synchronization
network 30.1.1.1 255.255.255.255
network 100.1.1.1 255.255.255.255
network 100.2.2.2 255.255.255.255
network 100.3.3.3 255.255.255.255
peer 10.1.13.2 enable
peer 10.1.13.2 ip-prefix 3 export
#
ip ip-prefix 3 index 10 deny 100.3.3.3 32
ip ip-prefix 3 index 20 permit 0.0.0.0 0 less-equal 32

2.使用route-policy实现过滤

bgp 300
router-id 4.4.4.4
peer 10.1.24.1 as-number 200
peer 10.3.3.3 as-number 300
peer 10.3.3.3 connect-interface LoopBack0
#
ipv4-family unicast
undo synchronization
network 20.4.4.4 255.255.255.255
import-route direct route-policy direct
peer 10.1.24.1 enable
peer 10.1.24.1 route-policy 2 export
peer 10.3.3.3 enable
peer 10.3.3.3 next-hop-local
route-policy 2 deny node 10
if-match ip-prefix 3
# route-policy 2 permit node 20
#
ip ip-prefix 3 index 10 permit 100.2.2.2 32

(七)BGP的属性:

1.公认属性

  • 是公认所有BGP实现都必须识别的属性,这些属性被传递给BGP邻居。

  • 公认强制属性必须出现在路由描述中,公认自由决定属性可以不出现在路由描述中。

  • 1.公认必遵(Well-Known Mandatory)

  • ORIGIN(起源):这个属性说明了源路由是怎样放到BGP表中的。有三个可能的源IGP,EGP,以及INCOMPLETE.路由器在多个路由选择的处理中使用这个信息。路由器选择具有最低ORIGIN类型的路径。

    AS_PATH(AS路径):指出包含在UPDATE报文中的路由信息所经过的自治系统的序列。

    Next_HOP(下一跳)声明路由器所获得的BGP路由的下一跳,对EBGP会话来说,下一跳就是通告该路由的邻居路由器的源地址。

    1.公认自决(Well-Known Discretionary)

    LOCAL_PREF(本地优先级):本地优先级属性是用于告诉自治系统内的路由器在有多条路径的时候,怎样离开自治系统。本地优先级越高,路由优先级越高。

    ATOMIC_AGGREGATE(原子聚合):原子聚合属性指出已被丢失了的信息。

2.可选属性

  • 非公认属性被称为可选的,可选属性可以是传递的或非传递的。

  • 可选属性不要求所有的BGP实现都支持。

  • 对于不支持的可选传递属性,路由器将其原封不动的传递给其他BGP路由器,在这种情况下,属性被标记为部分的。

  • 对于可选非传递属性,路由器必须将其删除,而不将其传递给其他BGP路由器。

1.可选过渡(Optional Transitive)

AGGREGATOR(聚合者):此属性标明了实施路由聚合的BGP路由器ID和聚合路由的路由器的AS号。

COMMUNITY(团体):此属性指共享一个公共属性的一组路由器。

2.可选非过渡(Optional Nontransitive)

MED(多出口区分):该属性通知AS以外的路由器采用哪一条路径到达AS,它也被认为是路由的外部度量,低MED值表示高的优先级。

ORIGINATOR_ID(起源ID):路由反射器会附加到这个属性上,它携带本AS路由器的路由器ID,用以防止环路。

CLUSTER_LIST(簇列表):此属性显示了采用的反射路径。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-12 23:49:56  更:2021-10-12 23:53:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年6日历 -2024/6/29 19:48:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码