2.5. Use of link-local addresses

   IPv6 link-local addresses are for use on a single link, for purposes
of neighbor discovery, auto-configuration, etc. IPv6 routers do not
forward IPv6 datagrams having link-local source addresses [Ref15].
Link-local unicast addresses are assigned from the IPv6 address range
FF80/10. OSPF for IPv6 assumes that each router has been assigned link-local
unicast addresses on each of the router's attached physical segments.
On all OSPF interfaces except virtual links, OSPF packets are sent
using the interface's associated link-local unicast address as
source
. A router learns the link-local addresses of all other
routers attached to its links, and uses these addresses as next hop
information during packet forwarding
.
OSPF包的源地址都是链路本地地址,包转发时,使用链路本地地址作为下一跳的信息。
On virtual links, global scope or site-local IP addresses must be
used as the source for OSPF protocol packets.
   Link-local addresses appear in OSPF Link-LSAs (see Section 3.4.3.6).
However, link-local addresses are not allowed in other OSPF LSA
types. In particular, link-local addresses must not be advertised in
inter-area-prefix-LSAs (Section 3.4.3.3), AS-external-LSAs (Section
3.4.3.5) or intra-area-prefix-LSAs (Section 3.4.3.7).
链路本地地址只在Link-LSA中出现,其它均不允许出现。

A.1 Encapsulation of OSPF packets


   OSPF runs directly over the IPv6's network layer.  OSPF packets are
therefore encapsulated solely by IPv6 and local data-link headers. OSPF does not define a way to fragment its protocol packets, and
depends on IPv6 fragmentation when transmitting packets larger than
the link MTU. If necessary, the length of OSPF packets can be up to
65,535 bytes. The OSPF packet types that are likely to be large
(Database Description Packets, Link State Request, Link State Update,
and Link State Acknowledgment packets) can usually be split into
several separate protocol packets, without loss of functionality.
This is recommended; IPv6 fragmentation should be avoided whenever
possible.
Using this reasoning, an attempt should be made to limit
the sizes of OSPF packets sent over virtual links to 1280 bytes
unless Path MTU Discovery is being performed [Ref14].
OSPF没有定义分段机制,而是依赖于IPv6的分段机制。
OSPF包大部分可以自己拆分,而不影响,这是推荐的做法。
The other important features of OSPF's IPv6 encapsulation are: o Use of IPv6 multicast. Some OSPF messages are multicast, when
sent over broadcast networks. Two distinct IP multicast
addresses are used. Packets sent to these multicast addresses
should never be forwarded
; they are meant to travel a single hop
only
. As such, the multicast addresses have been chosen with
link-local scope, and packets sent to these addresses should have
their IPv6 Hop Limit set to 1.
发往多播地址的包不会被转发,是单跳的。

AllSPFRouters
This multicast address has been assigned the value FF02::5. All
routers running OSPF should be prepared to receive packets sent to
this address. Hello packets are always sent to this destination.
Also, certain OSPF protocol packets are sent to this address
during the flooding procedure
.
Hello包的目的地址是ff02::5,某些OSPF协议包在洪泛过程中,会发到这个地址。
AllDRouters
This multicast address has been assigned the value FF02::6. Both
the Designated Router and Backup Designated Router must be
prepared to receive packets destined to this address. Certain
OSPF protocol packets are sent to this address during the flooding
procedure.
 
   o  Addresses in LSAs are now expressed as [prefix, prefix length]
instead of [address, mask] (see Section A.4.1). The default route
is expressed as a prefix with length 0.
地址由[地址,掩码]改变为[前缀,前缀长度]
o The Router and Network LSAs now have no address information, and
are network-protocol-independent.
Router-LSA(只有Router ID)和Network-LSA(只有该网络中所有路由器的Router ID)中没有了地址信息,是网络协议独立的。
In IPv4, the router-LSA carries a router's IPv4 interface
addresses, the IPv4 equivalent of link-local addresses. These are
only used when calculating next hops during the OSPF routing
calculation
(see Section 16.1.1 of [Ref1]), so they do not need to
be flooded past the local link; hence using link-LSAs to
distribute these addresses is more efficient.
下一跳计算过程中会使用router-LSA中。

 关于DR和BDR选举

对于广播网络,比如以太网,如果所有路由器都分别互相交互信息,会造成较大开销。

可以利用广播特性,选择一个中心节点DR,先收集其它路由器的信息,然后,再广播出去。

步骤为:

先选举BDR,再选举DR

BDR,会首先看Router Priority,谁大,选谁;如果一样,看Router ID,谁大选谁。

    Router Priority默认是1,若是0,则没有被选举权。Router ID肯定唯一的,因此,肯定能否选出一个BDR来。

之后,会让BDR变为DR,再选举一个BDR出来。

 关于master和slave确定

只与Router ID相关,与优先级无关。

OSPF RFC2740的更多相关文章

  1. (ospf、rip、isis、EIGRP)常见的动态路由协议简介

    路由器要转发数据必须先配置路由数据,通常根据网络规模的大小可设置静态路由或设置动态路由.静态路由配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络.缺点是不能自动适应网络拓扑的变化,需要人工 ...

  2. Ceph RGW 的 OSPF负载均衡 + quagga的配置

      随着开源技术的发展,以及商业设备价格的不断攀升.大公司总是希望能使用开源的方案来替换过去使用的商业设备.比如之前大家用的很多的F5和A10,现在已经在逐步被LVS替换.传统的单个lvs的性能是比不 ...

  3. 动态选路、RIP协议&&OSPF协议详解

    动态选路.RIP协议&&OSPF协议详解 概念 当相邻路由器之间进行通信,以告知对方每个路由器当前所连接的网络,这时就出现了动态选路.路由器之间必须采用选路协议进行通信,这样的选路协议 ...

  4. OSPF协议详解

    CCNP OSPF协议详解 2010-02-24 20:30:22 标签:CCNP 职场 OSPF 休闲 OSPF(Open Shortest Path Fitst,ospf)开放最短路径优先协议,是 ...

  5. RIP、OSPF、BGP、动态路由选路协议、自治域AS

    相关学习资料 tcp-ip详解卷1:协议.pdf http://www.rfc-editor.org/rfc/rfc1058.txt http://www.rfc-editor.org/rfc/rfc ...

  6. OSPF理解

    from http://kingdee.blog.51cto.com/98119/27310STP,PIM,OSPF,长的好像(*_*)可以把整个网络(一个自治系统AS)看成一个王国,这个王国可以分成 ...

  7. OSPF

    Ospf OSPF(开放最短路径优先协议)是一种无类内部网关协议(IGP):是一种链路状态路由选择协议: 入门: 可以把整个网络(一个自治系统AS)看成一个王国,这个王国可以分成几个 区(area), ...

  8. OSPF(Open Shortest Path First开放式最短路径优先 -链路状态路由协议

    OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络 思科OSPF的协议管理距离(AD)是110,华为OSPF的协议管理距离是10 通告网络接 ...

  9. OSPF虚链路配置.示例2

    先看一个拓扑图 黄色区域是area0,即骨干区域,如果如图示RT1与RT6之间的链路断了,那么会出现骨干区域被“分裂”的情况,很明显骨干区域是不能被分割开的,出现这种状况的时候可能会影响到整个自制系统 ...

随机推荐

  1. The command '/bin/sh -c unzip -o php-7.2.23-src.zip' returned a non-zero code: 1

    Dockerfile 内容 #centos7 nginx php redis inotify FROM centos:7 MAINTAINER INFOBIRD RUN yum -y update & ...

  2. Serverless 微服务实践-移动应用包分发服务

    背景 阿里云函数计算是事件驱动的全托管计算服务.通过函数计算,您无需管理服务器等基础设施,只需编写代码并上传.函数计算会为您准备好计算资源,以弹性.可靠的方式运行您的代码,并提供日志查询.性能监控.报 ...

  3. python列表(数组)

    列表(list)  就是 数组 - 列表是Python中的一个对象 - 对象(object)就是内存中专门用来存储数据的一块区域 - 之前我们学习的对象,像数值,它只能保存一个单一的数据 - 列表中可 ...

  4. const和volitale

    1. const只读变量 const修饰的变量是只读的,本质还是变量 const修饰的局部变量在栈上分配空间(可以通过指针修改) const修饰的全局变量在全局数据区分配空间(指针也修改不了) con ...

  5. Java中的equalsIgnoreCase()

    在工作中偶然机会看到了equalsIgnoreCase()这个方法,相信大家和我一样equals()是再熟悉不过的了,但是对于equalsIgnoreCase()有点眼生(大神勿喷),所以写了这篇博客 ...

  6. 归一化 (Normalization)、标准化 (Standardization)和中心化/零均值化 (Zero-centered)

    博主学习的源头,感谢!https://www.jianshu.com/p/95a8f035c86c 归一化 (Normalization).标准化 (Standardization)和中心化/零均值化 ...

  7. git 工作中实用 多人协同开发

    多人协同开发 .克隆分支 git clone -b dev1. url .创建并关联远程分支 git checkout -b dev_wt origin/dev_wt 情况一获取其它分支的代码,并合并 ...

  8. 安装Jupyter Notebook

    1.安装Ipython pip3 install -i https://pypi.douban.com/simple ipython 2.安装jupyter pip3 install -i https ...

  9. mysql 执行计划和慢日志记录

    一.执行计划 1.作用预估sql语句执行的时间,一般准确2.格式: explain sql语句3.type类型的快慢(all最慢,const最快)all < index < range & ...

  10. 《ASP.NET Core 高性能系列》关于.NET Core的部署方式

    概述,.NET Core应用程序可以创建三种类型的部署:FDD SCD FDE 框架依赖的部署(FDD).顾名思义,框架依赖的部署(FDD)依赖于目标系统上是否存在.NET Core版本.由于.NET ...