本文介绍在多VPC网段冲突的情况下,通过云企业网实现多VPC访问。
场景示例
某用户在北京区域拥有两个相同网段的专有网络VPC,其中vpc1与购买的OpenSearch实例绑定,现在需要从vpc2访问OpenSearch实例,由于两个网段重叠导致无法通过部署云企业网实现私网访问,因此,还需对vpc2的私网地址进行地址转换,从而实现vpc2访问vpc1。
VPC资源:
资源 | 区域 | IP网段 | 附加信息 |
vpc1 | 北京 | 10.0.0.0/8 | |
vpc2 | 10.0.0.0/8 | 附加IP网段:172.16.0.0/12
|
云企业网资源:
登录云企业网控制台,创建云企业网实例。
在对应的区域创建转发路由器。
在转发路由器下创建对应VPC的网络实例连接。
获取OpenSearch实例IP
在OpenSearch实例详情页中复制Endpoint,通过ping OpenSearch实例的Endpoint来获取其对应的IP地址,例如:获取到的IP是100.103.87.165。
配置步骤
VPC地址冲突时通过云企业网实现多VPC访问,只需三步:
配置多VPC互联:为vpc2分配附加网段并为该附加网段创建交换机,然后为创建好的交换机配置VPC NAT网关与SNAT(源网络地址转换)条目,实现将vpc2的私网地址转换为不冲突的私网地址,从而解决私网冲突问题。
去程路由配置:主要配置去程路由的路径规则。
回程路由配置:主要配置回程路由的路径规则。
步骤一:配置多VPC互联
VPC地址冲突时云企业网的操作可参考文档:通过VPC NAT网关实现VPC地址冲突时的私网访问。
为vpc2分配附加网段:
登录专有网络管理控制台,在专有网络中点击vpc2实例,选择网段管理>添加附加IPv4网段,选择网段后点击确定完成。本文为vpc2分配的附加网段为172.16.0.0/12。
为vpc2的附加网段创建交换机:
进入交换机页面点击创建交换机,专有网络选择vpc2,IPv4网段注意选择vpc2对应的附加网段,填写交换机数据后点击确定创建。本文vpc2附加网段绑定的交换机名称为VSwitch_B2。
为vpc2的附加网段交换机(VSwitch_B2)添加VPC NAT网关:
在左侧导航栏点击NAT网关>VPC NAT网关,点击创建VPC NAT网关进入配置页面,VPC ID下拉选择vpc2,可用区选择VSwitch_B2对应的可用区,交换机ID选择VSwitch_B2,然后点击立即购买。
为NAT网关配置SNAT条目:
点击上一步配置好的VPC NAT实例,在SNAT管理中点击创建SNAT条目,选择NAT IP后点击确定创建,本文NAT网关对应的NAT IP是192.168.0.13。
为交换机(VSwitch_B2)添加自定义路由表:
在左侧导航栏,单击路由表,在路由表页面,单击创建路由表,随后找到目标实例单击绑定资源,将VSwitch_B2添加至自定义路由表。 本文绑定添加自定义路由表名为vpc2_routing。
步骤二:去程路由配置
登录专有网络控制台,找到vpc2的系统路由表。
在自定义路由条目添加100.103.87.165的路由条目,下一跳指向NAT网关。
找到vpc2附加网段的交换机VSwitch_B2的自定义路由表,本文为vpc2_routing。
在路由条目中添加100.103.87.165的路由条目,下一跳vpc2对应的转发路由器连接实例。
在云企业网控制台,在转发路由器里找到转发路由器路由表。
在路由条目中添加100.103.87.165的路由条目,下一跳vpc1对应的转发路由器连接实例。
步骤三:回程路由配置
登录专有网络控制台,找到vpc1的系统路由表。
在自定义路由条目添加192.168.0.13(NAT IP)的路由条目,下一跳指向vpc1对应的转发路由器连接实例。
登录云企业网控制台,找到转发路由器路由表。
在路由条目中添加192.168.0.13(NAT IP)的路由条目,下一跳指向vpc2对应的转发路由器连接实例。
结果验证
在专有网络控制台找到vpc2实例,在云服务器列的“+”创建ECS,创建好后在terminal中可以执行以下curl命令来验证效果,请将
{username}
、{password}
和{instanceId}
替换为实际值。curl -i -u "{username}:{password}" http://{instanceId}.ha.aliyuncs.com/network/active
如果展示结果如下, 则表明网络已经打通;
HTTP/1.1 200 OK Server: Tengine Date: Tue, 26 Nov 2024 08:29:34 GMT Content-Type: application/json; charset=utf-8 Content-Length: 0 Connection: keep-alive Keep-Alive: timeout=320 X-Request-Id: 037a9080181d0b90b8c99b25af7e****
如果出现
403 Forbidden
错误 ,则表示网络还是有问题,请与我们联系。