Quagga问题解决:OSPF: Packet 30.0.0.28 [Hello:RECV]: my options: 2, his options 0

问题描述:

在用Quagga配置了一个ospf路由器以后,当启动ospfd进程以后,检查其log,发现log中有如下信息:

2010/05/26 14:58:20 OSPF: Packet 30.0.0.28 [Hello:RECV]: my options: 2, his options 0

 

原因描述:

对端路由器发送给该路由器的hello消息中所带的options和该路由器的options不同。

 

解决办法:

删除quagga代码中的options检查,详细如下:

quagga-0.99.16/ospfd/ospf_packet.c:

ospf_hello函数中,修改如下部分:

    if (CHECK_FLAG (OPTIONS (oi), OSPF_OPTION_E) !=
        CHECK_FLAG (hello->options, OSPF_OPTION_E))
      {
        zlog_warn ("Packet %s [Hello:RECV]: my options: %x, his options %x",
                   inet_ntoa(ospfh->router_id), OPTIONS (oi), hello->options);
        //return;                                              ------------------- 注释此行
      }

 

quagga-0.99.16/ospfd/ospf_packet.c:

ospf_make_hello函数中,修改为如下内容:

  /* Set Options. */
  stream_putc (s, '/0');

  /* Set Router Priority. */
  stream_putc (s, PRIORITY (oi));

你可能感兴趣的:(Stream,路由器,2010)