码迷,mamicode.com
首页 > Web开发 > 详细

AWS之VPC、Subnet与CIDR

时间:2015-07-10 13:35:30      阅读:1055      评论:0      收藏:0      [点我收藏+]

标签:

什么是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

标签:

原文地址:http://blog.csdn.net/chndata/article/details/46828193

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!