轻量级服务器配置ipv6?

在轻量级服务器上配置 IPv6 的步骤取决于你使用的操作系统(如 Ubuntu、CentOS、Debian 等)以及你的网络环境。以下是一个通用的指南,适用于大多数 Linux 发行版,比如 Ubuntu 20.04/22.04CentOS 7+/Rocky Linux


✅ 前提条件

  1. 服务器支持 IPv6:确认你的服务器提供商支持 IPv6 地址分配(例如阿里云、腾讯云、AWS、DigitalOcean、Vultr 等)。
  2. 已获取 IPv6 地址段或单个地址:通常由服务商提供,或者可以通过 SLAAC/DHCPv6 自动获取。
  3. SSH 访问权限

📌 一、检查当前 IPv6 支持情况

cat /proc/sys/net/ipv6/conf/all/disable_ipv6

如果输出是 1,说明 IPv6 被禁用了,需要先启用:

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

如果你希望永久生效,可以编辑 /etc/sysctl.conf 或创建一个新文件:

echo "net.ipv6.conf.all.disable_ipv6 = 0" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 0" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

📌 二、查看网卡信息

ip a

你会看到类似这样的输出:

inet6 fe80::xxxx:xxxx:xxxx:xxxx dev eth0 scope link

这表示网卡已经启用了 IPv6,但可能只是本地链路地址(link-local),不是公网地址。


📌 三、手动配置静态 IPv6 地址(推荐)

假设你的 IPv6 地址为:

  • IPv6 地址:2001:db8::1
  • 子网前缀长度:64
  • 网关:fe80::1
  • DNS:2001:4860:4860::8888, 2001:4860:4860::8844

对于 Ubuntu (使用 Netplan)

编辑 Netplan 配置文件(路径可能不同,通常是 /etc/netplan/*.yaml):

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

添加如下内容:

network:
  version: 2
  ethernets:
    eth0:
      dhcp4: no
      addresses:
        - 2001:db8::1/64
      gateway6: fe80::1
      nameservers:
        addresses:
          - 2001:4860:4860::8888
          - 2001:4860:4860::8844

应用配置:

sudo netplan apply

对于 CentOS/Rocky Linux

编辑网卡配置文件,例如:

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

添加以下内容:

IPV6INIT=yes
IPV6ADDR=2001:db8::1/64
IPV6_DEFAULTGW=fe80::1%eth0
DNS1=2001:4860:4860::8888
DNS2=2001:4860:4860::8844

重启网络服务:

sudo systemctl restart NetworkManager
# 或者使用传统方式:
sudo systemctl restart network

📌 四、自动配置 IPv6(SLAAC 或 DHCPv6)

如果你的网络支持 SLAAC(无状态地址自动配置),系统可能会自动生成 IPv6 地址。

你也可以使用 dhclient 获取 IPv6 地址(需支持 DHCPv6):

sudo dhclient -6 eth0

📌 五、验证 IPv6 连通性

ping6 2001:4860:4860::8888
curl -6 https://ipv6.google.com

📌 六、防火墙设置(UFW / firewalld)

如果使用 UFW:

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

确保 UFW 支持 IPv6(默认是开启的):

grep IPV6 /etc/default/ufw
# 应该输出:IPV6=yes

📌 七、域名解析中添加 AAAA 记录

登录你的 DNS 控制台(如 Cloudflare、阿里云、GoDaddy),为你的域名添加一条 AAAA 记录,指向你的 IPv6 地址。


🧪 示例:测试 IPv6 Web 服务

如果你运行了 Nginx/Apache,在配置中监听 IPv6:

server {
    listen [::]:80;
    server_name example.com;

    ...
}

然后从外部通过 IPv6 浏览器访问你的网站。


📝 小贴士

  • 如果你用的是云厂商,请先在控制台开通 IPv6。
  • 使用 dig AAAA yourdomain.com 检查 AAAA 记录是否生效。
  • 可以使用 test-ipv6.com 来检测你的 IPv6 是否正常工作。

如果你告诉我你使用的具体发行版和服务器平台(如阿里云、Vultr、本地 VPS 等),我可以给出更精确的配置示例!

是否需要我帮你写一个完整的脚本?

未经允许不得转载:云计算HECS » 轻量级服务器配置ipv6?