openwrt配置ipv6 odhcpd配置 RA报文DHCPv6有状态和无状态配置

2022-12-03
0评论
/
1686阅读
爱搜啊

openwrt路由器RA报文

ipv6的地址自动配置有两种方式,分别是SLAAC与DHCPv6,其中DHCPv6还分为有状态和无状态。

设备在获取IPv6地址等信息时,会先发送RS报文请求链路上的路由设备,路由设备受到RS报文后会发送相应的RA报文来表示自身能够提供的IPv6服务类型。
对于RA报文,根据其M字段和O字段确定其获取IPv6地址的模式:

openwrt中ipv6的RA服务器 odhcpd配置:

配置文件/etc/config/dhcp

# router.c -> send_router_advert()
config dhcp 'lan'
    option interface 'lan'

    # 使用 ra服务器模式
    option ra 'server'

    # ra_default: 1: ?,   2: 设置路由生存时间 3 * 600
    # 设置RA Lifetime
    option ra_default '2'

    # 使用dhcpv6 服务端获取其它信息, (windows是反的???)
    # 设置RA Flags[Other]位 = 1
    option dhcpv6 'server'

    # 1, (默认)使用dhcpv6服务器获取ip 并且设置 RA 前缀Flag[A]=1, 2. 只设置 RA Flags[Managed]位=1, 不会生成前缀地址
    # 设置RA Flags[Managed]位=1
    option ra_management '2'

    # 设置RA 前缀Flags[R]位=1
    # option ra_advrouter '1'

这个配置是将odhcpd只作为路由服务器 只路由通告,   ipaddr, dns等信息都从dhcpd6服务器获取

数据包格式:

flags:

  Managed位: 1, 表示 客户端除了 使用前缀地址 还需要从DHCPv6服务器获取ip地址, 0表示不会用dhcp请求ip, ip地址会使用前缀的方式代替

  Other位: 1, 表示client要从dhcpv6服务端获取其它信息(除了ip地址)

  Lifetime: 表示路由生存时间, 0. 当前路由不可用

Prefix:

PREFIX[flag]:

  L: 1, 将该前缀添加到前缀列表

  A: 1, 自治标记, 使用该前缀和接口标识生成试探地址(前缀地址), 用来作为无状态地址

openwrt配置ipv6

IPV6 RA标识含义

1) M字段:管理地址配置标识(Managed Address Configuration)
M=0,标识为状态地址分配,客户端通过无状态协议(如ND)获得IPv6地址
M=1,标识有状态地址分配,客户端通过有状态协议(如DHCPv6)获得IPv6地址
2) O字段:其他有状态配置标识(Other Configuration)
O=0,标识客户端通过无状态协议(如ND)获取除地址外的其他配置信息
O=1,标识客户端通过有状态协议(如DHCPv6)获取除地址外设为其他配置信息,如DNS,SIP服务器信息。
协议规定,若M=1.则O=1,否则无意义。
M	O	描述                                 含义	
1	1	Stateful DHCPv6                      地址和DNS等都从DHCPv6服务器取得	
0	1	Stateless DHCPv6                     地址使用RA广播的prefix+ EUI-64计算出来的接口地址,DNS和其他服务器从DHCPv6取得	
0	0	Stateless AutoConfiguration          完全的Stateless配置,仅地址使用RA广播的prefix+ EUI-64计算出来的接口地址

本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


于2022-12-03发布
相关文章