返回顶部
a

alibabacloud-network-eip-associate弹性公网IP绑定

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.0.1-beta.1
安全检测
已通过
83
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

alibabacloud-network-eip-associate

分配并绑定弹性公网IP到现有云资源

场景描述

分配弹性公网IP(EIP)并将其绑定到现有阿里云资源,以实现公网访问。本技能仅专注于EIP产品能力。 支持的资源类型:
  • - EcsInstance:ECS实例(需要实例ID)
  • NetworkInterface:弹性网卡/ENI(需要ENI ID + 私网IP地址)
  • SlbInstance:传统型负载均衡/CLB(需要CLB实例ID)
  • Nat:NAT网关(需要NAT网关ID)
  • HaVip:高可用虚拟IP(需要HaVip ID)
  • IpAddress:直接IP地址绑定(需要VPC ID + IP地址)
关键原则:
  1. 1. ✅ 仅操作用户提供的资源ID - 绝不查询或自动选择资源
  2. 快速失败 - 遇到不可恢复错误立即停止
  3. 不创建资源 - 仅绑定到现有资源(不创建新的ECS/NAT/VPC)
  4. 用户确认 - 分配前询问关键EIP参数
  5. 失败时清理 - 如果绑定失败,释放新分配的EIP

预检查

1. Aliyun CLI版本验证(>= 3.3.2)

bash aliyun configure set --auto-plugin-install true CLI_VERSION=$(aliyun version 2>/dev/null | grep -oE [0-9]+\.[0-9]+\.[0-9]+ | head -1) [ $(printf %s\n 3.3.2 $CLI_VERSION | sort -V | head -n1) != 3.3.2 ] && echo ❌ CLI < 3.3.2 && exit 1

2. 认证凭据验证

bash aliyun configure list # 检查有效配置(AK/STS/OAuth)。绝不回显AK/SK。

工作流程概览

以下所有命令的关键规则:
  • - 每个aliyun产品命令必须包含--user-agent AlibabaCloud-Agent-Skills(configure命令除外)
  • 使用插件模式(短横线命名):aliyun vpc allocate-eip-address,而非AllocateEipAddress
  • VPC命令需要--biz-region-id
  • 关键:--biz-region-id仅设置API请求体中的RegionId参数;它不控制CLI连接的API端点。 API端点由CLI配置的region决定。在执行任何VPC命令之前,必须将CLI配置region设置为目标region:
bash aliyun configure set --region {REGION}
  • - jq不可用 - 使用grep解析JSON输出
需要跟踪的全局变量:
  • - CREATEDEIPS:本次会话中创建的EIP AllocationId数组(用于用户控制的失败清理)
  • REGION:目标区域(必须由用户明确提供,无默认值)
  • INSTANCETYPE:目标资源类型(EcsInstance/NetworkInterface/SlbInstance/Nat/HaVip/IpAddress)
  • USEEXISTINGEIP:布尔标志(true = 使用现有EIP,false = 创建新EIP)
  • ALLOCATION_ID:EIP实例ID(来自现有EIP或新分配的EIP)
工作流程阶段:
  1. 1. 阶段1:提取用户输入,验证资源,选择现有/新EIP
- 步骤1.1-1.2:提取参数,设置CLI区域 - 步骤1.3:检查资源是否已绑定EIP(DescribeEipAddresses) - 步骤1.3.5:检查ECS是否有PIP/公网IP(仅ECS,DescribeInstanceAttribute) - 步骤1.4:用户选择现有EIP或新EIP - 步骤1.5:使用现有EIP(查询可用EIP,让用户选择) - 步骤1.6:创建新EIP(确认参数) - 步骤1.7:分配前验证(仅对新EIP)
  1. 2. 阶段2:分配EIP(仅当USEEXISTINGEIP = false时)
  2. 阶段3:将EIP绑定到目标资源(实际执行)
  3. 阶段4:验证绑定
  4. 阶段5:失败时清理(询问用户保留或释放新创建的EIP)

阶段1:提取用户输入并验证资源

步骤1.1:从用户消息中提取必需参数

用户需要提供:
  • - Region:目标区域(例如cn-beijing、cn-hangzhou)- 必须明确提供,无默认值
  • Resource Type:以下之一:ECS / ENI / CLB / NAT / HAVIP / IP
  • Resource ID:精确的实例ID、ENI ID、NAT ID等
  • 附加参数(实例类型特定):
- 如果是NetworkInterface:必须提供PrivateIpAddress(要绑定的私网IP) - 如果是IpAddress:必须提供VpcId(IP地址所在的VPC ID) 如果缺少任何必需参数,停止并询问用户:

❌ 缺少:Region[必需] | ResourceType[ECS/ENI/CLB/NAT/HAVIP/IP] | ResourceID | [ENI的PrivateIP] | [IP的VpcId]

关键:

  • - Region必须由用户明确提供。不要使用默认区域(如cn-hangzhou)。
  • 没有用户明确提供的值,不要继续。

步骤1.1.1:输入验证(安全)

验证输入以防止命令注入:
  • - Region:^[a-z]{2,3}-[a-z]+-\d[a-z]$(例如cn-beijing、ap-southeast-1)
  • 资源ID:^(i|eni|lb|ngw|havip|eip|vpc)-[a-z0-9]+$
  • IP地址:^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
如果验证失败,停止: ❌ 输入格式无效

步骤1.2:将CLI区域设置为目标区域

在任何API操作之前,配置CLI区域: bash aliyun configure set --region {REGION}

这确保CLI连接到正确的区域API端点。

步骤1.3:检查资源是否已绑定EIP

使用DescribeEipAddresses检查目标资源是否已有EIP: 将用户输入映射到InstanceType参数:
用户输入AssociatedInstanceType值
ECSEcsInstance
ENI
NetworkInterface | | CLB | SlbInstance | | NAT | Nat | | HAVIP | HaVip | | IP | IpAddress | 查询命令: bash aliyun vpc describe-eip-addresses \ --biz-region-id {REGION} \ --associated-instance-type {INSTANCE_TYPE} \ --associated-instance-id {RESOURCE_ID} \ --user-agent AlibabaCloud-Agent-Skills

检查响应:
如果TotalCount > 0(资源已绑定EIP):

❌ 错误:资源{RESOURCE_ID}已绑定EIP。
现有EIP:{EipAddress} | ID:{AllocationId} | 带宽:{Bandwidth}Mbps | 状态:{Status}
要绑定不同的EIP,请先解绑现有EIP:aliyun vpc unassociate-eip-address --biz-region-id {REGION} --allocation-id {AllocationId} --instance-id {RESOURCEID} --instance-type {INSTANCETYPE}

停止。不要继续。
如果TotalCount = 0(资源未绑定EIP):

✅ 资源{RESOURCE_ID}未绑定EIP。继续下一步验证...

继续步骤1.3.5。

步骤1.3.5:检查ECS实例是否有PIP(公网IP)- 仅ECS

此步骤仅在INSTANCE_TYPE = EcsInstance时执行。
对于其他资源类型(ENI、CLB、NAT、HAVIP、IP),直接跳到步骤1.4。

目的: 检查ECS实例在创建时是否已分配公网IP(PIP)。PIP与EIP不同:
  • - EIP(弹性公网IP):可以动态绑定/

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 alibabacloud-network-eip-associate-1775918582 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 alibabacloud-network-eip-associate-1775918582 技能

通过命令行安装

skillhub install alibabacloud-network-eip-associate-1775918582

下载

⬇ 下载 alibabacloud-network-eip-associate v0.0.1-beta.1(免费)

文件大小: 19 KB | 发布时间: 2026-4-12 08:52

v0.0.1-beta.1 最新 2026-4-12 08:52
alibabacloud-network-eip-associate 0.0.1-beta.1

- Initial beta release.
- Provides workflow to allocate and bind Elastic IP (EIP) addresses to existing Alibaba Cloud resources (ECS, ENI, CLB, NAT, HAVIP, IP).
- Enforces strict user input validation and only operates on explicit resource IDs.
- Includes phases for input extraction, validation, EIP selection/allocation, binding, verification, and cleanup.
- No auto-discovery or resource creation; fails fast on unrecoverable errors.
- Detailed guidance for CLI usage and error handling included in documentation.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部