当物理接口状态从 up 变为 down 时,有 3 件事与计算机当前的路由表和 OSPF 相关。
该接口的(连接的)网络以及通过该(连接的)网络路由的远程网络将从计算机的路由表中删除。
该(连接的)网络上的 OSPF 邻居将从 OSPF 邻居表中删除。
通过该(连接的)网络路由的远程网络将从 OSPF 路由表中删除。
我的问题是当物理接口状态关闭时内核如何通知 OSPF 守护程序?内核似乎必须不断向 OSPF 守护进程通知一些信息,例如物理接口状态。
答案1
取决于操作系统——通过路由套接字(BSD 系列)或 netlink 套接字(Linux)。可用内核接口的非常简短的概述位于GNU Quagga 的文档。
答案2
我认为当链路状态是通过死时间间隔从 ospf 路由器获知时,不会出现这个问题,在死时间间隔内路由器需要发送 hello 数据包以保持其状态,否则链路将被视为关闭。当以太网链路关闭时,OSPFD 无法与邻居或邻接点进行通信。