目 录CONTENT

文章目录

VPS 上禁用与启用 IPv6 全教程

Leu
Leu
2025-11-05 / 0 评论 / 1 点赞 / 29 阅读 / 0 字

在 VPS 上,有时出于安全或网络需求,你可能想 禁用 IPv6;有时又需要 开启 IPv6 来使用新一代网络服务。本文就来详细讲解如何在 Linux VPS 上管理 IPv6。

⚠️ 本文以 Ubuntu / Debian / CentOS 系统为例,其他 Linux 发行版也适用,只需根据网络配置方式做小调整。

一、检查当前 IPv6 状态

在动手前,先确认 VPS 的 IPv6 当前状态:

# 查看内核 IPv6 是否禁用
cat /proc/sys/net/ipv6/conf/all/disable_ipv6

# 查看网卡是否有 IPv6 地址
ip a
  • 如果 disable_ipv6 输出 0,表示 IPv6 功能已启用

  • 如果输出 1,表示 IPv6 已禁用

  • 网卡下有 inet6 地址,则 IPv6 已可用

二、禁用 IPv6

禁用 IPv6 主要有两种方式:内核级系统级

1️⃣ 方法一:通过 sysctl 永久禁用

  1. 编辑配置文件(如果不存在可以新建):

sudo nano /etc/sysctl.conf
  1. 添加以下内容:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
  1. 立即生效:

sudo sysctl -p
  1. 验证:

ip a | grep inet6

如果没有输出 IPv6 地址,禁用成功 ✅

2️⃣ 方法二:通过 GRUB 禁用(彻底禁用)

  1. 编辑 GRUB 配置:

sudo nano /etc/default/grub
  1. 找到:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

改成:

GRUB_CMDLINE_LINUX_DEFAULT="quiet ipv6.disable=1"
  1. 更新 GRUB 并重启:

# Ubuntu/Debian
sudo update-grub

# CentOS / Rocky / AlmaLinux
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot

三、启用 IPv6

如果你之前禁用了 IPv6 或系统没有自动启用:

1️⃣ 方法一:通过 sysctl 启用

sudo nano /etc/sysctl.conf

添加/修改:

net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.all.forwarding = 1  # 如果需要路由转发

生效:

sudo sysctl -p

2️⃣ 方法二:通过 GRUB 启用

如果 GRUB 中有 ipv6.disable=1,删除该参数并更新 GRUB:

# 修改 /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet"

# 更新 GRUB
sudo update-grub   # Ubuntu/Debian
sudo grub2-mkconfig -o /boot/grub2/grub.cfg   # CentOS
sudo reboot

3️⃣ 配置网卡获取 IPv6 地址(Ubuntu/Debian Netplan 示例)

sudo nano /etc/netplan/01-netcfg.yaml

修改:

network:
  version: 2
  ethernets:
    eth0:
      dhcp4: true
      dhcp6: true
      accept-ra: true

应用:

sudo netplan apply
ip a | grep inet6

如果没有分配公网 IPv6,可能需要在 VPS 控制台开启 IPv6。

四、测试 IPv6 是否可用

ping6 ipv6.google.com
  • 返回 64 bytes from ... → IPv6 已生效

  • 返回 Network unreachable → 可能没有分配 IPv6 地址

五、总结

操作

方法

禁用 IPv6

sysctlGRUB

启用 IPv6

删除 GRUB 参数 + sysctl + 网卡配置

检查状态

cat /proc/sys/net/ipv6/conf/all/disable_ipv6ip a

测试网络

ping6 ipv6.google.com

通过以上步骤,你可以灵活地在 VPS 上开启或禁用 IPv6,满足不同的网络需求。

1
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区