By无翼而飞

OSPF经验

ospf是支持无类ip地址的,所以大家经常用.192/.252等掩码的地址.这样就很容易在写反码的时候产生错误. 

1注意子网掩码的反码要写对 
2注意所有的端口起来时才可以加ospf路由 
3area域一定要相同 
4注意hello和dead时间要两端匹配 

** ospf的基本操作 

1、所接的路由器要成为邻居(通过发送hello packet来交换); 

2、构建邻接关系 
(1)并不是所有的邻居都会构建成邻接关系,一般有一个值班路由器,其他的路由器和它构建邻接关系; 
(2)一旦构建了邻接关系后,发送lsa(链路状态申明)到邻接路由器。 

3、在邻接路由器之间发送lsa; 

4、接受lsa; 

5、构建一个相同的拓扑表(链路状态数据库); 

6、使用最短路径优先的方法来计算最短路径; 

7、构建路由表。 

**ospf在广播网络中的操作 

一、所连的路由器要成为邻居 

1、通过hello协议,每隔一定时间间隔(hello interval)(在广播网络中,该间隔是10秒),发送hello packet。 

2、hello packet 的目标地址是:224.0.0.5(代表所有ospf的路由器); 

3、hello packet的参数: 
(1)router id 路由器标识符(用ip地址标识); 

a.选择最高的接口ip地址来标识自己; 
b.当有loopback接口时,选择最高的loopback接口的ip地址作为router id; 
c.建议在ospf router中都建立一个loopback接口,并配之以ip address来作为该router的router id。 

(2)area id区域标识; 
a.来标识该路由器所处的位置; 
b.只有在同一区域(有相同的area id)的router才会构建邻居; 

(3)hello interval is 10 seconds; 

(4)dead interval is 4*hello interval=40 sec 

(5)验证密码; 

(6)stub area flag 末端区域标志。 

二、构建邻接关系 

1、通过hello packet选择一个dr(值班路由器); 
(1)先看接口的优先级; 
(2)优先级相同时,选择router id高的router作为dr. 

2、还要选择一个bdr(备份值班路由器) 

如果dr is down,则bdr会成为dr,然后重新选择bdr。 

3、非dr和bdr的router是other routers dr,bdr和other routers之间是如何构建邻接邻接关系的: 

三、链路状态数据库同步 

1、down state 

没有ospf运行。 

2、initial state 

开始发送hello packet。 

3、two way state 

在后续的hello packet中互相发现对方的邻居列表 

4、exstart state 

准备建立邻接,确定master and slave 

5、exchange state 

首先有master开始发送dbd(summary lsdb) 

6、loading state 

发送lsr(link state request) 

接受lsu(link state update) 

7、full state 

link state db sync 链路状态数据库同步 

四、计算路由 

1、用spf(最短路径优先)方法计算; 
2、以cost值进行选择。 

五、维护路由信息 

1、lsu send:224.0.0.6(指dr和bdr); 

2、由dr flood to 224.0.0.5(other routers); 

3、update linkstate database; 

4、use spf calculated all routing。