随着公有云技术的日臻完善,越来越多的政府部门、事业单位、企业、个人将自己的IT系统部署在公有云之上。在公有云之上部署业务系统有一个特点,就是先要规划网络,有了网络以后,才能把一些相关的产品部署在网络里(有些公有云的产品或者组件是不需要提前规划网络的,例如对象存储,这里主要考虑的是需要网络的组件,例如云主机)。

公有云的网络一般叫VPC(Virtual Private Cloud),用户可以在自己的账户下创建多个VPC,可VPC和VPC之间是怎么通信的?又如何实现呢?我们这篇文章讨论的就是VPC之间的连通性,通过这篇文章大家可以了解到如何快捷、简便地实现VPC之前的通信。

京东云私有网络(Virtual Private Cloud,简称VPC),是京东云公有云上自定义的逻辑隔离的网络空间,与数据中心搭建的传统网络类似,此私有网络空间由用户完全掌控,支持自定义网段划分、路由策略等。用户可以在VPC内创建和管理多种云产品,如云主机、负载均衡等,同时可配置网络内的资源连接Internet。

下面我们就来搭建一下测试的环境,首先需要搭建两个VPC,然后分别在两个VPC里创建子网。为了测试连通性,我们还需要创建两个云主机,通过两个云主机相互之间ping对方来查看。

整个测试环境的搭建主要分为如下步骤:

  • 创建第一个VPC

  • 在第一个VPC下创建子网

  • 在子网下创建云主机

  • 创建第二个VPC

  • 在第二个VPC下创建子网

  • 在第二个子网下创建云主机

  • 创建VPCpeering,并配置路由规则

  • 测试云主机内网的连通性,以及提供公网联通的网络延时比较

接下来,让我们根据上面的大纲,一步一步的完成测试环境的搭建。

一、创建第一个VPC

登录京东云并打开控制台
选择”网络”->“私有网络”->“私有网络(VPC)

点击右侧的按钮“创建”

在弹出的创建窗口输入VPC的相关信息
我们这里选择10.10.0.0/16用于本实验

地域:京东云公有云现在有四个地域可以选择“华北-北京” “华南-广州” “华东-宿迁” “华东-上海”(根据业务所在的地理位置,选择相应的地域)

名称:用户可以根据需要,自行输入相应的名称(名称不可为空,只支持中文、数字、大小写字母、英文下划线“_”及中划线“-”,且不能超过32字符)

CIDR: 目前私有网络支持三个网段的内网IP:10.a.0.0/Mask(a属于0至255)、172.b.0.0//Mask(b属于16至31)、192.168.0.0/Mask ,CIDR 的mask支持在16至28之间

描述:根据需要自行决定

二、在第一个VPC下创建子网

登录京东云公有云
打开控制台
选择”网络”->“私有网络”->“子网

在右侧点击按钮“创建”:

输入子网的信息,详细信息如图:

三、在子网下创建云主机

登录京东云公有云
打开控制台
选择”弹性计算”->“云主机”->”实例”

右侧按钮”创建“;(请选择“按配置“创建云主机,这样在不使用的时候,可以随时删除,如果选择”包年包月“,需要等包年包月到期以后才能删除相应的资源。)

输入云主机需要的信息,如图所示,点击右侧按钮”立即购买“,根据提示完成购买即可。

四、创建第二个VPC

第二个VPC创建和第一个VPC创建的基本过程和第一个基本上是一样的,这里不再赘述。要注意一下,两个VPC的CIDR不能重复,因为一旦重复,两个VPC将不能做VPCpeering,会有路由的问题产生。

五、创建第二个子网

创建第二个子网也和上面提到的创建过程一样,只不过在选择VPC的时候,选择第二个VPC,CIDR选择第二个VPC的一个CIDR子集。

六、创建第二个云主机

此处创建第二个云主机的时候和上面创建云主机过程一样,但是VPC和子网,要选择VPC2和subnet2。

七、创建VPCpeering,并配置路由规则

登录京东云公有云
打开控制台
选择”网络”->“私有网络”->“VPC对等连接”

点击右边的按钮“创建”:

输入相应的信息,这里是先建立一个VPC1到VPC2的连接,等一下还要建一个VPC2到VPC1的连接。所以这里的本端VPC是VPC1,对端是VPC2,VPC2的ID可以在VPC2的基本信息里看到。

VPC2的基本信息如下:

创建完成以后会提示更改路由配置,选择前往配置:

我们点开VPC1的默认路由表:

编辑路由策略,新增一条路由,目的端是VPC2的CIDR,下一跳选择vpc对等连接,下一跳选择我门创建的VPCpeering1,然后保存即可。

用同样的步骤,建立VPC2到VPC1的连接,并更改路由策略(这里不再赘述)。

八、测试云主机内网的连通性VPC1内的云主机信息如下

VPC2内的云主机信息如下:

SSH通过公网IP登录VPC1里的第一个云主机,然后ping一下第二个云主机的内网IP,可以看到ping通了,而且延时很小:

通用用第二个云主机ping一下第一个云主机:

至此我们实现了两个VPC之间的内网互通,目前了解到VPCpeering只能实现相同Region之间的联通,或者相同Region的不同用户的VPC互通。

总结

其实在业内常有关于“经典网络”与VPC的探讨。关于“经典网络”的安全问题探讨也让广大开发者对VPC有了更多的了解。如果拿“经典网络”与VPC进行比较来看,通过VPC,用户可以自由定义网段划分、IP地址和路由策略。同时,在安全方面,VPC可提供网络ACL及安全组的访问控制,更加的灵活性和安全。

VPC可适用于对安全隔离性要求较高的业务、托管多层web应用、弹性混合云部署等使用场景中,符合金融、政企等行业的强监管、数据安全要求。

无论是业内人士,还是厂商的产品规划中,都不难看到VPC更加被业界推崇,已逐渐成为网络市场的主流应用。

欢迎点击“链接”了解更多精彩内容

点击“阅读原文”可了解更多关于VPC的信息。

干货 | VPC之间的网络连通实践的更多相关文章

  1. 20169214 2016-2017-2 《网络攻防实践》第十一周实验 SQL注入

    20169214 2016-2017-2 <网络攻防实践>SQL注入实验 SQL注入技术是利用web应用程序和数据库服务器之间的接口来篡改网站内容的攻击技术.通过把SQL命令插入到Web表 ...

  2. <网络攻防实践> 课程总结20169216

    课程总结20169216 每周作业链接汇总 第一周作业:Linux基础入门(1-5).基本概念及操作 第二周作业:linux基础入门(6-11).网络攻防技术概述网络攻防试验环境搭构.Kali教学视频 ...

  3. zabbix使用fping监控任意两个节点之间的网络质量、丢包率和响应时间

    zabbix使用fping监控任意两个节点之间的网络质量.丢包率和响应时间 之前的博文 使用zabbix3..4的ICMP Ping模版实现对客户端网络状态的监控 https://www.cnblog ...

  4. 如何配置 VirtualBox 中的客户机与宿主机之间的网络连接

    如何配置 VirtualBox 中的客户机与宿主机之间的网络连接 作者: Aaron Kili 译者: LCTT rusking | 2017-03-01 13:40   评论: 3 收藏: 3 当你 ...

  5. 判断是否网络连通 .net Ping

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...

  6. PHP网络爬虫实践:抓取百度搜索结果,并分析数据结构

    百度的搜索引擎有反爬虫机制,我先直接用guzzle试试水.代码如下: <?php /** * Created by Benjiemin * Date: 2020/3/5 * Time: 14:5 ...

  7. Dockers(29)- 网络连通

    网络连通 背景 基于docker0建了两个容器tomcat01和tomcat02,网段位于172.12.0.0/16 我们又新建了一个网络,网段为192.168.0.0/16,基于此网段新建了两个容器 ...

  8. 干货 | 20多门AI网络课程资源(附链接+PDF)

    现如今,在火爆的人工智能领域,面临的最窘迫的问题是越来越庞大的产业规模和国家每年约500万的相关人才需求的矛盾.广阔的发展前景.巨大的人才缺口和令人心动的行业薪资,让越来越多的年轻人选择了进入这一行业 ...

  9. 干货 | 京东技术中台的Flutter实践之路

    在 2019 年,Flutter 推出了多个正式版本,支持的终端越来越多,使用的项目也越来越多.Flutter 正在经历从小范围尝鲜到大面积应用的过程,越来越多的研发团队加入到 Flutter 的学习 ...

随机推荐

  1. DOM基础1

    Document Object Model 文档对象模型 1.改内容: innerHTML 例:div1.innerHTML = "我能干<br />什么";      ...

  2. Educational Codeforces Round 63 选做

    D. Beautiful Array 题意 给你一个长度为 \(n\) 的序列.你可以选择至多一个子段,将该子段所有数乘上给定常数 \(x\) .求操作后最大的最大子段和. 题解 考虑最大子段和的子段 ...

  3. win2008R2 局域网共享

    1.解决windows server 2008 R2 不能开启网络发现 开始–>管理工具–>服务,以下3个服务选择自动.开启: Function Discovery Resource Pu ...

  4. GDI4

    前几篇我已经向大家介绍了如何使用GDI+来绘图,并做了一个截图的实例,这篇我向大家介绍下如何来做一个类似windows画图的工具.个人认为如果想做一个功能强大的绘图工具,那么单纯掌握GDI还远远不够, ...

  5. pyhton中matplotlib箱线图的绘制(matplotlib双轴图、箱线图、散点图以及相关系数矩阵图))

    //2019.07.23 1.箱形图,又称为盒式图,一般可以很好地反映出数据分布的特征,也可以进行多项数据之间分布特征的比较,它主要包含五个基础数据:中位数,两个上下分位数以及上下边缘线数据 其中的一 ...

  6. java基础源码 (6)--ArrayListt类

    原作出处:https://www.cnblogs.com/leesf456/p/5308358.html 简介: 1.ArrayList是一个数组队列,相当于动态数组.与java中的数组相比,它的容量 ...

  7. 如何通过 Python 和 OpenCV 实现目标数量监控?

    今天我们将利用python+OpenCV实现对视频中物体数量的监控,达到视频监控的效果,比如洗煤厂的监控水龙头的水柱颜色,当水柱为黑色的超过了一半,那么将说明过滤网发生了故障.当然不仅如此,我们看的是 ...

  8. 吴裕雄--天生自然C++语言学习笔记:C++ 动态内存

    栈:在函数内部声明的所有变量都将占用栈内存. 堆:这是程序中未使用的内存,在程序运行时可用于动态分配内存. 可以使用特殊的运算符为给定类型的变量在运行时分配堆内的内存,这会返回所分配的空间地址.这种运 ...

  9. C# Process类详解

    C# Process类详解 Process[] processes = Process.GetProcessesByName(current.ProcessName); 根据进程名字找到所有进程,返回 ...

  10. 【Python】【Django】登录用户-链接Mysql