AWS之VPC、Subnet与CIDR
什么是CIDR?
CIDR是英文Classless Inter-Domain Routing的缩写,中文是无类别域间路由,是一个在Internet上创建附加地址的方法,这些地址提供给服务提供商(ISP)。
再由ISP分配给客户。
CIDR将路由集中起来。使一个IP地址代表主要骨干提供商服务的几千个IP地址,从而减轻Internet路由器的负担。
为什么要选择CIDR,CIDR?
主要有例如以下两个作用:
1:就如之前介绍的CIDR能够减轻Internet路由器的负担
2:CIDR能够提高IP地址的利用率
再来介绍一下CIDR是怎样实现以上两个功能的。
CIDR的一个最基本的动作就是路由聚合(route aggregation),通过该动作能够实现如上两个功能,接下来举例介绍CIDR是怎样通过路由聚合实现这两个功能的。
一:CIDR功能之减轻Internet路由器的负担
如果我们有例如以下4个C类IP地址
1: 192.168.0.8 / 255.255.255.0 /11000000.10101000.00000000.00000000
2: 192.168.1.9 / 255.255.255.0 /11000000.10101000.00000001.00000000
3: 192.168.2.10 / 255.255.255.0 /11000000.10101000.00000010.00000000
4: 192.168.3.11 / 255.255.255.0 /11000000.10101000.00000011.00000000
能够看到以上4个IP地址的网络地址都不尽同样,所以在的路由表上面须要配置相应的4条路由到达相应的网络。
接下来做路由聚合,能够看到以上4个IP地址的二进制地址的前22位都是同样的,所以能够聚合成一个网络地址,这个网络地址的CIDR表达格式为192.164.0.0/22,该地址的解释为。这个网络的地址为192.164.0.0。且前22位为网络地址,后10位为主机地址。
因此如今能够将之前的4个C类地址配到这个网络以下,如此一来在路由器上面仅仅须要配置一条路由到达192.164.0.0/22网络就能够了,从而达到降低路由器负担的目的。
二:CIDR功能之提高IP地址的利用率
如果我们建立一个局域网,这个局域网初步规划将会有500个主机,因此须要500个IP地址,500个IP地址就须要这个地址是个B类地址。这个B类地址格式例如以下
192.168.0.0 / 255.255.0.0 /11000000.10101000.00000000.00000000
这个B类地址拥有256*256=65536个主机地址,可是仅仅须要500个主机地址。因此造成了IP地址浪费。接下来来做路由聚合,仅仅须要500个主机地址。因此须要后9位为主机地址
后9位为主机地址意味着将会有512个主机地址。如此一来地址浪费将大大缩小。地址的利用率将大幅提高。聚合后的网络地址例如以下:
192.168.254.0/23 (192.168.254.0 / 255.255.254.0 /11000000.10101000.11111110.00000000)
在AWS的VPC和Subnet上怎样应用CIDR?
在AWS上我们须要先创建一个VPC(Virtual Private Cloud)虚拟私有云,我们须要为这个云指定一个CIDR地址,然后向这个云中加入subnet并为每一个subnet指定CIDR地址。最后我们向subnet加入主机,AWS
会依据subnet的CIDR所拥有的主机地址自己主动分配主机地址给主机,接下来举例说明该过程:
先创建一个VPC。该VPC的CIDR地址例如以下
default-vpc , 172.31.0.0/16 ,10101100.00011111.00000000.00000000
接下来能够向这个VPC里面加入例如以下subnet
default-subnet , 172.31.0.0/20 , 10101100.00011111.00000000.00000000
public-subnet , 172.31.24.0/21 , 10101100.00011111.00011000.00000000
private-subnet , 172.31.16.0/21 ,10101100.00011111.00010000.00000000
从以上的二进制地址能够看出来全部subnet和VPC的网络地址的交集为10101100.00011111,即前16位同样 ,这正好为VPC的网络地址。因此能够顺利的将这3个subnet增加到VPC
接下来可以尝试着将例如以下一个subnet增加到VPC看是否可以成功
test-subnet , 172.31.0.0/21 ,10101100.00011111.00000000.00000000
这个地址是不能够增加到VPC的。其原由于test-subnet的21位网络地址与default-subnet的20位网络地址是重叠的。因此增加失败。
由此能够总结出AWS上配置VPC和subnet的规则即:全部subnet的网络是指必须是VPC网络地址的子集且不能与其它Subnet的网络地址重叠。这样一来就能够为VPC指定一条路由就能够到达VPC里面的全部Subnet。
AWS之VPC、Subnet与CIDR的更多相关文章
- 亚马逊AWS学习——VPC里面几个概念的关系
VPC中涉及几个概念: VPC 子网 路由表 Internet网关 安全组 今天来讲讲这几个概念之间的关系. 1. VPC 说的就是VPC,当然VPC范围是最大的,VPC即virtual privat ...
- How to create a jump server in AWS VPC
本来是写的Word文档,给其他国家的同时看的,所以一开始就是英文写的,也没打算翻译成为中文了,顺便抱怨下,网上资料找了很久的资料都没有看到介绍怎么在单机环境下搭建RD Gateway的,写本文的目的是 ...
- 亚马逊AWS学习——EC2的自定义VPC配置
1 网络配置 EC2即亚马逊AWS云服务中的虚拟主机.创建EC2实例时如果使用的默认VPC并分配了公有IP是可以上网的.但我们经常需要自定义的网络环境,这时就需要自己定义VPC和子网了. 1.1 配置 ...
- 亚马逊AWS学习——EC2的自己定义VPC配置
转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/47153421 本文出自[我是干勾鱼的博客] 1 网络配置 EC2即亚马逊AWS云 ...
- AWS CloudFormation Template
{ "AWSTemplateFormatVersion" : "2010-09-09", "Parameters" : { "Ba ...
- 在AWS中创建NAT节点
NAT, Network Address Translation,即网络地址转换.当内部网络的主机想要访问外网,但是又不想直接暴露给公网,可以通过NAT节点来访问外网.这样做有两个好处,第一是内网的主 ...
- aws中的路由表
参考官方文档: 由表中包含一系列被称为路由的规则,可用于判断网络流量的导向目的地. 在您的 VPC 中的每个子网必须与一个路由表关联:路由表控制子网的路由.一个子网一次只能与一个路由表关联,但您可以将 ...
- aws 试题
/* Domain 1 Design Resilient Architectures 1. Which of the following statements regarding S3 storage ...
- 浅谈VPC (转)
来源于知乎:https://zhuanlan.zhihu.com/p/33658624 VPC全称是Virtual Private Cloud,翻译成中文是虚拟私有云.但是在有些场合也被翻译成私有网络 ...
随机推荐
- Vue 区别
computed和methods区别 效果是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值. 而methods,在重新渲染的时候,函数总会重新调用执行.
- CSS的常用属性(三)
静态定位 position: static (默认) 标准流 绝对定位 position: absolute 特点: 元素使用绝对定位之后,不占据原来的位置(脱标) 元素使用绝对定位,位置是从浏览器出 ...
- 【Oracle】客户端监听配置
首先找到oracle软件安装的目录,找到\product\11.2.0\client_1\network\admin,打开tnsnames.ora文件: 粘贴一下内容: LISTENER= (DESC ...
- 【python】random
1.random 和其他语言一样,返回大于等于0.小于1的浮点数 2.uniform(a,b) 返回大于等于a.小于等于b的浮点数 3.randint(a,b) 这个很好理解,返回一个介于a和b之间的 ...
- PHP安装环境搭建
一. 安装PHP运行服务器 xampps-x64 二.安装PHP程序编辑软件(Zend Studo需要破解) 安装后打开,再关闭 把com.zend.php.core_10.6.0.v20140128 ...
- Bootstrap 模态框(Modal)带参数传值实例
模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 为了实现父窗体与其的交互,通常需要向其传值,实现 ...
- vue中eventbus 多次触发的问题
相比于react,vue是一个更上手很快的框架.所说简单易用,但在做Vue项目的过程中,就会发现,坑还是有的.组件之间传递数据是一个常见的需求,父子组件传递数据在官网有介绍,除了父子组件,一般地,任意 ...
- H5-data属性的一个问题
关于前端存数据的问题,前面写过一个博客:前端页面存取数据 看个例子: <!DOCTYPE html> <html lang="en"> <head&g ...
- Android 性能测试初探(六)
书接前文 Android 性能测试初探之功耗(五) 本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速.弱网之类的测试,但本系列文章都不去一一探 ...
- 11.【Linq】
11.2.4 Cast . OfType 和显式类型的范围变量 这两个操作符很相似:都可以处理任意非类型化的序列(它们是非泛型 IEnumerable 类的扩展方法),并返回强类型的序列. Cast ...