2016-08-14-OSPFv2-2

2016-08-17-OSPF-2

帧中继环境

Hub-and-spoke,帧中继默认不转发组播报文。

首先让帧中继环境下能正常通信(DLCI映射表),然后让帧中继接口能产生组播hello或者单播hello;组播hello则再要让底层帧中继环境能转发组播报文,最后组播hello需要双方的hello时间一致、修改一方hello时间;单播不再阐述。

R(config-if)#encapsulateionframe-relay(配置封装格式,默认动态获取)

R(config-if)#frame-relaymap ip host 帧中继号broadcast(静态配置,broadcast参数表示可以支持转发组播报文)

ip ospf networkbroadcast  //修改接口网络类型

frame-relay mapip 192.168.1.3 203 broadcast  //做DLCI封装表,去往IP地址192.168.1.3使用DLCI标签203;手动静态映射(帧中继路由)

no frame-relayinverse-arp(关闭DLCI动态映射学习,静态配置更加稳定)

show frame-relaymap  //查看映射表

帧中继没有建立邻居的原因

①   OSPF路由器没有产生组播hello

②   OSPF路由器产生组播hello,但是底层环境不能转发组播报文

③   底层可以根据DLCI转发,可能是网络类型导致的hello时间间隔不匹配

Ⅰ组播报文不能实现,可以手动修改成单播指邻居

ⅡOSPF在帧中继环境中是希望建立邻居关系的。如果某一台路由器收到组播的hello包,则会记住邻居的源IP地址,会以hello的时间间隔发送单播报文给邻居,以维持邻居关系。(就是一方修改,另一方不修改;前提是OSPF头部匹配)

★组播Hello包的TTL=1,而DBD的TTL=1(除P2P是组播外,其他网络类型都是单播形式)。在虚链路的情况下,单播hello和单播DBD的TTL=255;因为做了虚链路的两端路由器并不知道对方和我隔了多远,所以设置成255保证包可以到达对方。

★Exstart状态的1%的情况,在帧中继环境下,一方DLCI值有误(例如:R1去R2和R1去R3的DLCI对调了,而R2去R3没有错误),则R1组播发送hello包给R2的时候,会添加上DLCI;帧中继会查看识别DLCI值后转发给R3,由于R3又有去R2的路径,通过Hello包的(TTL-1)并转发给R2路由器。但是在建立邻居关系之后,DR和BDR选举主从路由器的时候,会发送空的DBD包,然而会像转发hello包的情况下,会先发送给R2让R2转发,但是DBD的TTL=1,所以(TTL-1)之后默认TTL=0不发送出去,直接丢包;所以DR、BDR一直建立不起主从路由器的关系,一直处于Exstart状态。

★Exstart状态的99%的情况,双方之间的MTU不匹配,从路由器一方可能会处于Exchange状态,主路由器一方会处于Exstart状态;或者主从路由器都处于Exstart状态。(从路由器收到主路由器的空的DBD包的时候,会自动对比RID的大小;而此后发送的DBD包就带有LSA摘要了,所以从路由器默认发送了DBD包,认为自己处于Exchange状态。)

※EXP5:测试Exstart的1%的情况???(√)

DR、BDR设置优先级为0表示放弃该身份,自动生效;如果是DRother设置优先级为255,则要重启OSPF进程。

★OSPF的死亡时间默认是hello时间的4倍

ip  ospf dead-interval  minimum  hello-multicast  20 //最小的OSPF的hello时间,表示一秒发送20个报文(即hello时间为50ms)

Forwarding address

用于防止次优路径(在5类和7类LSA中出现)

FA是ASBR通告的外部LSA中的字段,它的作用是告诉OSPF域内的路由器如何能够更快捷地到达LSA 5所通告路由的下一跳地址。以免OSPF 内部路由器在广播网络上以ASBR为下一跳,再由ASBR自己转发到正确的下一跳,而产生额外的路由。简单来说,FA字段的作用类似于BGP协议中的“第三方下一跳”概念,主要在广播共享网络中起作用。FA字段可以为全0或者非0两种选择。

FR是如何影响OSPF的路由选择的?

1、计算外部路由时,首先检查通告TYPE 5 LSA的ASBR是否存在,否则忽略该LSA;

2、检查TYPE 5 LSA的FA地址是否为0。如为0,说明路由必须经过ASBR转发,那么优选到ASBR metric最短的路径。

3、如果FA非0,那么优选到FA地址 metric最短的路径。

 

⑴   一般情况下5类LSA的FA地址为0.0.0.0

 

①   当FA地址全为0时,去往外部路由条目直接找ASBR

a)    同个区域直接找,不同区域通过4类LSA找ASBR位置;

b)    在NSSA区域的ABR上开启了FA地址抑制功能,则在7类转5类LSA的时候FA地址也全为0;(只有在ABR上配置有效)

area 1 nssa translate type7 suppress-fa  //ABR配置FA地址抑制

②   当FA地址不为0时,去往外部路由条目找FA地址。

a)    且要求FA地址可以通过O或者O IA或者是直连该条目被自己通告进OSPF)的路由可达

b)    如果FA地址不能通过O或者O IA 或者直连的路由可达,而是更为精确的可达性路径(比如通过静态去往FA地址,由于查找覆盖了O的条目),则属于该FA地址的所有5类LSA都将只出现在数据库中但不会出现在路由表中;

c)    如果FA地址本身就不可达,那么外部条目O E1和O E2也不会出现在路由表中;

d)    FA地址不全为0的条件:(FA=x.x.x.x,即数据不需要经过ASBR路由器转发)

i.         在ASBR上,与外部相连的出接口必须通告进OSPF路由进程,也就是可以算作别的路由器O或者O IA的条目,即位于Network命令范围内;(√)

ii.         在ASBR上,与外部网络相连的出接口不能设置为被动接口;

//前两个规则是确保LSA能够被通告。

iii.         在ASBR上,与外部相连的出接口的OSPF网络类型不能是P2P或者P2MP(因为点到点链路不会出现次优路径)。

//确保网络类型是Broadcast或NBMA 的共享网络。

→注:5类LSA的FA地址一般是ASBR去往目标网段的下一跳地址。

⑵   7类LSA的FA地址一定不为0.0.0.0

 

★当NSSA区域有多个的连接骨干区域的ABR路由器,只有RID更大的路由器会进行7类LSA转5类LSA,RID小的路由器不会进行7类转5类。

 

①   NSSA区域有多个ABR时,会进行7类LSA转5类LSA只会由最大的RID的路由器去转发,所以很有可能产生次优路径;为了避免这种情况,所以每个7类LSA都会生成FA地址,地址一般为ASBR上最后一个通告进OSPF的接口。那么一般推荐如果发现可能有次优路径的环境,会在ASBR上新加一个lookback口且最后通告进OSPF用来作为7类LSA的FA地址。

→注:lookback最后一个通告的比物理接口通告的优先级更高。

Ⅰ有环回口,优先选择最后通告的回环口地址;

Ⅱ没有环回口,选择最后通告的活动的物理接口地址。

②   特例:如果产生7类LSA的ASBR也满足产生5类LSA的FA地址规则,即连接外部路由的接口被通告进OSPF且没有被配置成被动接口,而且接口网络类型为多路访问,那么此时7类LSA的FA地址生成的方式和5类LSA一致,为外部路由下一跳的地址。

→注:7类LSA的FA地址一般是ASBR最后通告的OSPF接口地址;或者在满足5类FA地址规则时,为ASBR去往目标网段的下一跳地址(5类FA地址产生规则比7类LSA更优)。

前缀抑制功能

路由器互联的前缀抑制。

在router ospf 1这样的ospfv2进程内,如果配置了OSPF前缀抑制功能,能对本台设备产生的1类LSA的stub link是有影响的,会使自己点对点网络类型(stub network)的接口网段不在1类LSA内通告(而对lookback接口无影响),只会表示自己的点到点对端邻居的接口信息;但是prefix-suppression对transit network不会产生影响。

也会对本台设备产生的2类LSA(用来搭建网络拓扑)有影响,使得2类LSA的掩码长度变成32位;虽然这个2类LSA能够被传递出去,但是不会用来进行路由计算,使得这个2类LSA不可用。

→注:所以推测最终结果是:前缀抑制功能使得路由器的互联网段条目不被学习,但是由于这是一个链路状态路由协议,对于lookback接口这样的路由条目,还是能正确地计算出下一跳,以及能够正确的进行路由。

如果要使用这个功能,需要相关设备都要开启。

→注:多路访问网络发送在1类的LSA只会表述自己的接口状态、用2类LSA建立维持拓扑网络。P2P网络通过1类LSA发送自己的接口状态和邻居关系,直接可以知道拓扑网络,可以不用2类LSA来建立拓扑网络关系。

prefix-suppression  //开启前缀抑制功能,较早的IOS不支持这项功能

部署和排错OSPF建立邻接的过程

1、       是否产生和发送hello

a)    特殊的网络类型是不会产生组播hello

i.         通告错误;

ii.         物理接故障;

iii.         被动接口(既不接收也不发送hello包);

b)    底层不支持转发组播

i.         使用单播建立邻居(可以单边做);

ii.         过滤优先级为6的协议报文;

2、       是否接收hello

a)    被过滤了不会接收;

b)    参数不匹配也不会认为有效;

c)    Hello报文内容匹配(区域号,认证,RID等);

3、       是否只是停留在two-way

a)    优先级设置为0,都是DRother;

4、       是否进入邻接关系

a)    判断接口优先级;

b)    DBD参数;

i.         TTL=1;

ii.         MTU;

5、       传递有内容的DBD

6、       查看本端口和对端设置是否存在链路故障

XXXGrateful Restart

9类LSA,non-stop forwarding(nsf

GR(GracefulRestart,平滑重启)是一种在主备切换或协议重启时保证转发业务不中断的机制。

其核心在于:设备进行协议重启时,能够通知其周边设备,使到该设备的邻居关系和路由在一定时间内保持稳定。在协议重启完毕后,周边设备协助其进行信息(包括支持GR的相关协议所维护的各种拓扑、路由和会话信息)同步,在尽量短的时间内恢复到重启前的状态。在协议重启过程中不会产生路由振荡,报文转发路径也没有任何改变,整个系统可以实现不间断运行。

OSPF GR可以保证运行OSPF协议的路由器在进行主备切换或OSPF协议重启时,转发业务正常进行。

如何能使协议重启而不引起网络振荡和转发中断呢?

由于分布式设备的控制与转发是分开的,主控板负责整个设备的控制与管理,包括协议运行和路由计算,而接口板则负责数据转发。这样当发生主备倒换或协议重启时,数据转发仍然可以不中断进行。同时,如果在重启期间周边设备能维持邻居关系不变并保持路由稳定,并且在设备重启后能协助设备进行路由信息同步,在尽量短的时间内使得本设备的路由信息恢复到重启前的状态,那么就可以保持网络拓扑稳定,不引起网络路由振荡。

GR概念

1.    GR Restarter:发生协议重启事件且具有GR能力的设备。

2.    GR Helper:和GR Restarter具有邻居关系,协助完成GR流程的设备。

3.    GR Session:OSPF邻居建立时进行关于GR能力的协商,一般把GR能力协商过程称为GRSession。协商的内容包括双方是否都具备GR能力等。一旦GR能力协商通过,当协议重启时就可以进入GR流程。

→注:分布式设备可以充当GR restarter和GR helper;而集中式设备只能充当GRhelper,协助GR restarter完成GR流程。

GR的LSA

9类Opaque LSA,即Grace LSA,用以在GR Restarter重启时,通知周边邻居进入GR Helper流程。

报文格式


Don’t  Age Flag(1bit)


LS  Age (15bit,单位seconds)


Options(8bit)


0x09


Link  State ID(32bit)


0x08


0


Advertising  Route(32bit)


LSA  Sequence Number(64bit)


Checksum(16bit)


Length(16bit)


TLVs

TLVs:

i.         Grace Period TLV:Type取值为1,长度为4字节,表示邻居设备进入GR Helper处理流程的最长保持时间。如果超过这段时间GR Restarter还没有完成GR处理流程,则周边邻居不再担任GR Helper角色。

→注:该TLV是Grace LSA必须携带的。

ii.         Graceful Restart Reason TLV:Type取值为2,长度为1字节,告知邻居设备GRRestarter的重启原因。Value取值为0表示原因未知,取值为1表示软件重启,取值为2表示软件重新加载(升级),取值为3表示GR Restarter进行主备倒换。

→注:Grace LSA中必须携带该TLV。

iii.         IP Interface Address TLV:Type取值为3,长度为4字节,用来告知发送Grace LSA的接口的IP地址,在网络上需要用该IP地址来唯一标识一台重启设备。

OSPF GR运行过程

IETF标准

具体流程如下:

(1) Router A重启之前向Router B发送Grace LSA;

(2) Router B收到Router A发出的Grace LSA后,会维持与Router A的邻居关系不变;

(3) Router A 与Router B进行Hello报文与DD报文交互和LSDB同步。由于GR过程中不能生成LSA,所以在LSDB同步过程中,如果Router A从Router B收到自己产生的LSA,直接存储下来并置上Stale标志;

(4)完成LSDB的同步之后,Router A发送Grace LSA(Grace Period TLV的Type值为0)通知Router B结束GR流程。Router A进入正常OSPF流程,然后Router A重新生成LSA,并删除那些置了Stale标志而又没有被重新生成的LSA;

(5) Router A在恢复所有路由信息后重新进行路由计算,重新刷新FIB表。

非IETF标准

非IETF标准GR主要是通过下面两个能力扩展来支持OSPF GR:

1.    Link-Local Signaling(LLS:OSPF本地链路通告扩展,用来标识当前路由器和其他路由器进行一些可选信息的通信。

2.    Out-of-band LSDB Resynchronization(OOB:带外的LSDB重新同步,完成无邻接关系变化的LSDB重新同步。

具体流程:

(1) Router A重启后向Router B发送LR和RS都置位的Hello报文,向Router B通告自己只是暂时断开马上就会恢复正常,并且自己具备OOB能力;

(2) Router B收到Hello报文后,也会向Router A回复一个LR仍保持置位但是RS位已经清除的Hello报文,向Router A通告自己已经知道它是要短暂离开,并且自己也具备OOB能力;

(3) Router A向Router B发送R置位的DD报文,向Router B发起LSDB同步请求,在LSDB同步期间,Router B不会将Router A从自己的邻居列表中删除,在自己生成的Router LSA(Network LSA)中,与Router A的邻居关系仍然为Full。由于GR过程中不能生成LSA,所以在LSDB同步过程中,如果Router A从Router B收到自己产生的LSA,直接存储下来并置上Stale标志。

(4)完成LSDB的同步之后,Router A结束GR流程,进入正常OSPF流程,然后Router A重新生成LSA,并删除那些置了State标志而又没有被重新生成的LSA。Router B在和Router A的邻居关系重新达到Full状态后退出GR流程,进入正常OSPF流程。

(5) Router A在恢复所有路由信息后重新进行路由计算,重新刷新FIB表。

配置命令

Router(config-router)#nsfcisco helper  //开启优雅重启功能(链路的两端配置才有效)

▲根据不同厂商设备不一样,配置的命令会有所差异。有的是graceful restart、enable什么之类的。

Cisco NSF is supported by the BGP, EIGRP, OSPF, and IS-IS protocols for routing andby Cisco Express Forwarding (CEF) for forwarding。能使用快速转发机制的路由协议都应该可以配置优雅重启,需要一个主设备和多台辅助设备。

时间: 2024-08-03 07:01:17

2016-08-14-OSPFv2-2的相关文章

AryaLinux 2016.08 发布,Linux 内核更新至 4.7

AryaLinux 2016.08 发布了. 在 AryaLinux 2016.04 的基础上做出一系列改进. 主要更新内容: 1. AryaLinux 2016.08 新发布功能 MATE1.15 . 2. 构建 AryaLinux 的方法更标准化,并提供额外的 -KDE 和 LXQt 桌面环境支持. 3. Qt4 更新为 Qt5 . 4. Linux 内核更新至 4.7 版.这个内核版本支持很多新的硬件. 4. GCC 已被更新到版本 GCC 6. 5. VLC 媒体播放器升级到 3.x .

大集合Cadence Encounter Test 15.12+SystemVue 2016.08+SewerCAD StormCAD CONNECT Edition 10.00.00.4

Cadence Encounter Test 15.12.000全球电子设计创新领先者 Cadence Design Systems公司,全球电子设计创新的领先者,已经发布了Cadence Encounter Test15.12.000版,是Cadence Encounter的一个关键技术的数字IC设计平台. Cadence Encounter Test3D-IC 设计测试和自动化测试样式生成为提供了一个全面的技术方法,其中包 括从芯片 I/Os 中控制和观察的一个单个芯片,不同的测试模式来控制

2014/08/14 – Backbonejs

[来自: Backbone.js 开发秘笈 第8章] 相关技术: 1. 使用 Require.js 组织项目结构 文件结构: index.html lib/ underscore.js jquery.js backbone.js js/ app.js userDefine.js index.html: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <titl

2016/01/14开始学习git:标签管理:创建标签

标签也是版本库的一个快照指向某个commit的指针(分支可以移动,标签不能移动) 切换到需要打标签的分支上git tag <name>就可以打一个新标签: $ git tag v1.0 git tag查看所有标签: $ git tagv1.0 打之前提交的版本的commit需要当时的commit ID$ git tag v0.9 93ddf60 查看tag$ git tagv0.9v1.0 标签不是按时间顺序列出,而是按字母排序的.可以用git show <tagname>查看标签

2016.3.14

21.shift v.转移 移动 改变 22.vary v.变化 改变 使多元化 .... 计划有变,单词应该早上被比较好,晚上睡觉比较合适. 今天14号,星期一,明天15号,星期二. 今天白色情人节,娥娥给我打钱,让我自己想买啥就买啥. 今天收到ds18b20 还有检测光亮度的传感器,还有一个12v的小电风扇. 1.18b12可以顺利检测出温度. 2.光亮度也可以顺利检测,只是需要180ms的时间延长来接收光亮数据,导致数码管显示卡顿.发现用定时器中断均无法实现,因为单片机用的不是很熟,无法多

2016.08互金平台移动端影响力50强

2015年,也被称为互联网金融移动化的元年,强化移动端的竞争力已成为互联网金融平台的重要战略之一. 以最活跃的P2P网贷领域为例,根据网贷之家.盈灿咨询的投资者调研及主要平台的数据显示,在2015年末移动端的成交量正在超越PC端,甚至行业内已经出现纯移动端的平台. 对于互金平台来讲,移动端具有用户体验好.沟通效率高.数据获取更准确等优势,各家平台也充分认识到这一点,通过多种渠道强化移动端的影响力. 基于此,盈灿咨询通过监测互金平台的微信公众号.平台APP.平台微博.新闻客户端.QQ群等常见移动端

2016/08/18 select

1.//得到select项的个数 2.jQuery.fn.size = function(){ 3. return jQuery(this).get(0).options.length; 4.} 5. 6.//获得选中项的索引 7.jQuery.fn.getSelectedIndex = function(){ 8. return jQuery(this).get(0).selectedIndex; 9.} 10. 11.//获得当前选中项的文本 12.jQuery.fn.getSelected

2016/1/14 java生成指定范围的随机数

java生成指定范围的随机数 1 package edu.sjtu.erplab.io; 2 3 import java.util.Random; 4 5 public class RandomTest { 6 public static void main(String[] args) { 7 int max=20; 8 int min=10; 9 Random random = new Random(); 10 11 int s = random.nextInt(max)%(max-min+

2016/1/14 数字类处理 包装类

⑩数字处理类 取整:1,四舍五入,格式Math.round(浮点数) 2,取下限值,格式 Math.floor(浮点数)   3,取上限值,格式Math.ceil(浮点数) 生成随机数 1,Math.random()静态方法.介于0和1之间的小数               2,Random类 实例化Random Random x =new Random()                                  Random x=new Random(随机数种子)         

2016.08.06计算几何总结测试day1

T1 bzoj1132[POI2008]TRO 还是太弱了....测试时看到这题直接懵逼,极角排序什么的根本想不起来,只会n^3暴力怎么破......不过竟然有84.....QAQ 正解是n^2logn的,首先为了避免算重,以点的x坐标为第一关键字和y坐标为第二关键字排好序,然后O(n)枚举当前点计算以当前点为三角形的一个顶点的三角形面积之和. 显然不能n^2枚举,于是想到nlogn极角排序,以当前点为原点建一个平面直角坐标系,加一个前缀和将计算优化到O(n),于是就是n^2logn的了 至于怎