小型OSPF网络配置教程

OSPF是一种链路状态路由协议,由IETF开发,广泛应用于IPv4和IPv6网络中的内部网关协议(IGP).其主要特点包括:

  • 基于SPF算法:通过运行最短路径优先算法(Shortest Path First),路由器能够构建出一棵到所有网络的无环路、最优成本的路由树.

  • 链路状态通告(LSA):每台运行OSPF的路由器都会广播其本地链路状态信息,形成LSA,并将这些信息泛洪至整个自治系统.所有路由器维护一个相同的链路状态数据库(LSDB),反映整个网络拓扑.

  • 区域划分:OSPF支持区域划分以减少路由信息传播范围,提高大规模网络的可管理性和效率,同时降低了网络带宽占用和处理开销.

  • 认证与安全性:支持多种认证方式以保证路由更新的安全性.

简而言之,OSPF通过收集并扩散网络的链路状态信息,在自治系统内提供动态、准确且高效的路由选择机制.

OSPF描述

配置重点和注意事项

  • OSPF区域0(area 0.0.0.0)(也称为后备区域)是OSPF网络的核心区域.所有其他区域都必须与区域0直接或通过虚拟链路连接.
  • 路由器ID是OSPF进程的唯一标识符.它通常设置为路由器上配置的某个接口的IP地址.
  • network命令用于指定要在OSPF中广播的网络.在此命令中,你需要提供网络地址和反掩码(例如,255.255.255.255 - 子网掩码).
  • 默认路由广播(default-route-advertise always)允许你在OSPF网络中自动分发默认路由.这对于允许局域网内的设备访问互联网非常有用.
  • R1(路由器1):

    • IP: 183.221.253.10 出口 连接到互联网
    • IP: 192.168.10.81 vlan10 连接到S1交换机
  • S1(交换机1):

    • IP: 192.168.10.82 vlan10 连接到R1路由器
    • IP: 192.168.20.1 vlan20 连接到局域网电脑

配置R1

  1. 首先,配置R1的OSPF进程和路由器ID.在此示例中,我们将使用OSPF进程1(ospf 1)路由器ID 192.168.10.81.

在大多数情况下,最佳做法是将路由器ID设置为loopback地址.这是因为loopback地址是一个虚拟接口,不会因为物理接口的故障而导致路由器ID的变化,从而提高了网络的稳定性.而如果将路由器ID设置为出口接口的IP地址,一旦该接口发生故障,就可能导致路由器ID的变化,影响到路由协议的运行.

ospf 1 router-id 192.168.10.81
  1. 配置R1以在OSPF区域0(area 0.0.0.0)中广播其连接的网络.在此示例中,我们将广播192.168.10.81/32(局域网).
area 0.0.0.0
 network 192.168.10.81 0.0.0.0
  1. 配置R1以始终广播默认路由.这将允许局域网内的其他设备访问互联网.

在运行OSPF的网络环境中,若始终通过OSPF广播默认路由,则可能导致网络中的黑洞路由问题出现.为此,建议仅在确实需要的情况下才进行默认路由的配置与广播,以避免潜在的路由隐患.

default-route-advertise always

配置S1

  1. 配置S1的OSPF进程和路由器ID.在此示例中,我们将使用OSPF进程1(ospf 1)路由器ID 192.168.10.82.
ospf 1 router-id 192.168.10.82
  1. 配置S1以在OSPF区域0(area 0.0.0.0)中广播其连接的网络.在此示例中,我们将广播192.168.10.82/32(连接到R1的网络)和192.168.20.1/32(局域网内的其他网络).
area 0.0.0.0
 network 192.168.10.82 0.0.0.0
 network 192.168.20.1 0.0.0.0

通过遵循本教程,你应该已经成功配置了OSPF,实现了在你的网络中的动态路由.请确保检查你的路由表以验证OSPF已正确更新路由信息.

R1配置

包含静态路由;回程路由从ospf广播学习,无需配置

#                                         
ospf 1 router-id 192.168.10.81
 default-route-advertise always
 area 0.0.0.0
  network 192.168.10.81 0.0.0.0
#
ip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/10 183.221.253.1
ip route-static 0.0.0.0 0.0.0.0 Dialer1
#

R1路由条目明细

其中路由协议(Proto):OSPF是从ospf广播中学习到的

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface
        0.0.0.0/0   Static  60   0           D   100.65.39.76    Dialer1
                    Static  60   0           D   183.221.253.1     GigabitEthernet0/0/10
    100.65.32.1/32  Direct  0    0           D   100.65.32.1     Dialer1
   100.65.39.76/32  Direct  0    0           D   127.0.0.1       Dialer1
      127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
      127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
  192.168.10.80/28  Direct  0    0           D   192.168.10.81   Vlanif10
  192.168.10.81/32  Direct  0    0           D   127.0.0.1       Vlanif10
  192.168.10.95/32  Direct  0    0           D   127.0.0.1       Vlanif10
  192.168.20.0/26  OSPF    10   2           D   192.168.10.82   Vlanif10
    183.221.253.0/24  Direct  0    0           D   183.221.253.77    GigabitEthernet0/0/10
   183.221.253.77/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/10
  183.221.253.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet0/0/10
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0

S1配置

默认路由从ospf广播学习,无需配置

#
ospf 1 router-id 192.168.10.82
 area 0.0.0.0
  network 192.168.10.82 0.0.0.0
  network 192.168.20.1 0.0.0.0
#

S1路由条目明细

其中路由协议(Proto):O_ASE是从ospf广播中学习到的

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface
        0.0.0.0/0   O_ASE   150  1           D   192.168.10.81   Vlanif10
      127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
      127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
  192.168.10.80/28  Direct  0    0           D   192.168.10.82   Vlanif10
  192.168.10.82/32  Direct  0    0           D   127.0.0.1       Vlanif10
  192.168.20.0/26  Direct  0    0           D   192.168.20.1   Vlanif20
  192.168.20.1/32  Direct  0    0           D   127.0.0.1       Vlanif20