accept_ra
和 accept_ra_defrtr
笔记250404accept_ra
和 accept_ra_defrtr
是 Linux 系统中与 IPv6 路由通告(Router Advertisement, RA)密切相关的两个参数,它们在功能上既有关联又有分工。以下是它们的核心区别与协作关系:
参数 | 作用 | 默认值 | 依赖关系 |
---|---|---|---|
accept_ra |
控制接口是否处理路由通告(RA)消息。 | 1 (启用) |
所有 RA 相关功能的前提条件。 |
accept_ra_defrtr |
控制是否通过 RA 消息设置默认路由(即网关)。 | 1 (启用) |
仅在 accept_ra=1 时生效。 |
参数 | 作用 | 默认值 |
---|---|---|
accept_ra |
总开关:控制接口是否接受 RA 消息(影响所有 RA 相关功能)。 | 1 (启用) |
accept_ra_defrtr |
子功能:在 RA 接受的基础上,决定是否通过 RA 自动添加默认路由(默认网关)。 | 1 (启用) |
accept_ra=1
时:
accept_ra_defrtr
)进一步控制。accept_ra_defrtr=1
:
Router Lifetime
字段添加默认路由。default via fe80::1 dev eth0 proto ra # RA 生成的默认路由
accept_ra_defrtr=0
:
accept_ra=0
时:
accept_ra_defrtr
)失效。# 启用 RA 处理,并自动设置默认路由
sysctl net.ipv6.conf.eth0.accept_ra=1
sysctl net.ipv6.conf.eth0.accept_ra_defrtr=1
# 接收 RA 生成地址,但禁用默认路由自动设置
sysctl net.ipv6.conf.eth0.accept_ra=1
sysctl net.ipv6.conf.eth0.accept_ra_defrtr=0
ip -6 route add default via 2001:db8::1
# 完全禁用 RA 处理
sysctl net.ipv6.conf.eth0.accept_ra=0
检查参数值:
sysctl net.ipv6.conf.eth0.{accept_ra,accept_ra_defrtr}
查看默认路由:
ip -6 route show | grep "default"
抓包分析 RA:
tcpdump -i eth0 -vvv icmp6 and "router advertisement"
与 forwarding
的冲突:
若启用 IPv6 转发(net.ipv6.conf.eth0.forwarding=1
),内核默认设置 accept_ra=0
,需手动覆盖:
sysctl -w net.ipv6.conf.eth0.accept_ra=2 # 允许接收 RA
多接口优先级:
在多网卡设备中,可为不同接口设置不同策略:
# eth0 作为 WAN 口,自动获取默认路由
sysctl net.ipv6.conf.eth0.accept_ra_defrtr=1
# eth1 作为 LAN 口,不设置默认路由
sysctl net.ipv6.conf.eth1.accept_ra_defrtr=0
通过合理配置 accept_ra
和 accept_ra_defrtr
,可灵活平衡 IPv6 网络的自动化与可控性,适应从智能家居到数据中心的全场景需求。
accept_ra
与 accept_ra_defrtr
的区别与关系accept_ra
和 accept_ra_defrtr
是 Linux 系统中控制 IPv6 路由器广播(Router Advertisements, RA)行为的两个关键参数,二者协同工作但职责不同。以下是它们的核心区别、依赖关系及典型应用场景:
参数 | 作用 | 默认值 |
---|---|---|
accept_ra |
总开关:控制接口是否接受 RA 消息(影响所有 RA 相关功能)。 | 1 (启用) |
accept_ra_defrtr |
子功能:在 RA 接受的基础上,决定是否通过 RA 自动添加默认路由(默认网关)。 | 1 (启用) |
accept_ra
是前提:accept_ra=1
时,accept_ra_defrtr
的设置才会生效。若 accept_ra=0
,RA 消息被完全忽略,accept_ra_defrtr
的值无意义。accept_ra_defrtr
的独立性:accept_ra=1
,若 accept_ra_defrtr=0
,系统仍会处理 RA 消息(如自动配置地址),但不会添加默认路由。echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra # 启用 RA 接受
echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr # 启用默认路由配置(默认)
autoconf=1
)。default via fe80::1 dev eth0
)。echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra # 启用 RA 接受
echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr # 禁用默认路由配置
ip -6 route add default via 2001:db8::1
.echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_ra # 禁用 RA 接受
echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr # 此设置无效(因 RA 已禁用)
accept_ra
的全局控制:accept_ra=0
,所有 RA 相关功能(包括地址生成、路由添加)均被禁用。accept_ra_defrtr
的精细控制:accept_ra=1
时,可通过 accept_ra_defrtr
选择性启用/禁用默认路由。参数 | 作用 | 协同配置建议 |
---|---|---|
autoconf |
控制是否通过 RA 自动生成 IPv6 地址(SLAAC)。 | 需 accept_ra=1 时生效。 |
ra_defrtr_metric |
设置通过 RA 添加的默认路由的优先级(metric)。 | 默认 1024 ,可调整以优化路由选择。 |
forwarding |
启用 IPv6 数据包转发(路由器模式)。 | 路由器设为 1 ,主机设为 0 。 |
accept_ra
或 accept_ra_defrtr
,防止恶意 RA 诱导错误路由。# 禁用 RA 接受(完全防护)
echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_ra
# 或仅禁用默认路由(允许地址自动配置)
echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra
echo 0 > /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr
ra_defrtr_metric
调整优先级:echo 512 > /proc/sys/net/ipv6/conf/eth0/ra_defrtr_metric # 降低 RA 默认路由优先级
accept_ra
是总开关:控制是否处理 RA 消息,影响所有 RA 相关功能。accept_ra_defrtr
是子开关:在 RA 接受的基础上,控制默认路由的自动添加。accept_ra=1
和 accept_ra_defrtr=1
(自动配置地址和路由)。accept_ra_defrtr=0
,甚至完全禁用 accept_ra=0
。accept_ra
和 accept_ra_defrtr
是 Linux IPv6 网络配置中的两个关键参数,分别控制是否接受路由通告(RA)消息以及是否接受 RA 中的默认路由信息。以下是它们的详细对比和配置指南:
accept_ra
参数0
:拒绝 所有 RA 消息(包括路由、前缀等信息)。1
:接受 RA 消息(默认值,但仅在 forwarding
关闭时生效)。2
:强制接受 RA 消息(无论 forwarding
是否关闭)。1
。accept_ra_defrtr
参数0
:拒绝 RA 中的默认路由(需手动配置路由)。1
:接受 RA 中的默认路由(默认值)。1
。accept_ra=0
:直接禁用 RA,accept_ra_defrtr
失效。accept_ra=1/2
:需结合 accept_ra_defrtr
决定默认路由策略。accept_ra=1
, accept_ra_defrtr=1
(自动获取路由)。accept_ra=2
, accept_ra_defrtr=1
(强制接收 RA 并学习路由)。accept_ra=0
(禁用 RA,防止路由劫持)。# 全局设置(影响所有接口)
echo 1 > /proc/sys/net/ipv6/conf/all/accept_ra
echo 1 > /proc/sys/net/ipv6/conf/all/accept_ra_defrtr
# 针对特定接口(如 eth0)
echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra
echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr
编辑 /etc/sysctl.conf
,添加:
# 全局配置
net.ipv6.conf.all.accept_ra = 1
net.ipv6.conf.all.accept_ra_defrtr = 1
# 针对特定接口(如 eth0)
net.ipv6.conf.eth0.accept_ra = 1
net.ipv6.conf.eth0.accept_ra_defrtr = 1
执行 sysctl -p
应用配置。
查看当前值:
sysctl net.ipv6.conf.all.accept_ra net.ipv6.conf.all.accept_ra_defrtr
监控 RA 消息:
radvdump # 抓取 RA 报文,观察路由信息
检查路由表:
ip -6 route show # 确认默认路由是否存在
eth0
)会覆盖全局(all
)和默认(default
)设置。通过合理配置 accept_ra
和 accept_ra_defrtr
,您可以精准控制 IPv6 网络的行为,适配主机、路由器或安全加固等场景需求。
accept_ra
和 accept_ra_defrtr
是 Linux 系统中与 IPv6 路由器公告(Router Advertisement, RA) 相关的两个内核参数,但它们的作用和范围有所不同。以下是详细对比和解释:
accept_ra
控制是否接受并处理 IPv6 路由器公告(RA) 消息,并决定如何处理其中的信息(如地址配置、路由等)。
0
:完全拒绝 RA 消息。1
:在非路由模式(forwarding=0
)下接受 RA。2
:强制接受 RA,无论是否处于路由模式(forwarding=1
)。1
(允许非路由模式下接受 RA)。autoconf=1
时,通过 RA 自动获取 IPv6 地址。accept_ra_defrtr=1
,则从 RA 中获取默认路由。# 禁用 RA
sysctl -w net.ipv6.conf.all.accept_ra=0
# 强制接受 RA(即使处于路由模式)
sysctl -w net.ipv6.conf.all.accept_ra=2
accept_ra_defrtr
控制是否接受 RA 中的 默认路由信息(即路由器的默认网关)。
0
:拒绝从 RA 中获取默认路由。1
:接受默认路由(默认值)。1
(允许接受默认路由)。accept_ra
:只有当 accept_ra
允许接收 RA(如 accept_ra=1
或 2
)时,accept_ra_defrtr
才能生效。# 禁用接受默认路由(但允许其他 RA 信息)
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=0
# 允许接受默认路由(默认行为)
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=1
参数 | 作用范围 | 依赖关系 |
---|---|---|
accept_ra |
是否接受 RA 消息及整体信息 | 无(独立控制 RA 接收) |
accept_ra_defrtr |
是否接受 RA 中的默认路由 | 依赖 accept_ra ≥ 1(需允许 RA) |
accept_ra=0
,则无论 accept_ra_defrtr
如何设置,系统都不会接收 RA 消息,因此默认路由也不会被添加。accept_ra=1
或 2
,且 accept_ra_defrtr=1
,则系统会从 RA 中获取默认路由。accept_ra_defrtr=0
,即使 accept_ra
允许 RA,系统也不会添加默认路由,但可能仍会通过 RA 获取地址(若 autoconf=1
)。# 允许接收 RA 并接受默认路由
sysctl -w net.ipv6.conf.all.accept_ra=2
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=1
# 接受 RA,但拒绝默认路由
sysctl -w net.ipv6.conf.all.accept_ra=1
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=0
# 手动配置默认路由
ip -6 route add default via <router_ipv6_address>
小米 MIUI 默认可能将 accept_ra_defrtr=0
,导致无法通过 RA 获取默认路由:
# 临时修复(需 Root 权限)
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=1
sysctl -w net.ipv6.conf.wlan0.accept_ra_defrtr=1
# 永久修复(写入配置文件)
echo "net.ipv6.conf.all.accept_ra_defrtr = 1" >> /etc/sysctl.conf
sysctl -p
# 查看全局设置
cat /proc/sys/net/ipv6/conf/all/accept_ra
cat /proc/sys/net/ipv6/conf/all/accept_ra_defrtr
# 查看特定接口(如 eth0)
cat /proc/sys/net/ipv6/conf/eth0/accept_ra
cat /proc/sys/net/ipv6/conf/eth0/accept_ra_defrtr
ip -6 route show
# 应包含类似条目:default via fe80::1 dev eth0
优先级与依赖:
accept_ra
是基础,决定是否接收 RA。若 accept_ra=0
,其他 RA 相关参数(如 accept_ra_defrtr
)均无效。accept_ra_defrtr
是补充,仅控制 RA 中默认路由的处理。安全风险:
accept_ra=2
可能存在风险(接受所有 RA),需确保网络环境可信。accept_ra_defrtr=0
并手动配置路由。与 autoconf
的关联:
autoconf=1
(默认)时,accept_ra
允许 RA 后,系统会自动通过 RA 配置 IPv6 地址。accept_ra
:控制是否接收 RA 消息的整体开关。accept_ra_defrtr
:在允许 RA 的前提下,控制是否接受默认路由信息。通过合理配置这两个参数,可以灵活控制 IPv6 的地址和路由自动配置行为,适用于服务器、客户端或移动设备(如修复小米 MIUI 的 IPv6 连接问题)。
accept_ra
和 accept_ra_defrtr
都是 Linux 系统中用于配置 IPv6 网络的重要参数,它们位于 /proc/sys/net/ipv6/conf
目录下,下面为你详细介绍这两个参数。
accept_ra
accept_ra
用于控制设备是否接收路由器通告(Router Advertisement,RA)消息。在 IPv6 网络中,路由器会定期发送 RA 消息,其中包含网络前缀、跳数限制、默认网关等重要信息,设备通过接收这些消息可以实现无状态地址自动配置(SLAAC),即自动获取 IPv6 地址和相关网络配置。
1
:表示设备接受 RA 消息。当设置为该值时,设备会监听网络中的 RA 消息,并根据消息内容进行相应的配置,如自动生成 IPv6 地址、设置默认网关等。0
:表示设备拒绝接受 RA 消息。此时设备无法通过 SLAAC 自动获取 IPv6 地址和配置信息,需要手动配置地址或者依赖 DHCPv6 服务器来获取相关信息。sysctl
命令修改,例如全局禁用 RA 接收:sysctl -w net.ipv6.conf.all.accept_ra=0
针对特定接口(如 ens33
)禁用:
sysctl -w net.ipv6.conf.ens33.accept_ra=0
/etc/sysctl.conf
文件,添加或修改相应配置项,如全局禁用:net.ipv6.conf.all.accept_ra = 0
特定接口(如 ens33
)禁用:
net.ipv6.conf.ens33.accept_ra = 0
修改后执行 sysctl -p
使配置立即生效。
accept_ra
设置为 1
,方便设备自动获取 IPv6 地址,实现即插即用。0
,通过手动配置或 DHCPv6 来管理地址分配,避免潜在的安全风险。accept_ra_defrtr
accept_ra_defrtr
主要控制设备是否接受 RA 消息中指定的默认路由器。即使设备接受了 RA 消息(accept_ra = 1
),也可以选择是否将 RA 中指定的路由器作为默认网关。
1
:表示接受 RA 消息中指定的默认路由器。设备会将 RA 中指定的路由器设置为默认网关,后续发往外部网络的 IPv6 数据包将通过该路由器进行转发。0
:表示拒绝接受 RA 消息中指定的默认路由器。设备不会使用 RA 中指定的路由器作为默认网关,需要通过其他方式(如手动配置、DHCPv6)来指定默认网关。与 accept_ra
类似,可通过 sysctl
命令进行临时配置,通过编辑 /etc/sysctl.conf
文件进行永久配置。例如,全局禁用接受 RA 中的默认路由器:
sysctl -w net.ipv6.conf.all.accept_ra_defrtr=0
永久配置则在 /etc/sysctl.conf
中添加:
net.ipv6.conf.all.accept_ra_defrtr = 0
然后执行 sysctl -p
使配置生效。
accept_ra_defrtr
设置为 0
,通过手动或可靠的 DHCPv6 方式指定默认网关。0
。accept_ra
是 accept_ra_defrtr
生效的前提条件。如果 accept_ra
设置为 0
,即设备不接收 RA 消息,那么 accept_ra_defrtr
无论设置为何值都没有实际意义,因为设备根本不会收到包含默认路由器信息的 RA 消息。只有当 accept_ra
设置为 1
,设备能够接收 RA 消息时,accept_ra_defrtr
才会决定是否使用 RA 中指定的默认路由器。
accept_ra
和 accept_ra_defrtr
是 Linux 系统中与 IPv6 路由器通告(RA)相关的两个参数,它们共同决定了设备如何处理 RA 消息中的信息。以下是对这两个参数的详细说明及其关系:
accept_ra
0
:不接受 RA 消息。1
:接受 RA 消息。2
:仅在没有默认路由器时接受 RA 消息。accept_ra
设置为 0
,设备将完全忽略所有 RA 消息,不会根据 RA 消息进行任何自动配置,包括默认网关和其他网络信息。accept_ra_defrtr
0
:不接受默认路由器信息。1
:接受默认路由器信息(默认值)。accept_ra_defrtr
设置为 0
,设备将忽略 RA 消息中的默认路由器信息,不会自动配置默认网关,但仍然可以接受其他 RA 消息中的信息(如前缀信息)。accept_ra
和 accept_ra_defrtr
的关系:
accept_ra
设置为 0
,设备将完全忽略 RA 消息,accept_ra_defrtr
的设置将无效。accept_ra
设置为 1
或 2
,设备将接受 RA 消息,此时 accept_ra_defrtr
的设置决定了是否接受 RA 消息中的默认路由器信息。accept_ra
设置为 2
,设备只有在没有默认路由器时才会接受 RA 消息,此时 accept_ra_defrtr
的设置仍然有效,但设备会优先使用已有的默认路由器。# 查看 accept_ra 的值
cat /proc/sys/net/ipv6/conf/ens33/accept_ra
# 查看 accept_ra_defrtr 的值
cat /proc/sys/net/ipv6/conf/ens33/accept_ra_defrtr
通过直接写入值到文件:
# 禁用 ens33 接口的 RA 接受
echo 0 > /proc/sys/net/ipv6/conf/ens33/accept_ra
# 启用 ens33 接口的 RA 接受
echo 1 > /proc/sys/net/ipv6/conf/ens33/accept_ra
# 启用 ens33 接口的默认路由器信息接受
echo 1 > /proc/sys/net/ipv6/conf/ens33/accept_ra_defrtr
# 禁用 ens33 接口的默认路由器信息接受
echo 0 > /proc/sys/net/ipv6/conf/ens33/accept_ra_defrtr
sysctl
命令# 查看当前值
sysctl net.ipv6.conf.ens33.accept_ra
sysctl net.ipv6.conf.ens33.accept_ra_defrtr
# 修改值
sysctl -w net.ipv6.conf.ens33.accept_ra=0
sysctl -w net.ipv6.conf.ens33.accept_ra_defrtr=0
# 永久修改(编辑 /etc/sysctl.conf)
echo "net.ipv6.conf.ens33.accept_ra = 0" >> /etc/sysctl.conf
echo "net.ipv6.conf.ens33.accept_ra_defrtr = 0" >> /etc/sysctl.conf
sysctl -p
accept_ra
会阻止设备接受任何 RA 消息,而禁用 accept_ra_defrtr
仅阻止设备接受默认路由器信息。accept_ra
设置为 0
。如果需要接受 RA 消息但手动配置默认网关,可以将 accept_ra
设置为 1
并将 accept_ra_defrtr
设置为 0
。通过合理配置 accept_ra
和 accept_ra_defrtr
参数,可以灵活控制设备如何处理 RA 消息,以满足不同的网络需求。
accept_ra
和 accept_ra_defrtr
是两个与 IPv6 网络配置相关的参数,具体含义如下:
1
时,网络接口会接受来自路由器的 RA 消息,这些消息包含了网络配置信息,如前缀、默认路由器等。0
时,网络接口将忽略所有 RA 消息,不会自动获取网络配置信息。1
),以便网络接口能够自动获取并使用路由器提供的网络配置信息。1
时,网络接口会接受 RA 消息中提供的默认路由器信息,并将其作为默认路由器使用。0
时,网络接口将忽略 RA 消息中的默认路由器信息,不会将其作为默认路由器使用。1
),以便网络接口能够自动获取并使用路由器提供的默认路由信息。accept_ra
控制是否接受所有的 RA 消息,从而决定是否自动获取网络配置信息。accept_ra_defrtr
控制在接受 RA 消息的情况下,是否接受其中的默认路由器信息。希望这些信息对你有帮助。如果有更多问题,请随时提问。
在IPv6网络配置中,accept_ra
和accept_ra_defrtr
是Linux内核参数(通过sysctl
配置),主要用于控制路由器公告(Router Advertisements, RA)的处理行为。以下是逐步解释:
控制是否接受IPv6路由器的RA(Router Advertisements)。RA用于自动配置IPv6地址、默认路由和其他网络参数。
# 禁用RA自动配置
sysctl -w net.ipv6.conf.eth0.accept_ra=0
控制是否将RA中的默认路由(即default router
)添加到本地路由表。此参数是accept_ra
的细化控制。
需accept_ra=1
生效时,accept_ra_defrtr
才有意义。
# 允许RA自动配置地址,但禁止添加默认路由
sysctl -w net.ipv6.conf.eth0.accept_ra=1
sysctl -w net.ipv6.conf.eth0.accept_ra_defrtr=0
参数 | 作用范围 | 典型值 | 影响 |
---|---|---|---|
accept_ra |
全局RA接受控制 | 0/1/2 | 决定是否处理RA报文 |
accept_ra_defrtr |
默认路由的精细化控制 | 0/1 | 决定是否采纳RA中的默认网关 |
eth0
、wlan0
)不同而改变。/etc/sysctl.conf
或/etc/sysctl.d/
下的文件以永久生效。如需验证当前值,可使用命令:
sysctl net.ipv6.conf.eth0.accept_ra
sysctl net.ipv6.conf.eth0.accept_ra_defrtr
accept_ra
与 accept_ra_defrtr
的对比解析参数 | 功能 | 默认值 | 依赖条件 |
---|---|---|---|
accept_ra |
控制是否接收 IPv6 路由器通告(RA),用于自动配置地址和路由。 | 1 | 当 forwarding=1 (启用转发)时,默认禁用 RA,需显式设置为 2 以强制接收。 |
accept_ra_defrtr |
控制是否通过 RA 设置默认路由(如网关信息)。 | 1 | 仅在 accept_ra≥1 时生效,若 accept_ra=0 则完全失效。 |
• 主机模式(自动获取默认路由)
• 配置:
bash sysctl -w net.ipv6.conf.eth0.accept_ra=1 sysctl -w net.ipv6.conf.eth0.accept_ra_defrtr=1
• 作用:接收 RA 并自动设置默认路由(如家庭网络中的客户端设备)。
• 路由器模式(禁止默认路由干扰)
• 配置:
bash sysctl -w net.ipv6.conf.eth0.forwarding=1 sysctl -w net.ipv6.conf.eth0.accept_ra=2 sysctl -w net.ipv6.conf.eth0.accept_ra_defrtr=0
• 作用:允许接收 RA(用于学习上游路由),但禁止自动设置默认路由,避免与手动路由策略冲突。
• 安全风险:
• 恶意 RA 可能篡改默认路由(如虚假网关攻击),建议在不可信网络中禁用 accept_ra
或结合防火墙规则过滤非法 RA。
• 调试工具:
• 查看默认路由:ip -6 route show default
。
• 抓包验证 RA:tcpdump -i eth0 -nn ip6 and icmp6
。
• 旧内核(<2.6.37):
• 即使设置 accept_ra=2
,在 forwarding=1
时仍可能无法接收 RA,需额外关闭接口级转发(如 eth0.forwarding=0
)。
• 新内核(≥2.6.37):
• accept_ra=2
可直接覆盖转发限制,无需调整接口级转发参数。
• accept_ra
是基础控制层,决定是否处理 RA;accept_ra_defrtr
是应用层,决定是否基于 RA 设置默认路由。
• 主机场景:二者均启用以实现自动配置;路由器场景:启用 accept_ra=2
但禁用 accept_ra_defrtr=0
,确保路由策略可控。
• 安全加固:在不可信网络中需限制 RA 接收,或结合 ip6tables
过滤非法流量。
accept_ra
和 accept_ra_defrtr
是 Linux 系统中与 IPv6 路由通告(Router Advertisement,RA)相关的两个重要内核参数。以下是关于它们的详细介绍:
参数说明:
accept_ra
是一个用于控制是否接收和处理路由器通告(RA)消息的内核参数。它位于 /proc/sys/net/ipv6/conf/<接口名>/
目录下,可以通过查看或修改该文件来获取和设置对应网络接口的 accept_ra
参数值。取值含义:
参数说明:
accept_ra_defrtr
参数同样位于 /proc/sys/net/ipv6/conf/<接口名>/
目录下,用于控制是否接受通过 RA 消息接收到的默认路由器信息。取值含义:
accept_ra
是更宏观的控制参数,决定了设备是否接收整个 RA 消息;而 accept_ra_defrtr
则是在 accept_ra
允许接收 RA 消息的基础上,进一步决定是否接受其中的默认路由器信息。只有当 accept_ra
设置为允许接收(值为 1 或 2)时,accept_ra_defrtr
的设置才有意义。accept_ra
设置为 1(接收 RA 消息),但将 accept_ra_defrtr
设置为 0(不接受默认路由器信息)。相反,如果需要设备自动获取并使用 RA 消息中的所有信息,包括默认路由器信息,那么可以将这两个参数都设置为合适的值(如都为 1)。总之,accept_ra
和 accept_ra_defrtr
参数在 Linux 系统的 IPv6 网络配置中起着关键作用,合理配置它们可以帮助用户满足不同的网络环境和需求。