[{"content":" 迁移来源：Evernote Lite 备份链接\n原始链接：https://lite.evernote.com/note/cd2268cc-5205-41df-9b25-1c2da6baa1f0\n【补档】使用阿里云CDT 享受每月200G/4元高速流量\n【补档】使用阿里云CDT 享受每月200G/4元高速流量 更新（2026.01.10）：\n重要提示：从自制镜像中读取到的 alpine virt iso 救援系统，在 VNC 执行 setup-alpine，将正式系统写入到硬盘后，该临时系统还运行在内存中，必须要重启！必须要重启！必须要重启！重启后进入到的 alpine 系统，才是从系统硬盘中读取的正式系统，才可以进行设置 DNS、配置源、清除硬盘标签、执行脚本重装等后续工作。 援引 \u0026amp; 致谢： 使用阿里云CDT 享受每月200G/4元高速流量 后续高阶玩法，支持用脚本重装，请移步： 【全网首发】极限低成本吃满阿里云 CDT 200G 高速流量：Alpine 作为救援系统，一键重装 Debian（修复 GRUB / 清理 isohybrid 残留全流程） 援引源网站证书于 2026 年 1 月 4 日失效，且网站开启了 HSTS，无法为此网站添加例外以访问，web archive 里也没有存档，我保存了一份在本地，本帖对该篇教程的过时内容和不完善内容进行一些修订，该教程同样适合阿里云国际站。\n原理：阿里云香港最近表现不错，但新手轻量优惠不可选择香港，只能正价购买香港轻量，持有成本较高，所以我们可以利用阿里云（含阿里云国际版）每个账号免费赠送的 200 GB CDT（云数据传输）流量，配合配置最低的 ECS 实例，达到低成本搭乘阿里云香港网络快线的方法。\nCDT公网流量免费额度提升至220 GB/月\n产品： CDT 公网流量 免费额度与适用地域： 免费额度为 220 GB/月，其中： 中国内地地域：20 GB/月 非中国内地地域：200 GB/月 线路类型： BGP（多线） 正文：\n本文将介绍如何开启 CDT + 创建阿里云抢占式实例 + 保活，实现月付最低 4 元，享受 200G 单向出网高速流量的方法。\n零、开通阿里云 CDT 功能 在控制台首页搜索框，直接输入“CDT”，自动弹出“控制台 \u0026gt; 云数据传输”选项，点击；或直接访问：https://cdt.console.aliyun.com/overview （阿里云国际站：https://cdt.console.alibabacloud.com/overview ），进入 CDT 工作台。\n确认当前账户下的所有 CDT 子功能，如图示开通，如果还没有开通，选择未开通子项，点击“一键升级”：\n一、开通阿里云 OSS 并上传 alpine 镜像 搜索栏搜索 oss 并开通： 上传镜像至 oss 2.1 点击管理控制台，创建 bucket，地域切记选择香港：\n2.2 创建成功后，进入 bucket，上传所需 apline 镜像：\nhttps://dl-cdn.alpinelinux.org/alpine/v3.23/releases/x86_64/alpine-virt-3.23.2-x86_64.iso\nhttps://dl-cdn.alpinelinux.org/alpine/v3.23/releases/x86_64/alpine-virt-3.23.2-x86_64.iso\n点击上传文件，上传刚刚下载好的 alpine 镜像:\n2.3 保存上传好的镜像链接，下一步要用：\n二、创建系统镜像 导入镜像： 点击 https://ecs.console.aliyun.com/image/region/cn-hongkong （阿里云国际站：https://ecs.console.alibabacloud.com/image/region/cn-hongkong ），导入刚刚上传到 oss 的 alpine 镜像：\n点击下一步：\n“镜像检测 → 导入后执行检测”最好不勾：\n“云盘配置 → 配置云盘属性”勾选，alpine virt ISO 镜像体积很小，虽然原文里给 1GB 空间启动足够，但保险起见，还是建议给 2GB 以上，除非你执意只给 ECS 配置 1GB 的硬盘，但安装许多系统会受限制（系统本体、应用、日志等）。后面创建机器时可选的硬盘容量，必须等于或大于导入镜像步骤设置的云盘容量。\n耐心等待创建完成：\n三、创建抢占式实例 在 https://ecs.console.aliyun.com/server/region/cn-hongkong#/ （阿里云国际站：https://ecs.console.alibabacloud.com/server/region/cn-hongkong#/ ）创建抢占式实例：\n规格搜索：ecs.e-c4m1.large 选中该“经济型”：\n实例使用时长：无确定使用时长（否则按默认只设置 1 小时，1 小时后被删机）； 单台实例上限价格：使用自动出价，香港不同的区价格不一样，而且随资源变化随时浮动，图示价格仅供参考； 实例中断模式：节省停机（必须选这个，否则还是被删机）； 区域香港 B、C、D 区任意，首次创建时，会自动配置好对应地区的 VPC，不需要手动配置； 镜像选我们刚才创建的自定义的 alpine； 系统盘容量看自己选择，ESSD Entry 单 GB 价格便宜，但最低要配置 10 GB，极限容量下，价格比 ESSD 云盘贵，推荐 5 - 8 GB 的 ESSD 云盘或 10 GB 的 ESSD Entry 硬盘，1 - 2 GB 的那种玩法有点极限。 先暂不分配 IPv4 地址，原因是该抢占式实例属于可被随时停机的那种，如果有大户开机，占据了某可用区（香港：B、C、D 区任意）的大量资源，这些抢占式实例被停机后，再次启动时，创建时自动分配的 IPv4 地址会被释放，所以我们需要使用 EIP 来使这台机器的 IPv4 地址固定；安全组、防火墙等自行做入网、出网设置，全开就行；如果对 IPv6 的使用没有强需求，建议不要为实例分配 IPv6 地址，阿里云对 IPv6 的支持仍然不是很好。\n确认配置无误，开氪：\n四、创建 EIP（弹性公网 IP） EIP 纯持有是持续扣费的，只要绑定到实例后，就不扣费了，后期机器如果不要了删除，记得把闲置的 EIP 也删掉，否则会产生额外费用。\n进入 EIP 功能区： 访问：https://vpc.console.aliyun.com/eip/cn-hongkong/eips （阿里云国际：https://vpc.console.alibabacloud.com/eip/cn-hongkong/eips ）创建：\n确认配置，点击购买： 付费模式：按量付费； 地域和可用区：中国香港； 线路类型：BGP(多线)，BGP 多线精品不享受 200GB CDT 免费额度； 网络类型：公网； 安全防护：默认； 计费模式：按 CDT 计费； 带宽峰值：ecs.e-c4m1.large 的口子为 200 Mbps，拉满。 绑定实例： 访问：https://ecs.console.aliyun.com/server/region/cn-hongkong （阿里云国际：https://ecs.console.alibabacloud.com/server/region/cn-hongkong ），操作 → 三个点 → 绑定弹性公网 IP：\n返回弹性公网 IP，创建加入共享带宽，可继续加大出网带宽量： 计费方式：按主流量（入出取大）； 计费模式：按 CDT 计费； 带宽：根据需求自选，拉太大了会增加流量的消耗速度。 在阿里云国际版做过测试，如果下单失败，显示：因安全问题，此次下单被终止，Request ID: 一串 UUID。需要访问：https://account.alibabacloud.com/kyc/index#/kyc 做 KYC 验证，它的审核特别严格，且阿里云国际版注册时，仅支持选择海外地区，根据接码手机号区号，确定账号主体注册区域，如果没有当地合法的长期居留身份，这一步基本无法通过，只能退而求其次，使用实例自带的 200 Mbps 的口子。\n现在就成为 2 Gbps 口子的服务器了。\n五、安装系统 安装 首次需要登录 VNC，输入 root，密码为空，来到 Localhost#: 状态，输入\nsetup-alpine\n进行首次安装，这个跟平时我们安装软件差不多的，一路回车，下一步下一步基本就可以了，其中有几步需要修改一下的，我在图片上标出来。\n这就配置好网络了，阿里云使用 DHCP，不需要手动配置网络。\n这样配置好用户名和密码及时区，代理跳过（如果只按原文图示直接按“49”，有可能会连接到一个速度极慢的源，因为这个镜像列表是实时更新的，截止我做测试时，阿里云的镜像源序号是“44”，这个序号未来还会根据该列表的更新而随时变化，切勿刻舟求剑，需要先按“s show mirrorlist”显示镜像源列表，然后选择来自 https://mirrors.aliyun.com/alpine/ 的源）。\n启用 root 用户，并使用密码方式验证登录。\n配置磁盘、分区、格式化 这一步会提示 No disks available，Try boot media /media/vda ? 意思没有找到可用有磁盘，是否尝试安装到vda云盘上，改\ny\n安装完成后\nreboot\n重启，首次安装向导就完成了。\n重要提示：从自制镜像中读取到的 alpine virt iso 救援系统，在 VNC 执行 setup-alpine，将正式系统写入到硬盘后，该临时系统还运行在内存中，必须要重启！必须要重启！必须要重启！重启后进入到的 alpine 系统，才是从系统硬盘中读取的正式系统，才可以进行设置 DNS、配置源、清除硬盘标签、执行脚本重装等后续工作。\n修改 DNS 由于 alpine 系统还未联网，所以这一步还是需要在 VNC 中操作，如果不设置 DNS，只能 ping 通 IP 地址，无法 ping 通域名。\n输入\nsetup-dns\nDNS domain name:\nnameserver\nDNS 地址随意，推荐：\n1.1.1.1 8.8.8.8\n当系统的网络连接功能完全正常后，便可使用 Xshell 等 ssh 工具进行远程连接。\n安装 curl，vim 先更新一下软件源：\napk update\n安装组件：\napk add curl vim\n其它应用也是类似。\n添加额外源（可选） 仓库配置路径：\n/etc/apk/repositories\n打开仓库配置文件：\nvim /etc/apk/repositories\n将社区源开头注释去掉：\nhttp://mirrors.aliyun.com/alpine/v3.23/main # 默认配置，主要的源 http://mirrors.aliyun.com/alpine/v3.23/community # 社区源，默认未开启，去掉前面#号\nhttp://mirrors.aliyun.com/alpine/v3.23/main # 默认配置，主要的源 http://mirrors.aliyun.com/alpine/v3.23/community # 社区源，默认未开启，去掉前面#号\n添加 edge 源，拥有很多第三方应用，旧版 alpine 配置 edge 源，安装软件时，会产生很多依赖问题，不推荐：\nhttp://mirrors.aliyun.com/alpine/edge/community http://mirrors.aliyun.com/alpine/edge/testing\nhttp://mirrors.aliyun.com/alpine/edge/community http://mirrors.aliyun.com/alpine/edge/testing\n将仓库配置文件保存后，再次更新源：\napk update\n已经开好了，剩下的玩法大伙自己发掘吧，现在可以把 oss 与镜像删除了，防止额外扣费。\n六、保活服务器 需要使用阿里云 sdk。\n先创建一个用户并赋予权限 访问：https://ram.console.aliyun.com/users （阿里云国际版：https://ram.console.alibabacloud.com/users）\n记得保存 AccessKey ID、AccessKey Secret，后面需要用到。\n为刚创建的用户增加授权 新建修改下列脚本，安装必要依赖，设定每分钟执行。切记在另外的机器上设置，不要在阿里云抢占式实例自己上运行。使用 crontab 设置为每分钟执行一次。\n-- coding: utf-8 -- from aliyunsdkcore.client import AcsClient from aliyunsdkcore.request import CommonRequest from aliyunsdkecs.request.v20140526 import StartInstancesRequest, StopInstancesRequest, DescribeInstancesRequest import json import sys import logging\npip install aliyun-python-sdk-core aliyun-python-sdk-ecs ================== 1. 配置日志 ================== logging.basicConfig( level=logging.INFO, format=\u0026quot;%(asctime)s - %(levelname)s - %(message)s\u0026quot;, stream=sys.stdout ) logger = logging.getLogger(name)\n================== 2. 配置阿里云凭证和ECS实例信息 ================== ACCESS_KEY_ID = \u0026lsquo;LTAIxxxxxxx\u0026rsquo; # 您的AccessKey ID ACCESS_KEY_SECRET = \u0026lsquo;xxxxxxxxxx\u0026rsquo; # 您的AccessKey Secret REGION_ID = \u0026lsquo;cn-hongkong\u0026rsquo; # 区域ID ECS_INSTANCE_ID = \u0026lsquo;i-xxxxxxxxx\u0026rsquo; # 您要控制的ECS实例ID\n流量阈值 (GB) TRAFFIC_THRESHOLD_GB = 180\n================== 3. 初始化客户端 ================== try: client = AcsClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET, REGION_ID) logger.info(\u0026ldquo;AcsClient initialized successfully.\u0026rdquo;) except Exception as e: logger.error(f\u0026quot;Failed to initialize AcsClient: {e}\u0026quot;) sys.exit(1)\n================== 4. 查询当前总流量 ================== def get_total_traffic_gb(client): request = CommonRequest() request.set_domain(\u0026lsquo;cdt.aliyuncs.com\u0026rsquo;) request.set_version(\u0026lsquo;2021-08-13\u0026rsquo;) request.set_action_name(\u0026lsquo;ListCdtInternetTraffic\u0026rsquo;) request.set_method(\u0026lsquo;POST\u0026rsquo;)\ntry: response = client.do_action_with_exception(request) response_json = json.loads(response.decode('utf-8')) total_bytes = sum(d.get('Traffic', 0) for d in response_json.get('TrafficDetails', [])) total_gb = total_bytes / (1024 ** 3) logger.info(f\u0026quot;当前总互联网流量: {total_gb:.2f} GB\u0026quot;) return total_gb except Exception as e: logger.error(f\u0026quot;获取CDT流量失败: {e}\u0026quot;) sys.exit(1) ================== 5. 查询ECS实例状态 ================== def get_ecs_status(client, instance_id): try: request = DescribeInstancesRequest.DescribeInstancesRequest() request.set_InstanceIds([instance_id]) response = client.do_action_with_exception(request) response_json = json.loads(response.decode(\u0026lsquo;utf-8\u0026rsquo;))\ninstances = response_json.get(\u0026quot;Instances\u0026quot;, {}).get(\u0026quot;Instance\u0026quot;, []) if not instances: logger.error(\u0026quot;未找到该ECS实例信息。\u0026quot;) return None status = instances[0].get(\u0026quot;Status\u0026quot;) logger.info(f\u0026quot;ECS实例 {instance_id} 当前状态: {status}\u0026quot;) return status except Exception as e: logger.error(f\u0026quot;获取ECS实例状态失败: {e}\u0026quot;) return None ================== 6. 启动ECS实例 ================== def ecs_start(client, instance_id): status = get_ecs_status(client, instance_id) if status == \u0026ldquo;Running\u0026rdquo;: logger.info(f\u0026quot;ECS实例 {instance_id} 已经是运行状态，无需启动。\u0026quot;) return\ntry: request = StartInstancesRequest.StartInstancesRequest() request.set_InstanceIds([instance_id]) request.set_accept_format('json') response = client.do_action_with_exception(request) logger.info(f\u0026quot;ECS启动响应: {response.decode('utf-8')}\u0026quot;) except Exception as e: logger.error(f\u0026quot;启动ECS实例失败: {e}\u0026quot;) ================== 7. 停止ECS实例 ================== def ecs_stop(client, instance_id): status = get_ecs_status(client, instance_id) if status == \u0026ldquo;Stopped\u0026rdquo;: logger.info(f\u0026quot;ECS实例 {instance_id} 已经是停止状态，无需再次停止。\u0026quot;) return\ntry: request = StopInstancesRequest.StopInstancesRequest() request.set_InstanceIds([instance_id]) request.set_ForceStop(False) request.set_accept_format('json') response = client.do_action_with_exception(request) logger.info(f\u0026quot;ECS停止响应: {response.decode('utf-8')}\u0026quot;) except Exception as e: logger.error(f\u0026quot;停止ECS实例失败: {e}\u0026quot;) ================== 8. 主流程 ================== def main(): total_gb = get_total_traffic_gb(client)\nif total_gb \u0026lt; TRAFFIC_THRESHOLD_GB: logger.info(f\u0026quot;流量 {total_gb:.2f} GB \u0026lt; 阈值 {TRAFFIC_THRESHOLD_GB} GB，尝试启动 ECS\u0026quot;) ecs_start(client, ECS_INSTANCE_ID) else: logger.info(f\u0026quot;流量 {total_gb:.2f} GB ≥ 阈值 {TRAFFIC_THRESHOLD_GB} GB，尝试停止 ECS\u0026quot;) ecs_stop(client, ECS_INSTANCE_ID) logger.info(\u0026quot;脚本执行完毕。\u0026quot;) if name == \u0026ldquo;main\u0026rdquo;: main()\n","permalink":"https://blog.dxgems.com/posts/aliyun-cdt-200g-4yuan-guide/","summary":"将 Evernote 中保存的阿里云 CDT 低成本香港 ECS 教程整理迁移到 DXGems Blog。","title":"【补档】使用阿里云 CDT 享受每月 200G / 4 元高速流量"},{"content":"欢迎来到 DXGems Blog。\n这个博客会用来记录一些真正有沉淀价值的内容，比如：\n服务器与站点折腾记录 常用工具与效率心得 一些值得留档的实践经验 与 DXGems 有关的内容积累 先把站点搭起来，后面再慢慢把内容补齐。\n","permalink":"https://blog.dxgems.com/posts/welcome-to-dxgems-blog/","summary":"DXGems Blog 的正式第一篇文章。","title":"欢迎来到 DXGems Blog"}]