折腾我好久,真没见过这样的。。

我用的debian系统,其他系统参考一下。

解决办法:

先把IPV6的注释去掉:

nano /etc/network/interfaces

首先查看是否禁用了IPV6,返回值是1说明禁用了:

sysctl net.ipv6.conf.all.disable_ipv6
sysctl net.ipv6.conf.default.disable_ipv6

启用:

sysctl -w net.ipv6.conf.all.disable_ipv6=0
sysctl -w net.ipv6.conf.default.disable_ipv6=0

给它添加永久性:

echo "net.ipv6.conf.all.disable_ipv6 = 0" >> /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 0" >> /etc/sysctl.conf
sysctl -p

刷新网络接口:(先看,别急着执行)

sudo ip addr flush dev ens3

执行这个后会断网,很坑爹,让我重装了不知道多少次

通过控制面板VNC登录后执行重启网络:

sudo systemctl restart networking

不知道直接控制台重启有没有效果,以后新开机器了试试吧

这样的话 就可以开启IPV6了
因为上面那个执行后会断网,还需要进VNC里执行最后一行命令,所以用脚本就很省事

nano network.sh

把这些写进去

#!/bin/bash
#
# 脚本功能:安全地刷新网络接口 ens3 并立即重启网络服务,以防SSH中断后无法操作。
#

echo "正在刷新网络接口 ens3 ..."

# 使用 "&&" 来确保只有在第一条命令成功执行后,才执行第二条命令。
# 这两个命令会连续执行,不会给SSH连接超时的机会。
sudo ip addr flush dev ens3 && sudo systemctl restart networking

echo "操作完成:网络接口已刷新,网络服务已重启。"

给权限并执行:

chmod +x network.sh
./network.sh
最后修改:2025 年 07 月 04 日
如果觉得我的文章对你有用,请随意赞赏