开发者社区> 问答> 正文

两个实例之间内网无法通信

我们有两个阿里云实例,都在华南1区。
公网IP地址分别为:   112.74.*.*、47.106.*.*
内网IP地址分别为:172.18.76.*172.18.70.*
这两个实例之间无法通信,表现为互相ping对方内网IP地址没有应答,请解决

展开
收起
30838919 2018-10-13 12:42:41 871 0
1 条回答
写回答
取消 提交回答
  • 无知人生,记录点滴。 不积跬步,无以至千里;不积小流,无以成江海 订阅号:微wx笑, 个人站点:https://www.ivu4e.cn/,https://www.ivu4e.com/ CSDN博客:https://blog.csdn.net/testcs_dn

    详细解答可以参考官方帮助文档

    本文介绍了几个常见的安全组应用案例,同时包括专有网络(VPC)和经典网络 的安全组设置说明。

    说明

    案例 1:实现内网互通

    使用安全组实现相同地域不同账号下或不同安全组内ECS实例间的内网互通。有两种情况:

    • 场景 1:实例属于同一个地域、同一个账号
    • 场景 2:实例属于同一个地域、不同账号
    说明

    对于VPC网络类型的ECS实例,如果它们在同一个VPC网络内,可以通过安全组规则实现内网互通。如果ECS实例不在同一个VPC内(无论是否属于同一个账号或在同一个地域里),您可以 使用高速通道实现VPC互通

    场景 1:同一地域、同一账号
    • VPC:处于同一个VPC内的ECS实例,在实例所在安全组中分别添加一条安全组规则,授权另一个安全组内的实例访问本安全组内的实例,实现内网互通。安全组规则如下表所示。 网卡类型 规则方向 授权策略 协议类型 端口范围 优先级 授权类型 授权对象 不需要设置 入方向 允许 设置适用的协议类型 设置端口范围 1 安全组访问(本账号授权) 选择允许访问的实例所在的安全组ID
    • 经典网络:在实例所在安全组中分别添加一条安全组规则,授权另一个安全组内的实例访问本安全组内的实例,实现内网互通。安全组规则如下表所示。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 优先级 授权类型 授权对象 经典网络 内网 入方向 允许 设置适用的协议类型 设置端口范围 1 安全组访问(本账号授权) 选择允许访问的实例所在的安全组ID

    同一地域、同一账号的2个实例,如果在同一个安全组内,默认内网互通,不需要设置。如果在不同的安全组内,默认内网不通,此时,根据网络类型做不同的设置:

    场景 2:同一地域、不同账号

    这部分的描述仅适用于经典网络类型的ECS实例。

    同一个地域内、不同账号下,经典网络实例可以通过安全组授权实现内网互通。比如:

    • UserA在华东1有一台经典网络的ECS实例InstanceA(内网IP:A.A.A.A),InstanceA所属的安全组为GroupA。
    • UserB在华东1有一台经典网络的ECS实例InstanceB(内网IP:B.B.B.B),InstanceB所属的安全组为GroupB。
    • 在GroupA中添加安全组规则,授权InstanceB内网访问InstanceA,如下表所示。 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 内网 入方向 允许 选择适用的协议类型 设置端口范围 安全组访问(跨账号授权) GroupB的ID,并在 账号ID 里填写UserB的ID 1
    • 在GroupB中添加安全组规则,授权InstanceA内网访问InstanceB,如下表所示。 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 内网 入方向 允许 选择适用的协议类型 设置端口范围 安全组访问(跨账号授权) GroupA的ID,并在 账号ID 里填写UserA的ID 1
      说明 出于安全性考虑,经典网络的内网入方向规则,授权类型优先选择 安全组访问;如果选择 地址段访问,则仅支持单IP授权,授权对象的格式只能是a.b.c.d/32,其中IP地址应根据您的实际需求设置,仅支持IPv4,子网掩码必须是/32。

    案例 2:屏蔽、拦截、阻断特定IP地址对实例或实例特定端口的访问

    如果需要使用安全组屏蔽、拦截、阻止特定IP地址对您的ECS实例的访问,或者屏蔽特定IP地址访问ECS实例的特定端口(如本例中的TCP 22端口),您可以参考以下示例设置安全组规则:

    • 如果要拒绝特定公网IP地址段对ECS所有端口的访问,添加如下表所示的安全组规则: 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要设置 入方向 拒绝 全部 -1/-1 地址段访问 待屏蔽的IP地址段,采用CIDR格式,如a.b.c.d/27。

      关于CIDR格式介绍,请参见 ECS实例子网划分和掩码表示方法

      1 经典网络 公网
    • 如果要拒绝特定IP地址段对ECS特定端口(如TCP 22端口)的访问,添加如下安全组规则: 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要设置 入方向 拒绝 SSH(22) 22/22 地址段访问 待屏蔽的IP地址段,采用CIDR格式,如a.b.c.d/27。

      关于CIDR格式介绍,请参见 ECS实例子网划分和掩码表示方法

      1 经典网络 公网

    案例 3:只允许特定IP地址远程登录到实例

    如果您只想让某些特定IP地址远程登录到实例,可以参考以下示例的步骤在实例所在安全组里添加以下2条规则(以Linux实例为例,设置只让特定IP地址访问TCP 22端口):

    1. 允许特定IP地址访问TCP 22端口,优先级为1,优先级最高,最先执行。安全组规则如下表所示。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要配置 入方向 允许 SSH(22) 22/22 地址段访问 允许远程连接的IP地址,如1.2.3.4。 1 经典网络 公网
    2. 拒绝其他IP地址访问TCP 22端口,优先级为2,低于优先级为1的规则。安全组规则如下表所示。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要配置 入方向 拒绝 SSH(22) 22/22 地址段访问 0.0.0.0/0 2 经典网络 公网

    完成设置后:

    • 使用IP地址为 1.2.3.4 的机器远程连接Linux实例时,连接成功。
    • 其他IP地址的机器远程连接Linux实例时,连接失败。

    案例 4:只允许实例访问外部特定IP地址

    如果您只想让实例访问特定的IP地址,参考以下示例的步骤在实例所在安全组中添加安全组规则:

    1. 禁止实例以任何协议访问所有公网IP地址,优先级应低于允许访问的规则(如本例中设置优先级为2)。安全组规则如下表所示。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要配置 出方向 拒绝 全部 -1/-1 地址段访问 0.0.0.0/0 2 经典网络 公网
    2. 允许实例访问特定公网IP地址,优先级应高于拒绝访问的安全组规则的优先级(如本例中设置为1) 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要配置 出方向 允许 选择适用的协议类型 设置端口范围 地址段访问 允许实例访问的特定公网IP地址,如1.2.3.4。 1 经典网络 公网

    添加了安全组规则后,在连接实例,执行 pingtelnet 等测试。如果实例只能访问允许访问的IP地址,说明安全组规则已经生效。

    案例 5:允许远程连接实例

    允许远程连接ECS实例分为两种情况:

    • 场景 1:允许公网远程连接指定实例
    • 场景 2:允许内网其他账号下的某台ECS实例或所有ECS实例远程连接指定实例
    场景 1:允许公网远程连接实例

    如果要允许公网远程连接实例,参考以下示例添加安全组规则。

    • VPC:添加如下所示安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要设置 入方向 允许 Windows:RDP(3389) 3389/3389 地址段访问 如果允许任意公网IP地址连接实例,填写0.0.0.0/0。如果只允许特定IP地址远程连接实例,参见 案例 3:只允许特定IP地址远程登录到实例。 1 Linux:SSH(22) 22/22 自定义TCP 自定义
    • 经典网络:添加如下表所示安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 经典网络 公网 入方向 允许 Windows:RDP(3389) 3389/3389 地址段访问 如果允许任意公网IP地址连接实例,填写0.0.0.0/0。如果只允许特定公网IP地址连接实例,参见 案例 3:只允许特定IP地址远程登录到实例。 1 Linux:SSH(22) 22/22 自定义TCP 自定义

    自定义远程连接端口的详细操作,请参见 服务器默认远程端口修改

    场景 2:允许内网其他账号下某个安全组内的ECS实例远程连接您的实例

    如果您的账号与同地域其他账号内网互通,而且您想允许内网其他账号下某个安全组内的ECS实例远程连接实例,按以下示例添加安全组规则。

    • 允许内网其他账号某个实例内网IP地址连接您的实例
      • VPC:先保证2个账号的实例   同账号VPC互连,再添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要设置 入方向 允许 Windows:RDP(3389) 3389/3389 地址段访问 对方实例的私有IP地址 1 Linux:SSH(22) 22/22 自定义TCP 自定义
      • 经典网络:应添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 经典网络 内网 入方向 允许 Windows:RDP(3389) 3389/3389 地址段访问 对方实例的内网IP地址,出于安全性考虑,仅支持单IP授权,例如:a.b.c.d/32。 1 Linux:SSH(22) 22/22 自定义TCP 自定义
    • 允许内网其他账号某个安全组里的所有ECS实例连接您的实例
      • VPC类型的实例,先保证2个账号的实例   同账号VPC互连,再添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要设置 入方向 允许 Windows:RDP(3389) 3389/3389 安全组访问(跨账号授权) 对方ECS实例所属的安全组ID,并填写对方账号ID 1 Linux:SSH(22) 22/22 自定义TCP 自定义
      • 经典网络实例,添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 经典网络 内网 入方向 允许 Windows:RDP(3389) 3389/3389 安全组访问(跨账号授权) 对方ECS实例所属的安全组ID,并填写对方账号ID 1 Linux:SSH(22) 22/22 自定义TCP 自定义

    案例 6:允许公网通过HTTP、HTTPS等服务访问实例

    如果您在实例上架设了一个网站,希望您的用户能通过HTTP或HTTPS服务访问到您的网站,您需要在实例所在安全组中添加以下安全组规则。

    • VPC:假设允许公网上所有IP地址访问您的网站,添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 VPC 不需要配置 入方向 允许 HTTP(80) 80/80 地址段访问 0.0.0.0/0 1 HTTPS(443) 443/443 自定义TCP 自定义,如8080/8080
    • 经典网络:假设允许公网上所有IP地址访问您的网站,添加如下表所示的安全组规则。 网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级 经典网络 公网 入方向 允许 HTTP(80) 80/80 地址段访问 0.0.0.0/0 1 HTTPS(443) 443/443 自定义TCP 自定义,如8080/8080
    说明
    2018-10-13 12:46:11
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
探索连接的最后十秒钟“落时”的网关 立即下载
云通信—构筑直连用户之“桥” 立即下载
问答网络 立即下载