您的位置:首页 > 汽车 > 时评 > 下载中心_同城招聘工作信息附近_百度教育app_百度一下你就知道官网新闻

下载中心_同城招聘工作信息附近_百度教育app_百度一下你就知道官网新闻

2024/12/22 20:37:11 来源:https://blog.csdn.net/toyijiu/article/details/144205922  浏览:    关键词:下载中心_同城招聘工作信息附近_百度教育app_百度一下你就知道官网新闻
下载中心_同城招聘工作信息附近_百度教育app_百度一下你就知道官网新闻

NA消息用单播还是多播的判断理由

  • 单播回复(Unicast):
    • 如果客户端发送 RS 消息时,使用的是一个全局地址或链路本地地址作为源地址,则 RA 消息会单播回复到客户端的源地址。
    • 这种方式减少了网络中的广播流量,仅回复给请求的客户端。
  • 多播回复(Multicast):
    • 如果 RS 消息的源地址为未指定地址(::,通常出现在刚启动或接口初始化时),则 RA 消息会通过多播发送到所有节点多播组地址(ff02::1)。
    • 这是因为路由器不知道具体哪个客户端发送了 RS 消息,或者 RS 可能针对多个客户端需求。
  • 相关说明在RFC4861

NA消息 RTR,SOL,OVR标志位

RTR 标志位(Router Flag)

表示发送 NA 消息的节点是否是一个路由器。

  • 取值:
    • 1:发送此 NA 消息的节点是路由器。
    • 0:发送此 NA 消息的节点不是路由器。
  • 作用:
    • 如果 RTR=1,接收方可能将其记录为路由器,用于默认网关等功能。
    • 如果 RTR=0,接收方会认为发送方只是一个普通主机。
  • 设置规则:
    • 路由器在发送 NA 消息时,通常会将 RTR 设置为 1。
    • 普通主机在发送 NA 消息时,RTR 应设置为 0。
  • 配置影响:
    • 需要在路由器启用 IPv6 转发功能(net.ipv6.conf.all.forwarding=1)并通过邻居发现协议正确声明自己为路由器。

SOL 标志位(Solicited Flag)

表示该 NA 消息是否是对特定的 Neighbor Solicitation (NS) 消息的响应。

  • 取值:
    • 1:该 NA 消息是响应一个特定的 NS 消息(即 solicited NA)。
    • 0:该 NA 消息是一个 unsolicited NA 消息。
  • 作用:
    • Solicited NA 消息: 用于更新邻居缓存表。
    • Unsolicited NA 消息: 用于广播特定地址的所有权声明,防止地址冲突。
  • 典型场景:
    • 如果节点接收到对自己地址的 NS 消息,会发送带 SOL=1 的 NA 消息作为响应。
    • 如果节点主动通知网络其地址的变化,会发送带 SOL=0 的 NA 消息。
    • 如果是对 NS 消息的直接响应,SOL=1。如果是广播性质的地址声明,SOL=0。

OVR 标志位(Override Flag)

决定接收节点是否应该覆盖其现有的邻居缓存表条目。

  • 取值:
    • 1:接收节点应更新现有的邻居缓存条目。
    • 0:接收节点不应覆盖现有的缓存条目。
  • 作用:
    控制邻居缓存表的更新策略:
    • OVR=1:表示发送方地址信息应被接收方用于更新邻居缓存表。
    • OVR=0:接收方仅在当前条目为 “stale” 状态时更新缓存表。
  • 设置规则:
    一般情况下,节点会在以下场景下设置 OVR 标志:
    • 地址信息确实发生变化,需要通知邻居更新。
    • 确保邻居缓存条目不会因为错误的消息覆盖有效条目。

ndppd代理和linux kernel发送na

  • 如果 net.ipv6.conf.all.forwarding=1,系统内核会自动为启用的接口处理 NS 消息,并发送 NA 消息。
  • ndppd 的目的是接管系统内核的部分 NDP 功能,特别是在 Proxy NDP 场景下。如果未正确配置,ndppd 和系统内核可能同时响应同一个 NS 消息,导致发送两条 NA 消息。网络抓包时,可以看到同一接口上对一个 NS 消息发出两条 NA 消息,可能来自内核和 ndppd。两条 NA 消息可能携带不一致的标志(如 Rtr 或 Ovr),或声明的链路层地址不同。

ndppd和linux kernel设置是否发送na

linux kernel控制发送na的参数,比如设置为1的demo如下:

sysctl -w net.ipv6.conf.<interface>.proxy_ndp=1

ndppd的demo:

interface eth1 {proxy eth0 {router yes}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com