Linux邻居子系统:原理、操作与ARP协议详解
1. Linux邻居子系统概述
Linux邻居子系统在网络通信中扮演着重要角色,它负责管理网络邻居信息,为网络层和链路层之间的交互提供支持。以下是邻居子系统的一些关键方法和属性:
- family :AF_INET 用于 IPv4,AF_INET6 用于 IPv6。
- solicit :负责发送邻居请求,ARP 中是 arp_solicit() 方法,NDISC 中是 ndisc_solicit() 方法。
- error_report :当邻居状态为 NUD_FAILED 时,由 neigh_invalidate() 方法调用。
- output :当知道下一跳的 L3 地址,但 L2 地址未解析时,输出回调应为 neigh_resolve_output()。
- connected_output :当邻居状态为 NUD_REACHABLE 或 NUD_CONNECTED 时,邻居的输出方法设置为 connected_output()。
2. 创建和释放邻居
邻居对象通过 __neigh_create() 方法创建,以下是其创建流程:
graph TD
A[__neigh_create()] --> B[调用 neigh_alloc()]
B --> C{表项数量是否满足条件}
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



