为什么要禁用
因为有时候会出现下面的问题。
Err:4 https://download.docker.com/linux/debian bookworm InRelease Could not handshake: Error in the pull function. [IP: 2600:9000:26a6:bc00:3:db06:4200:93a1 443]这种一般都是 IPv6 的问题,可能是家中的路由器关闭了 IPv6 的使用。
有时候出于安全或者是其他的原因,不使用 IPv6,所以只能从 Linux 主机上下手。
也就是禁用掉 IPv6,只使用 IPv4。
设置禁用 IPv6
打开 sysctl.conf 文件:
sudo vim /etc/sysctl.conf在文本末尾添加:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1保存一下。
如何恢复
也就是如何再次使用 IPv6
就是把这三个的值重新改成 0 即可。
配置生效
配置添加后,需要执行以下命令使其生效:
# 重新加载 sysctl 配置
sudo sysctl -p检验是否真的生效
执行以下命令检查配置是否生效:
# 检查 IPv6 状态
cat /proc/sys/net/ipv6/conf/all/disable_ipv6如果输出为 1,则表示配置成功,IPv6 已被禁用。
这样问题也就解决了。