如何在自定义内置嵌入式设置中禁用 IPv6

如何在自定义内置嵌入式设置中禁用 IPv6

我有一个使用 buildroot 构建的嵌入式系统。我遇到了许多网络问题,其中之一是我的计算机无法看到其网关,尽管它位于同一子网上。我尝试使用wireshark来分析发生的情况,但没有成功,所以作为最后的手段,我正在考虑尝试关闭对IPv6的支持,因为我不需要它(我的设备不需要DNS或类似的东西,只需要能够与其子网上的其他本地计算机进行通信)。我读到可以通过编辑关闭 IPv6 /etc/modprobe.conf,但我的设置中不存在该文件。我还能做些什么来禁用 IPv6,还是在没有 IPv6 支持的情况下从头开始构建内核的唯一选择?

答案1

我同意 Ulrich 的观点,这听起来不像是 IPv6 问题。不过,以下是禁用 IPv6 的方法。

/etc/sysctl.conf设置以下选项:

net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.all.disable_ipv6 = 1

如果您没有/etc/sysctl.conf创建它并添加这些行,然后重新启动。

或者,每个都有一个/proc可以翻转的界面(和/或创建一个脚本在启动时执行此操作)。

echo 0 > /proc/sys/net/ipv6/conf/all/autoconf
echo 0 > /proc/sys/net/ipv6/conf/all/accept_ra
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6

相关内容