一、GRE、MGRE

GRE隧道 两台Linux机器 gre隧道配置命令_OSPF

 

连接两条私网:

1、物理专线---(1)成本 (2)地理位置限制

VPN(虚拟专用网)技术的核心叫隧道技术,隧道技术的核心是封装技术

GRE(通用路由封装):是一种封装技术

2、隧道技术:在隧道的两端通过封装以及解封装在公网中建立一条公网通道,然后使用这条数据通道进行传输。

GRE配置方法:

(1)创建隧道接口

[r1]interface Tunnel 0/0/0

[r1-Tunnel0/0/0]

(2)接口配置IP地址

[r1-Tunnel0/0/0]ip address 192.168.3.1 24

(3)定义封装方式

[r1-Tunnel0/0/0]tunnel-protocol gre

(4)定义封装内容

[r1-Tunnel0/0/0]source 12.0.0.1

[r1-Tunnel0/0/0]destination 23.0.0.2

3、NHRP(下一跳解析协议):服务器叫NHS(下一跳解析服务器)

原理:需要在私网中选择一个出口物理地址固定的设备作为NHS,剩下的所有分支都应该知道中心的隧道地址和物理地址,然后NHRP要求所有分支将自己物理接口和隧道接口的IP地址的映射关系发送给NHS,如果物理地址发生变化,则需要重新发送。这样NHS可以获取到所有分支地址的映射关系。分支之间如果需要相互通信,则需要向中心申请获取映射关系表。这种架构我们称为hub-spoke架构。

MGRE的配置

中心的配置

(1)创建隧道接口

[r1]interface Tunnel 0/0/0

[r1-Tunnel0/0/0]

(2)接口配置IP地址

[r1-Tunnel0/0/0]ip address 192.168.3.1 24

(3)定义封装方式

[r1-Tunnel0/0/0]tunnel-protocol gre p2mp

(4)定义封装内容

[r1-Tunnel0/0/0]source 15.0.0.1

(5)创建NHRP域

[r1-Tunnel0/0/0]nhrp network-id 100

分支的配置:

(1)创建隧道接口

[r1]interface Tunnel 0/0/0

[r1-Tunnel0/0/0]

(2)接口配置IP地址

[r1-Tunnel0/0/0]ip address 192.168.3.1 24

(3)定义封装方式

[r1-Tunnel0/0/0]tunnel-protocol gre p2mp

(4)定义封装内容

[r2-Tunnel0/0/0]source GigabitEthernet 0/0/1

(5)加入到中心创建的NHRP域中

[r2-Tunnel0/0/0]nhrp network-id 100

(6)上报信息到中心

[r2-Tunnel0/0/0]nhrp entry 192.168.5.1 15.0.0.1 register

隧道地址      物理接口地址

[r1-Tunnel0/0/0]display nhrp peer all---查看NHRP邻居的注册情况

MGRP环境在数据发送时,依旧是走的点到点的隧道,所以在数据传输时依然是点到点的传输。所以MGRE环境是一个类似于NBMA的环境。

4、RIP实现MGRE环境遇到的问题:

(1)只有中心获取到了分支的路由信息,而分支没有获取到。

在中心上开启伪广播

[r1-Tunnel0/0/0]nhrp entry multicast dynamic

(2)中心开启伪广播后,分支只能收到中心的路由信息,但没有分支的。

原因:RIP的水平分割机制

解决方法:[r1-Tunnel0/0/0]undo rip split-horizon----关闭RIP的水平分割

二、OSPF(开放式最短路径优先协议)

1、选路佳,收敛快,占用资源少

RIP的版本---RIPV1,RIPV2----IPV4

    RIPNG----IPV6

OSPF的版本---ospfv1(实验室阶段夭折),ospfv2----IPV4

       ospfv3----IPV6

2、RIPV2和OSPFV2的相同点:

(1)RIPV2(224.0.0.9)和OSPFV2(224.0.0.5,224.0.0.6)都是以组播的形式发送信息的。----224.0.0.X的组播地址----本地链路组播----TTL设置为1

(2)RIPV2和OSPFV2都被称为无类别的路由协议。

(3)RIPV2和OSPFV2都支持手工认证

(4)RIPV2和OSPFV2都支持等开销负载均衡

3、RIP和OSPF的区别点:

(1)RIP只能应用于小型网络当中,OSPF可以适用于大型网络当中。(由于OSPF支持结构化部署)----区域划分,目的:区域内部传递拓扑信息,区域之间传递路由信息。

OSPF网络如果只有一个区域,则这样的网络称为单区域OSPF,如果存在多个区域,则称为多区域OSPF网络。

区域边界路由器(ABR):同时属于多个区域,一个接口对应一个区域,并且有一个接口在区域0中。

区域之间可以存在多个ABR设备,一个ABR也可以对应多个区域。

区域划分的要求:

(1)区域之间必须存在ABR设备

(2)区域划分必须按照星型拓扑划分,星型拓扑中间区域称为骨干区域。

区域ID(area ID):区分和标定OSPF网络中不同的区域,32位二进制构成

表达方式:①点分十进制表示 ②直接使用十进制表示

骨干区域的区域ID定义为区域0

1、OSPF的数据包

hello包---周期发现,建立和保活邻居关系

hello时间---10s(30s)

Dead time---4倍的hello时间

route-id(RID)---①全网唯一 ②格式统一

(必须按照IP地址的格式进行设计,由32位二进制构成)

(1)手工配置----仅需满足以上两个条件即可

(2)自动生成----①先看设备是否配置环回接口,如果存在,则选择环回接口的IP 地址作为RID;如果存在多个环回接口,则将选择其中数值最大 的作为RID。

            ②如果不存在环回接口,则将取设备的物理接口的IP地址作为 RID,如果存在多个物理接口,则将选择其中数值最大的作为RID。

DBD包---数据库描述报文----LSDB(链路状态数据库)---LSA(链路状态通告)

LSR包---链路状态请求报文---根据DBD包的比对,基于本地未知的LSA信息发出请求。

LSU包---链路状态更新报文---真正携带LSA信息的数据包

LSAck包---链路状态确认报文

OSPF存在30min一次的周期更新。

2、OSPF的状态机

GRE隧道 两台Linux机器 gre隧道配置命令_GRE隧道 两台Linux机器_02

 

TWO-WAY---标志着邻居关系的建立

(条件匹配)匹配成功则可以进入到下一个状态,如果失败,则将停留在邻居关系,仅使用Hello包进行周期保活。

GRE隧道 两台Linux机器 gre隧道配置命令_链路_03

 

主从关系选举---通过比较RID来进行,RID大的为主,为主可以优先进入到下一个状态。这里使用DBD包来完成主从关系选举主要为了和之前的邻居状态进行区分。

GRE隧道 两台Linux机器 gre隧道配置命令_OSPF_04

 

FULL状态---标志着邻接关系的建立,目的是为了和邻居状态进行区分。邻居状态只能使用hello包进行周期保活,而邻接状态才能收发LSA信息。

down状态---启动ospf之后,发出hello包进入到下一个状态。

init(初始化)状态:收到Hello包中包含本地RID,则进入到下一个状态。

Two-way(双向通信)状态:标志着邻居关系的建立

(条件匹配)匹配失败,则将停留在邻居关系,仅使用Hello包进行周期保活;匹配成功则进入下一个状态。

exstart(预启动)状态:使用未携带数据的DBD包进行主从关系选举,RID大的为主,为主可以优先进入下一个状态。

exchange(准交换)状态:使用携带目录信息的DBD包进行目录共享。

loading(加载)状态:基于对端发送的DBD包,使用LSR/LSU/LSACK三种数据包获取未知LSA信息。

FULL状态:标志着邻接关系的建立。

3、OSPF的工作过程

启动配置完成后,ospf将向本地所有运行协议的接口以组播224.0.0.5的形式发送hello包;hello包中会携带自己本地的RID和本地已知邻居的RID;之后,将收集到的邻居关系记录在本地的一张表中---邻居表。

邻居关系建立完成之后,将进行条件匹配。失败,则停留在邻居关系,仅使用hello包进行周期保活;

匹配成功则开始建立邻接关系。首先,使用未携带数据的DBD包共享数据库目录信息。之后,本地使用LSR/LSU/LSACK三种数据包获取未知的LSA信息。之后,完成本地数据库的建立,生成数据库表---LSDB

最后,基于本地链路状态数据库中的LSA信息,生成有向图及最短路径树,之后,计算出本地到达未知网段的路由信息。将这些路由信息添加到---路由表。

收敛完成后,ospf依然会每隔10s(30s)发送hello包进行周期保活;每隔30min进行一次周期更新。

结构突变的情况:

①新增一个网段---触发更新,第一时间将变更信息通过LSU包传递出去,需要ACK确认。

②断开一个网段---触发更新,第一时间将变更信息通过LSU包传递出去,需要ACK确认。

③无法通信---dead time

4、OSPF的基础配置

(1)启动ospf进程

[r1]ospf 1 route-id 1.1.1.1

[r1-ospf-1]

创建区域
[r1-ospf-1]area 0

[r1-ospf-1-area-0.0.0.0]

宣告
①激活接口

②发布路由

[r1-ospf-1-area-0.0.0.0]network 12.0.0.1 0.0.0.0---反掩码---由连续的0和连续的1组成,0 对应位不可变,1对应位可变---可以进行精准宣告,也可以进行范围宣告

[r1]display ospf peer---查看ospf的邻居表

[r1]display ospf peer brief---查看邻居关系简表

[r1]display ospf lsdb---查看数据库表

[r1]display ospf lsdb router 2.2.2.2---展开一条LSA信息

华为设备定义ospf协议的默认优先级为10

COST=参考带宽/真实带宽---华为设备默认的参考带宽为100Mbps---开销值如果是个小于1的小数,则直接按照1来算;如果是大于1的小数,则直接取整数部分。

[r1-ospf-1]bandwidth-reference 1000---修改参考带宽需要将所有OSPF网络中的设备都改成相同的。