操作场景
不同VPC之间网络默认不通,您可以通过对等连接连通同一个区域下的VPC。本节指导用户创建相同账户下的VPC对等连接,即需要连通的两个VPC位于同一个账户下。
以在账户A下,创建VPC-A和VPC-B之间的对等连接为例,实现业务服务器ECS-A01和数据库服务器RDS-B01之间的通信。
图-相同账户下的对等连接组网示例
创建对等连接首先要向需要建立对等连接的VPC发送请求,您可以和自己账户内相同区域的其他VPC申请对等连接,同账户内同区域的VPC创建对等连接,默认自动接受。
约束与限制
对等连接是建立在两个VPC之间的网络连接,两个VPC之间只能建立一个对等连接。
对等连接仅可以连通同区域的VPC,不同区域的VPC之间不能创建对等连接。
配置对等连接时,当您的本端VPC和对端VPC存在网段重叠的情况时,那么您的对等连接可能会不生效。
前提条件
已在同一个账号下创建两个VPC,并且VPC位于同一个区域。
步骤一:创建VPC对等连接
登录管理控制台,选择目标区域。
在系统首页,选择“网络 > 虚拟私有云”。
在左侧导航栏选择“对等连接”。
在界面右侧详情区域单击“创建对等连接”。
根据界面提示配置参数,其中“账户”选择“当前账户”,相关参数如下表所示。
表-创建对等连接参数说明
参数 说明 取值样例 名称 必选参数。
此处填写对等连接的名称。
由中文字符、英文字母、数字、中划线、下划线等构成,一般不超过64个字符。peering-AB 本端VPC 必选参数。
此处为对等连接一端的VPC,可以在下拉框中选择已有VPC作为本端VPC。VPC-A 本端VPC网段 此处显示已选择的本端VPC的网段。 172.16.0.0/16 账户 必选参数。
当前账户:当对等连接中的对端VPC和本端VPC位于同一个账户下时,选择该项。
其他账户:当对等连接中的对端VPC和本端VPC位于不同账户下时,选择该项。
当前账户 对端项目 当账户选择“当前账户”时,系统默认填充对应的项目,无需您额外操作。
比如VPC-A和VPC-B均为账户A下的资源,并且位于区域A,那么此处系统默认显示账户A下,区域A对应的项目。
选择默认项目名称,即和同账户下VPC创建对等连接。支持与同区域的专属云下的VPC创建对等连接。选择对应专属云的项目名称,即可选择同账户的专属云下的VPC创建对等连接。ab-cdef-1 对端VPC 当账户选择“当前账户”时,该项为必选参数。
此处为对等连接另外一端的VPC,可以在下拉框中选择已有VPC作为对端VPC。VPC-B 对端VPC网段 此处显示已选择的对端VPC的网段。
当您的本端VPC和对端VPC存在网段重叠的情况时,那么您的对等连接可能会不生效。172.17.0.0/16 参数填写完成后,单击“确定”。
弹出路由添加提示对话框。
在路由添加提示对话框中,单击“立即添加”,跳转到对等连接详情页面,继续执行添加路由操作。
步骤二:添加VPC对等连接路由
添加VPC对等连接路由(路由表已解耦)
在对等连接详情页面下方区域,单击“添加路由”。
弹出对等连接的“添加路由”对话框。
根据界面提示,在VPC路由表中添加路由。参数说明如下表所示。
表-添加对等连接路由参数说明
参数 说明 取值样例 虚拟私有云 选择对等连接两端中的任意一个VPC。 VPC-A 路由表 选择VPC的路由表,路由信息将会添加在该路由表中。
VPC创建完成后自带一个默认路由表,用来控制VPC内子网出方向的流量走向。除了默认路由表,您还可以创建自定义路由表,并关联至子网,则该子网的出方向流量由自定义路由表控制。如果路由表的下拉列表中只有默认路由表,则选择默认路由表即可。
如果路由表的下拉列表中同时存在默认路由表和其他自定义路由表,则选择对等连接连通的子网所关联的路由表。
rtb-VPC-A(默认路由表) 目的地址 对等连接另一端VPC内的地址,可以为VPC网段、子网网段、ECS IP地址等。 本示例为VPC-B的网段:172.17.0.0/16 下一跳地址 系统默认填写当前对等连接,您无需选择。 peering-AB 描述 路由的描述信息,非必填项。
描述信息内容不能超过255个字符,且不能包含“<”和“>”。本端VPC-A到对端VPC-B的去程路由。 添加另一端VPC的路由(可选) 勾选该参数,可同时添加对等连接另一端VPC内的回程路由。
通常情况下,您需要在对等连接两端VPC的路由表中分别添加去程和回程路由,才可以实现通信。勾选 虚拟私有云 系统默认填写对等连接两端的另一个VPC,您无需选择。 VPC-B 路由表 选择VPC的路由表,路由信息将会添加在该路由表中。
VPC创建完成后自带一个默认路由表,用来控制VPC内子网出方向的流量走向。除了默认路由表,您还可以创建自定义路由表,并关联至子网,则该子网的出方向流量由自定义路由表控制。如果路由表的下拉列表中只有默认路由表,则选择默认路由表即可。
如果路由表的下拉列表中同时存在默认路由表和其他自定义路由表,则选择对等连接连通的子网所关联的路由表。
rtb-VPC-B(默认路由表) 目的地址 对等连接另一端VPC内的地址,可以为VPC网段、子网网段、ECS IP地址等。 本示例为VPC-A的网段:172.16.0.0/16 下一跳地址 系统默认选择当前对等连接,无需选择。 peering-AB 描述 路由的描述信息,非必填项。
描述信息内容不能超过255个字符,且不能包含“<”和“>”。对端VPC-B到本端VPC-A的回程路由。 路由信息设置完成后,单击“确定”。
返回路由列表,可以看到已添加的路由。
添加VPC对等连接路由(路由表未解耦)
在对等连接列表中,查找需要添加路由信息的对等连接。
单击对等连接名称,进入对等连接详情页面。
在VPC对等连接详情页面,单击“本端路由”。
在“本端路由”页签区域,单击“添加本端路由”添加本端路由信息,参数说明参考下表。
表-路由参数说明
参数 说明 取值样例 目的地址 目的地址,对端VPC或子网的网段。 192.168.2.0/24 下一跳地址 下一跳地址,即对等连接ID,默认不用配置。 d1a7863b-9d5e-4d27-8eaf-ab14d2a9148b 单击“确定”,回到对等连接详情界面。
在对等连接详情界面,单击“对端路由”。
在“对端路由”页签区域,单击“添加对端路由”添加对端路由信息。
单击“确定”,完成添加VPC对等连接路由信息。
步骤三:验证网络互通情况
对等连接建立后,您可以使用私有IP地址在两个VPC之间进行通信。您可以使用“ping”命令检查网络两端是否连通。
对等连接路由添加完成后,执行以下操作,验证本端VPC和对端VPC的通信情况。
登录本端VPC内的弹性云主机,本示例中为ECS-A01。
执行以下命令,验证ECS-A01和RDS-B01是否可以通信。
ping对端服务器的IP地址
命令示例:
ping 172.17.0.21
回显类似如下信息,表示ECS-A01与RDS-B01可以通过通信,VPC-A和VPC-B之间的对等连接创建成功。
[root@ecs-A01 ~]# ping 172.17.0.21 PING 172.17.0.21 (172.17.0.21) 56(84) bytes of data. 64 bytes from 172.17.0.21: icmp_seq=1 ttl=64 time=0.849 ms 64 bytes from 172.17.0.21: icmp_seq=2 ttl=64 time=0.455 ms 64 bytes from 172.17.0.21: icmp_seq=3 ttl=64 time=0.385 ms 64 bytes from 172.17.0.21: icmp_seq=4 ttl=64 time=0.372 ms ... --- 172.17.0.21 ping statistics ---
注意
本示例中ECS-A01和RDS-B01位于同一个安全组内,因此只要VPC-A和VPC-B之间的对等连接创建成功后,就可以实现网络互通。如果您需要连通的实例位于不同的安全组内,那么您需要在安全组的入方向规则中,添加放通对端安全组的规则。
对于更多对等连接网络不通的问题,处理方法请参见为什么对等连接创建完成后不能互通?。