Kernel

從內置 IPv6 SLAAC 支持中檢索路由器通告的“託管”標誌

  • June 21, 2021

linux 核心支持 IPv6 SLAAC(無狀態地址自動配置)並且能夠處理接收到的路由器通告消息。

**但是:**據我所知,核心沒有處理路由器通告的兩件事:

  1. ‘M’/‘O’ 標誌表示網路中存在 DHCPv6 伺服器*(這儲存在 inet6_dev 中,但從未使用過)*
  2. 用於在 RA 中傳遞 DNS 伺服器的 DNS 選項*(完全忽略此選項)*

有沒有辦法從使用者空間檢索這些資訊?

似乎無法通過 netlink 從核心中檢索此資訊

感謝使用者 AB,我想出了通過另一種方式檢索此資訊的方法

我使用了一個只監聽 icmpv6-router-advertisement 消息的原始套接字。這將檢索與意志核心完全相同的消息。

例如程式碼我建議你看一下 AB 提到的 ndisc6 項目中的 rdnss/icmp.c 文件。 https://github.com/nomis/ndisc6/blob/master/rdnss/icmp.c

引用自:https://unix.stackexchange.com/questions/654514