1.OSPF度量值:Cost 开销
1)度量值cost
使用命令查看路由表,可以看到度量值:
dis ip routing-table

RIP以跳数作为度量值,OSPF不是;
2)度量值的计算
在每一个运行OSPF的接口上,都维护着一个接口cost
cost的计算方式=实际带宽/参考带宽100M (cost最小为1,没有小数)

也就是说:
参考带宽为分子=100M,接口实际带宽为分母;cost = 分子 / 分母
如果接口带宽为100M,则cost = 100M /100M = 1;
如果接口带宽为10M ,cost = 100/10 = 10;
接口带宽为1000M时,cost = 100 /1000 = 0.1,但cost最小值为1,因此cost =1;
cost不带小数位,如果cost = 2.5时,放弃小数位,cost = 2;
注:华为的回环口的默认开销是0,思科的回环口默认开销是1
3)度量值计算的方向
到一个目标网络的度量值=
从源到目标的所有出站接口的 Cost值累加(数据方向)
从目标到源沿途所有的入站接口的Cost值累计(路由方向)
如图:
按路由方向:
路由器A保存了1.1.1.0/24网段的路由,B从A学习该条路由时,从路由的入接口累计cost值;
B学习A的路由的入接口是B左边的接口,B左接口的cost是64,cost = 原来的cost + 64 = 1+64 =65;
同理,C学习A的路由时,cost在前面的基础上,加上C路由方向入接口的cost;cost = 65 +1 = 66;
按数据方向:
C要向1.1.1.0/24发送数据,数据方向向左;
需要经过三个路由器,数据的出接口为路由器左边的接口,cost = 1 + 64 + 1 = 66;

计算cost的实例:
从C到192.168.100.0,有两条路:C-A和C-B-A;
C向A学习路由,看得是路由方向的入接口;
C-A ->1 + 64 =65
C-B-A ->1 + 64 +64 = 129
选cost小的那条路由,因此cost = 65

2.OSPF配置
命令 | 备注 |
OSPF 1 router-id 1.1.1.1 | 开启OSPF,进程号默认为1,手动配置RID |
Area 0/0.0.0.0 | 配置区域 |
Network 192.168.0.0 0.0.0.255 | 宣告网络,即指定运行OSPF的接口; 使用反掩码来匹配(255.255.255.255) |
authentication-mode md5/simple | 设置认证,明文或密文 |
Default -route-advertise | 发布默认路由 |
Display ospf peer (brief) | 显示OSPF邻居信息 |
OSPF timer Hello 10 | 修改Hello包的发送时间 |
OSPF timer dead 40 | 修改Hello包的超时时间(默认是OSPF timer Hello的4倍,也可单独设置) |
Display ospf interface g0/0/0 | 显示OSPF接口信息 |
OSPF dr-priority 10 | 修改OSPF接口优先级 |
OSPF cost 10 | 修改开销,范围1~65532 |
bandwidth-reference 100 | 修改开销计算的参考值,默认为100M 修改最好在整个OSPF网络中统一修改 |
Reset ospf process 1 | 重启OSPF进程,默认为1 |
OSPF 1 enable area 0 | 在接口开启OSPF功能 |
Ospf authentication-mode MD5/simple | 设置认证,接口于区域同时配置,接口生效 |
1)Network 192.168.0.0 0.0.0.255
这个命令用来配置ospf接口的网络地址;
网络地址后面要跟上一个反掩码;
反掩码 = 255.255.255.255 - 掩码;
例1:
有个接口:4.4.4.4 32
他的反掩码为:4.4.4.4 0.0.0.0
例2:
接口地址:192.168.4.4 24
反掩码:192.168.4.0 0.0.0.255
反掩码只要能匹配接口地址即可:192.168.4.4 0.0.0.0 也行(相当于192.168.4.4 32,192.168.4.4 32在192.168.4.0 24网段内)
















