【ECS】通过API允许不同账号下的ECS实例内网通信

简介: 若您需要实现同一地域下不同账号的ECS实例内网通信,可以参考本文描述授权安全组间互访。

前提条件

请确保您已经为ECS实例安装了阿里云CLI,在不同操作系统中安装CLI的方式请参见:


背景信息

目前授权安全组内网通信有以下两种,请根据您的实际需求选择方式。

  • ECS实例间通信:授权同一账号两台ECS实例间的内网通信。
  • 账号间内网通信:授权不同账号同一地域下两个安全组内所有的ECS实例的内网通信,包括授权以后购买的同一安全组内的ECS实例。


说明 账号间内网通信实际上是安全组间授权,即授权处于这两个安全组内的ECS实例后就可以实现内网通信。修改安全组配置会影响到安全组内所有的ECS实例,请根据实际需要进行操作,避免影响到ECS实例网络下运行的业务。


安全组是ECS实例的虚拟防火墙,安全组本身不提供通信能力和组网能力。授权不同安全组内的实例内网通信后,请同时确保实例可以建立内网互通的能力。

  • 若实例均是经典网络类型,必须位于同一地域下。
  • 若实例均是VPC类型,不同VPC间默认内网不通。建议通过公网访问的方式通信,或者通过高速通道、VPN网关和云企业网等方式提供访问能力。更多信息,请参见高速通道VPN网关云企业网
  • 若实例网络类型不同,请设置ClassicLink允许实例通信。具体操作,请参见经典网络和专有网络互通
  • 若实例位于不同地域,建议通过公网访问的方式通信,或者通过高速通道、VPN网关和云企业网等方式提供访问能力。更多信息,请参见高速通道VPN网关云企业网


ECS实例间通信

  1. 查询两台ECS实例的内网IP地址和两台ECS实例所处的安全组ID。您可以通过控制台或调用DescribeInstances接口获得ECS实例所属的安全组ID。假设两台ECS实例的信息如下表所示。
实例 IP地址 所属安全组 安全组ID
实例A 10.0.0.1 sg1 sg-bp1azkttqpldxgte****
实例B 10.0.0.2 sg2 sg-bp15ed6xe1yxeycg****


  1. 在sg1安全组中添加放行10.0.0.2的入方向的规则。
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId sg-bp1azkttqpldxgte**** --RegionId cn-qingdao --IpProtocol all  --PortRange=-1/-1 --SourceCidrIp 10.0.0.2 --NicType intranet


  1. 在sg2安全组中添加放行10.0.0.1的入方向的规则。
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId sg-bp15ed6xe1yxeycg**** --RegionId cn-qingdao --IpProtocol all  --PortRange=-1/-1 --SourceCidrIp 10.0.0.1 --NicType intranet


说明

  • 以上命令中,地域取值为华北 1(青岛)cn-qingdao,请您根据实际情况修改。
  • 以上命令中,调用AuthorizeSecurityGroup接口添加安全组入方向的放行规则,主要关注的参数为SecurityGroupIdSourceCidrIp


  1. 等待一分钟后,使用ping命令测试两台ECS实例之间是否内网互通。


账号间内网通信

  1. 查询两个账号的账号名和两个账号下对应的安全组ID。您可以通过控制台或调用DescribeInstances接口获得ECS实例所属的安全组ID。假设两个账号的信息如下表所示。
账号 账号ID 安全组 安全组ID
账号A a@aliyun.com sg1 sg-bp1azkttqpldxgte****
账号B b@aliyun.com sg2 sg-bp15ed6xe1yxeycg****


  1. 在sg1安全组中添加放行sg2安全组入方向的规则。
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId sg-bp1azkttqpldxgte**** --RegionId cn-qingdao --IpProtocol all  --PortRange=-1/-1 --SourceGroupId sg-bp15ed6xe1yxeycg7XXX --SourceGroupOwnerAccount b@aliyun.com --NicType intranet


  1. 在sg2安全组中添加放行sg1安全组入方向的规则。
aliyun ecs AuthorizeSecurityGroup --SecurityGroupId sg-bp15ed6xe1yxeycg**** --RegionId cn-qingdao --IpProtocol all  --PortRange=-1/-1 --SourceGroupId sg-bp1azkttqpldxgtedXXX --SourceGroupOwnerAccount a@aliyun.com --NicType intranet


说明

  • 以上命令中,地域取值为华北 1(青岛)cn-qingdao,请您根据实际情况修改。
  • 以上命令中,调用AuthorizeSecurityGroup接口添加安全组入方向的放行规则时,主要关注的参数为SecurityGroupIdSourceGroupIdSourceGroupOwnerAccount


  1. 等待一分钟后,使用ping命令测试查看两台ECS实例之间是否内网互通。
相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
JSON 监控 API
在线网络PING接口检测服务器连通状态免费API教程
接口盒子提供免费PING检测API,可测试域名或IP的连通性与响应速度,支持指定地域节点,适用于服务器运维和网络监控。
|
8月前
|
前端开发 Cloud Native Java
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
|
8月前
|
Kubernetes API 网络安全
当node节点kubectl 命令无法连接到 Kubernetes API 服务器
当Node节点上的 `kubectl`无法连接到Kubernetes API服务器时,可以通过以上步骤逐步排查和解决问题。首先确保网络连接正常,验证 `kubeconfig`文件配置正确,检查API服务器和Node节点的状态,最后排除防火墙或网络策略的干扰,并通过重启服务恢复正常连接。通过这些措施,可以有效解决与Kubernetes API服务器通信的常见问题,从而保障集群的正常运行。
532 17
|
8月前
|
网络协议 开发者 Python
Socket如何实现客户端和服务器间的通信
通过上述示例,展示了如何使用Python的Socket模块实现基本的客户端和服务器间的通信。Socket提供了一种简单且强大的方式来建立和管理网络连接,适用于各种网络编程应用。理解和掌握Socket编程,可以帮助开发者构建高效、稳定的网络应用程序。
354 10
|
12月前
|
人工智能 Java API
ChatClient:探索与AI模型通信的Fluent API
【11月更文挑战第22天】随着人工智能(AI)技术的飞速发展,越来越多的应用场景开始融入AI技术以提升用户体验和系统效率。在Java开发中,与AI模型通信成为了一个重要而常见的需求。为了满足这一需求,Spring AI引入了ChatClient,一个提供流畅API(Fluent API)的客户端,用于与各种AI模型进行通信。本文将深入探讨ChatClient的底层原理、业务场景、概念、功能点,并通过Java代码示例展示如何使用Fluent API与AI模型进行通信。
355 8
|
12月前
|
负载均衡 数据可视化 API
像素流送api ue多人访问需要什么显卡服务器
本文总结了关于像素流送技术的五大常见问题,包括是否支持Unity模型推流、UE多人访问的最大并发数、所需服务器配置、稳定性问题及API支持情况,旨在帮助开发者更好地理解和应用这一技术。
409 1
|
JSON JavaScript 前端开发
使用 Node.js 和 Express 构建 RESTful API 服务器
【10月更文挑战第3天】使用 Node.js 和 Express 构建 RESTful API 服务器
|
12月前
|
人工智能 Java API
Spring AI Fluent API:与AI模型通信的流畅体验
【11月更文挑战第24天】随着人工智能(AI)技术的飞速发展,越来越多的应用场景开始融入AI技术以提升用户体验和系统效率。在Java开发中,与AI模型通信成为了一个重要而常见的需求。为了满足这一需求,Spring AI引入了ChatClient,一个提供流畅API(Fluent API)的客户端,用于与各种AI模型进行通信。本文将深入探讨ChatClient的底层原理、业务场景、概念、功能点,并通过Java代码示例展示如何使用Fluent API与AI模型进行通信。
337 0
|
存储 监控 NoSQL
Redis的实现二: c、c++的网络通信编程技术,让服务器处理多个client
本文讨论了在C/C++中实现服务器处理多个客户端的技术,重点介绍了事件循环和非阻塞IO的概念,以及如何在Linux上使用epoll来高效地监控和管理多个文件描述符。
150 1
|
JSON JavaScript 前端开发
使用JavaScript和Node.js构建简单的RESTful API服务器
【10月更文挑战第12天】使用JavaScript和Node.js构建简单的RESTful API服务器
178 0
下一篇
开通oss服务