IEPL 流量款-深圳移动 IPv6 - 香港 IPv6 快速配置指南

系统准备

在开始之前,请确保您的系统满足以下条件:

  • 已启用 IPv6 支持。
  • 拥有 root 权限(或使用 sudo)。

本指南提供针对以下系统的 IPv6 配置方法:

  • Debian 12
  • 其他 Linux 发行版(需自行研究和调整)

快速配置一:修改 IPv6 地址

自动检测网卡并修改地址

以下命令直接复制粘贴使用。

sudo bash -c 'NIC=$(ip -6 addr | grep -B1 "scope global" | awk -F": " "/^[0-9]+:/{print \$2}" | head -n 1); if [ -z "$NIC" ]; then echo "Network interface not found"; exit 1; fi; PUBLIC_IP_WITH_MASK=$(ip -6 addr show dev $NIC | grep "scope global" | grep -v fd00 | grep -v fe80 | awk "{print \$2}" | head -n 1); PUBLIC_IP=$(echo "$PUBLIC_IP_WITH_MASK" | cut -d"/" -f1); PUBLIC_MASK=$(echo "$PUBLIC_IP_WITH_MASK" | cut -d"/" -f2); FD_IP_WITH_MASK=$(ip -6 addr show dev $NIC | grep "scope global" | grep fd00 | awk "{print \$2}" | head -n 1); FD_IP=$(echo "$FD_IP_WITH_MASK" | cut -d"/" -f1); FD_MASK=$(echo "$FD_IP_WITH_MASK" | cut -d"/" -f2); if [ -z "$PUBLIC_IP" ] || [ -z "$FD_IP" ]; then echo "Unable to detect IPv6 addresses"; exit 1; fi; ORIGINAL_GATEWAY=$(ip -6 route show default | head -n 1 | awk "{print \$3}"); if [ -z "$ORIGINAL_GATEWAY" ]; then echo "Unable to get original gateway"; exit 1; fi; systemctl stop networking; ip -6 addr flush dev $NIC; CONFIG_FILE="/etc/network/interfaces.d/50-cloud-init"; cat > "$CONFIG_FILE" << EOFCONFIG
auto lo
iface lo inet loopback

auto $NIC
iface $NIC inet6 static
    address $PUBLIC_IP/$PUBLIC_MASK
    gateway fd00::1
    post-up ip -6 addr add $FD_IP/$FD_MASK dev $NIC
    post-up ip -6 addr change $PUBLIC_IP/$PUBLIC_MASK dev $NIC preferred_lft 0
    post-up ip -6 rule add from $PUBLIC_IP table 100
    post-up ip -6 route add default via $ORIGINAL_GATEWAY dev $NIC table 100
    dns-nameservers 2001:4860:4860::8888 2001:4860:4860::8844
EOFCONFIG
ifup $NIC; echo "Configuration completed! Interface: $NIC Public IPv6: $PUBLIC_IP/$PUBLIC_MASK Private IPv6: $FD_IP/$FD_MASK Default gateway: fd00::1 Public return gateway: $ORIGINAL_GATEWAY"; echo ""; echo "Test 1: Ping original gateway using public IP"; ping6 -I $PUBLIC_IP -c 3 $ORIGINAL_GATEWAY; echo ""; echo "Test 2: Ping Google DNS"; ping6 -c 3 2001:4860:4860::8888'

解决 UDP 通信问题

如果发现 UDP 通信不通,请确保您的监听端口仅绑定到分配给您的公网 IPv6 地址,而非全局绑定。

可以使用以下命令精确获取您的公网 IPv6 地址:

NIC=$(ip -6 addr | grep -B1 'scope global' | awk -F': ' '/^[0-9]+:/{print $2}' | head -n 1)
PUBLIC_IPV6=$(ip -6 addr show dev $NIC | grep 'scope global' | grep -v fd00 | grep -v fe80 | awk '{print $2}' | cut -d'/' -f1)
echo "请绑定您的监听端口到: $PUBLIC_IPV6"

其他 Linux 发行版

对于非 Debian/Ubuntu 的系统(如 CentOS、Rocky Linux、Fedora),需要自行研究和调整相关配置。


功能说明

  • 本指南确保系统的 IPv6 地址配置正确,并在系统重启后依然生效。
  • 自动检测网卡和 IPv6 地址,适配不同网络环境。
  • 使用脚本快速完成 IEPL IPv6 网络的配置。

如需进一步技术支持,请联系 HaloCloud 客服团队!

Copyright © 2019-2024 HaloCloud Network Limited. All rights reserved. all right reserved,powered by Gitbook该文章修订时间: 2025-06-09 15:29:55

results matching ""

    No results matching ""