Quagga的no ospf_interface问题

  /* if no local ospf_interface,
   * or header area is backbone but ospf_interface is not
   * check for VLINK interface
   */
  if ( (oi == NULL) ||
      (OSPF_IS_AREA_ID_BACKBONE(ospfh->area_id)
      && !OSPF_IS_AREA_ID_BACKBONE(oi->area->area_id))
     )
    {
      if ((oi = ospf_associate_packet_vl (ospf, ifp, iph, ospfh)) == NULL)
        {
          if (IS_DEBUG_OSPF_EVENT)
            zlog_debug ("Packet from [%s] received on link %s"
                        " but no ospf_interface",
                        inet_ntoa (iph->ip_src), ifp->name);
          return 0;
        }
    }

来自ospfd的代码,显示no ospf_interface的情况。

进入的条件是

oi为空,或者 ospfh的area id = 0 并且 oi的area id不是0.

正如上面的英文解释,

如果没有本地的ospf接口

或者包头部area是0,但ospf接口的非0.

ref:

http://wenku.baidu.com/view/59dc823d0912a216147929b9.html

你可能感兴趣的:(Quagga的no ospf_interface问题)