教程VLSM算法教程及案例.docx

上传人:b****4 文档编号:24140269 上传时间:2023-05-24 格式:DOCX 页数:44 大小:156.40KB
下载 相关 举报
教程VLSM算法教程及案例.docx_第1页
第1页 / 共44页
教程VLSM算法教程及案例.docx_第2页
第2页 / 共44页
教程VLSM算法教程及案例.docx_第3页
第3页 / 共44页
教程VLSM算法教程及案例.docx_第4页
第4页 / 共44页
教程VLSM算法教程及案例.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

教程VLSM算法教程及案例.docx

《教程VLSM算法教程及案例.docx》由会员分享,可在线阅读,更多相关《教程VLSM算法教程及案例.docx(44页珍藏版)》请在冰豆网上搜索。

教程VLSM算法教程及案例.docx

教程VLSM算法教程及案例

前言:

基于群里或者一些刚刚接触网络基础的新人,VLSM的一些思路和算法在网上都不太容易找个统一的、容易让人懂的教程,在这里,我个人整理一下,用自己个人的思路去写基本一些算法及思路。

注意:

本教程知识适合于新人,VLSM知识熟悉程度的同学可以忽视。

虽然总有一些学网络之后的人,自己能力也不差,然后工作环境使用“子网划分运算”类似于这样的软件进行运算方便工作,可是太过依赖,掩码和子网这种东西不够深刻的话,容易淡忘,个人认为,在中国,虽然ipv4地址虽然面临短缺这样的一直持续的局面,大部分使用VLSM和NAT等技术等解决公网IP地址不足问题终究不是解决问题之根本,在眼前,不管是教科书还是网上,都“闹着”:

“ipv4即将被ipv6取代”或者是“ipv6是王道,ipv4落后”这样的信息,导致不少人认为ipv4不值得学习了,ipv6才是需要学习,ipv6地址足够,不需要再划分,那么不需要学习VLSM的知识。

对于这样的想法,我只能说不切实际。

对于今天网络环境,基于个人我看法是:

(1)在中国ipv4在未来20年内依然存在,并且和ipv6并存。

(2)虽然ipv6地址是很多,但是在天朝环境发展畸形,有钱人和企业或者ISP能用到。

(3)更替网络环境需要代价,这种代价不是那么快就做的,钱的问题而已,用户?

企业?

(4)基于人的欲望不会满足,我相信子网划分依然存在(ipv6也带网络号和主机号的),基于网络安全考虑,在ipv6,NAT的技术依然存在。

(5)现阶段,ipv6地址很少被用到,建议依然是需要学习,因为它是新东西,ipv4会有的一些东西,ipv6它跟着有,一大把技术都会运行在它的基础下的。

作为一名网络工程师,ipv6一些基础知识和配置技术,必须要学。

如上是个人对ipv4和ipv6的看法,如觉得不正确,请无视。

谢谢!

学网络QQ群.风烟俱净

知识结构大纲:

2的幂次方

基本算法:

与运算计算案例

凑数字法

基于子网数的划分

VLSM:

子网划分基于主机数的划分案例

基于点到点掩码

子网聚合

汇总:

路由汇总

知识链接:

IP地址基础知识.xlsx

(一)基本算法

(1)2的幂次方

学习原因:

在IPv4地址当中,使用子网掩码来匹配它网络前缀及地址范围,往往在计算的时候,或者不一定直接知道某个网络地址的地址的主机数。

而2的幂次方就是可以直接计算出来其的主机数。

首先我们明确一下,子网掩码的三种表示方法,如下表:

子网掩码

十进制表示

子网掩码二进制表示

网络

前缀

128.0.0.0

10000000.00000000.00000000.00000000

/1

192.0.0.0

11000000.00000000.00000000.00000000

/2

224.0.0.0

11100000.00000000.00000000.00000000

/3

240.0.0.0

11110000.00000000.00000000.00000000

/4

248.0.0.0

11111000.00000000.00000000.00000000

/5

252.0.0.0

11111100.00000000.00000000.00000000

/6

254.0.0.0

11111110.00000000.00000000.00000000

/7

255.0.0.0

11111111.00000000.00000000.00000000

/8

255.128.0.0

11111111.10000000.00000000.00000000

/9

255.192.0.0

11111111.11000000.00000000.00000000

/10

255.224.0.0

11111111.11100000.00000000.00000000

/11

255.240.0.0

11111111.11110000.00000000.00000000

/12

255.248.0.0

11111111.11111000.00000000.00000000

/13

255.252.0.0

11111111.11111100.00000000.00000000

/14

255.254.0.0

11111111.11111110.00000000.00000000

/15

255.255.0.0

11111111.11111111.00000000.00000000

/16

255.255.128.0

11111111.11111111.10000000.00000000

/17

255.255.192.0

11111111.11111111.11000000.00000000

/18

255.255.224.0

11111111.11111111.11100000.00000000

/19

255.255.240.0

11111111.11111111.11110000.00000000

/20

255.255.248.0

11111111.11111111.11111000.00000000

/21

255.255.252.0

11111111.11111111.11111100.00000000

/22

255.255.254.0

11111111.11111111.11111110.00000000

/23

255.255.255.0

11111111.11111111.11111111.00000000

/24

255.255.255.128

11111111.11111111.11111111.10000000

/25

255.255.255.192

11111111.11111111.11111111.11000000

/26

255.255.255.224

11111111.11111111.11111111.11100000

/27

255.255.255.240

11111111.11111111.11111111.11110000

/28

255.255.255.248

11111111.11111111.11111111.11111000

/29

255.255.255.252

11111111.11111111.11111111.11111100

/30

255.255.255.254

11111111.11111111.11111111.11111110

/31

255.255.255.255

11111111.11111111.11111111.11111111

/32

如上为子网掩码三种表示方法,第一种为我们经常看到的十进制表示方法,第二种就是二进制表示,第三种就是网络前缀的表示方法,网络前缀的表示方法比较方便,但是从新手看来不容易。

如上图,网络前缀,跟子网掩码二进制表示其实都是一样原理,子网掩码,4个字节,一个字节就是8位的二进制,而10000000.00000000.00000000.00000000,可以明确看到前面只有一个1,那么它的网络前缀就是,1对应就是128(后面我们再讲解凑数字法)。

在IP地址格式规定,地址长度是32位的二进制,4个字节,每个字节8个二进制(比特)。

子网掩码就是让我们看出来这个IP地址到底属于哪个范围里面的IP地址,相应得出网络地址、地址范围及广播地址。

首先我们掌握2的幂次方,由于子网划分经常使用B类、C类进行划分,我在理论要掌握2的幂次方应该为1到16.如下面表格:

幂次方数

主机数

2^1

2

2^2

4

2^3

8

2^4

16

2^5

32

2^6

64

2^7

128

2^8

256

2^9

512

2^10

1024

2^11

2048

2^12

4096

2^13

8192

2^14

16384

2^15

32768

2^16

65536

从上面看,我们至少应该熟悉1到10的2幂次方的转换,这种东西也有规律,大家可以看出来,也可以直接记忆,另外11带到16也建议记忆,32768是STP的默认根桥优先级的值,65535是计算机服务端口号最后一个。

方便记忆。

2的幂次方的记忆,主要用在我们计算主机数的时候用得上。

例如:

网络地址:

192.168.0.0/27,可用地址范围是多少?

计算:

<1>已知网络前缀为27,那么主机号位数等于=32(ipv4长度)-网络前缀=5,知道主机号位数为5的“0”那么就是2的5次方幂了,也就是2^5幂次方。

就是32

<2>32需要-2,因为192.168.0.0是网络地址和192.168.0.31是广播地址,因此32-2得30可用的主机IP地址。

<3>那么得出的可用可用IP主机地址范围为192.168.0.1~192.168.0.30

因此,必须掌握1到8的2的幂次方所得出的数。

(2)凑数字法

学习原因:

凑数字法是计算二进制和十进制转换的的算法,VLSM是否熟悉,也跟这个算法比较紧密,因此必须熟悉其计算的思路,这样依据算法来计算出来准确的的数据,再进行VLSM的划分或者汇总。

首先我们列举出来ipv4中的一个字节里面的二进制和十进制的对应关系,一个字节也就是8个二进制,从左边往右边排列:

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

而11111111怎么组成十进制的255呢?

结构如下:

255

=

128

+

64

+

32

+

16

+

8

+

4

+

2

+

1

64×2

+

32×2

+

16×2

+

8×2

+

4×2

+

2×2

+

1×2

+

1

规则:

凑数字法,十进制转二进制,就是字节里面的二进制和十进制的转换,计算的时候,首先拿出第一个ip地址的第一个字节,然后将其步骤匹配,匹配成功的值为1,匹配失败的值为0,然后排列起来就是答案了。

例子1:

对200进行十进制转二进制

<1>匹配128,200>=128,因此匹配成功,为1,200-128,剩余72,继续往下匹配

<2>匹配64,72>=64,因此匹配成功,为1,72-64,剩余8,继续往下匹配

<3>匹配32,8<32,因此匹配不成功,为0,继续往下匹配

<4>匹配16,8<16,因此匹配不成功,为0,继续往下匹配

<5>匹配8,8=8,因此匹配成功,为1值,至此200已经完全被匹配完了,剩余的值都为最后三位都为0

结果:

200等于11001000

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

200

1

1

0

0

1

0

0

0

可以如上看出来200等于128+32+0+0+8+0+0+0(其实就是128+32+8)

例子2,对253进行十进制转二进制

<1>匹配128,253>=128,匹配成功,为1,253-128,得125,继续往下匹配

<2>匹配64,125>=64,匹配成功,为1,125-64,得61,继续往下匹配

<3>匹配32,61>=32,匹配成功,为1,61-32,得29,继续往下匹配

<4>匹配16,29>=16,匹配成功,为1,29-16,得13,继续往下匹配

<5>匹配8,13>=8,匹配成功,为1,13-8,得5,继续往下匹配

<6>匹配4,5>=4,匹配成功,为1,5-4,得1,继续往下匹配

<7>匹配2,1<2,匹配不成功,为0,继续往下匹配

<8>匹配1,1=1,匹配成功,为1,至此结束

结果:

253等于11111101(128+64+32+16+8+4+0+1或者128+64+32+16+8+4+1)

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

253

1

1

1

1

1

1

0

1

例子3,对15进行十进制转二进制

<1>匹配128,15<128,匹配失败,为0,继续往下匹配

<2>匹配64,15<64,匹配失败,为0,继续往下匹配

<3>匹配32,15<32,匹配失败,为0,继续往下匹配

<4>匹配16,15<16,匹配失败,为0,继续往下匹配

<5>匹配8,15>8,匹配成功,为1,15-8得7,继续往下匹配

<6>匹配4,7>4,匹配成功,为1,7-4,得3,继续往下匹配

<7>匹配2,3>2,匹配成功,为1,3-2,得1,继续往下匹配

<8>匹配1,1=1,匹配成功,为1,到此结束

结果:

00001111(0+0+0+0+8+4+2+1或者8+4+2+1)

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

15

0

0

0

0

1

1

1

1

凑数字法,二进制转十进制,方式跟十进制转二进制差不多,只是反过来而已。

从左边往右,1就是有,0就是没有

例子4:

对11010101进行二进制转换成十进制。

<1>1,有,+128

<2>1,有,+64

<3>0,没有

<4>1,有,+16

<5>0,没有

<6>1,有,+4

<7>0,没有

<8>1,有,+1

结果:

那么就是128+64+16+4+1=213

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

213

1

1

0

1

0

1

0

1

例子5,对01010101进行二进制转换成十进制。

<1>0,没有

<2>1,有,+64

<3>0,没有

<4>1,有,+16

<5>0,没有

<6>1,有,+4

<7>0,没有

<8>1,有,+1

结果:

64+16+4+1=85

二进制

1

1

1

1

1

1

1

1

十进制

128

64

32

16

8

4

2

1

85

0

1

0

1

0

1

0

1

(3)与运算计算网络地址

当我们学会2的幂次方数和凑数字法,我们就能对进制进行灵活转换,但有时候单凭肉眼难以看清一个IP地址所处的子网地址到底是哪个?

这样一来就使用2的幂次方计算机过于庞大,与运算能帮助我们计算网络地址。

规则:

学过与运算的同学,都知道“真真为真”,而对于子网掩码二进制来说,1对1为1,否则为0的规则。

简单计算:

1010和0110与运算的结果:

列举出来:

1010

0110

0010

如上,与运算的结果为0010

原因:

1对0为0,0对1为0,1对1为1,0对0为0

例子6,对01100101和00001111进行与运算

列举出来01100101

00001111

00000101

如上,与运算的结果为00000101

当我们熟悉如上的计算之后就可以对ipv4地址进行与运算,当然这里主要针对是无类的IP地址,非A、B、C地址。

示例:

对172.16.66.255/19这个IP地址,要求计算其的网络地址是多少?

(子网地址)及其的广播地址。

<1>对172.16.66.255和子网掩码进行十进制转换成二进制,并且列举出来,进行与运算,网络前缀19,也就是255.255.224.0

二进制列举:

172.16.66.255:

10101100.00010000.01000010.11111111

255.255.224.0:

11111111.11111111.11100000.00000000

结果:

172.16.64.010101100.00010000.01000000.00000000

.

不难发现,172.16.66.255/19这个IP地址运算之后,前两个字节都没有任何变化,因为255(111111111)对任0或者1匹配都等于该其本身,

<2>得知网络地址为172.16.64.0/19,如何快速计算计算出来该网络地址的子网广播地址?

如果使用主机数的方法,数目比较庞大,32-19=13,就是2的13^次方,有8192-2个地址,怎么将庞大的地址纳入网络地址中?

可想而知,我们需要掌握一些规则才行,如下:

1.子网掩码是网络位与子网位全取1,主机位全取0

2.子网数等于2的借用子网位数次幂减去2,即可用子网数=(2子网借用位数次幂)-2

3.可用主机数等于2的主机位数幂减去2,即可用主机数=(2主机数次幂)-2

4.网络地址是网络位和子网位的数保持不变,主机位全取0;另外一种计算方法为IP地址与子网掩码转换成二进制,然后进与运算得出结果。

5.广播地址:

网络位和子网位保持不变,主机位全取1,也就是一个网段中最后一个IP地址。

6.有效IP地址范围(可用主机IP地址范围):

在一个网段中去掉最前面的一个网络地址和最后一个广播地址,剩余的范围即为有效IP地址范围。

基于上面的规则,我们发现“广播地址:

网络位和子网位保持不变,主机位全取1,也就是一个网段中最后一个IP地址。

”是我们计算子网广播地址的方法了。

就是网络位和子网位保持不变,就是网络号保持不变,主机号全为1。

那么:

原本的网络地址:

172.16.64.010101100.00010000.01000000.00000000

由于,网络前缀是19,那么32位的二进制里面,前面19位的0或者1都是网络号的部分了,也就是:

10101100.00010000.010,后面13位的0都是主机号:

00000.00000000

我们将00000.00000000中的0全写1,也就是11111.11111111,然后就成了10101100.00010000.01011111.11111111(广播地址二进制表示),然后转换成十进制,结果是172.16.95.255

网络地址

172.16.64.0

10101100.00010000.01000000.00000000

广播地址

172.16.95.255

10101100.00010000.01011111.11111111

<3>既然知道网络地址和广播地址了,那么可用IP主机范围地址就可以直接拿出来了,根据规则“有效IP地址范围(可用主机IP地址范围):

在一个网段中去掉最前面的一个网络地址和最后一个广播地址,剩余的范围即为有效IP地址范围”,那么网络地址下一个就是172.16.64.1,广播地址的前面一个地址就是172.16.95.254,那么可用IP范围就是172.16.64.1~172.16.95.254

第一个可用IP

172.16.64.1

10101100.00010000.01000000.00000001

最后一个可用IP

172.16.95.254

10101100.00010000.01011111.11111110

(二)子网划分

1.基于子网数的子网划分

对于有子网数目要求的计算题目,一般从子网数开始,就是要求使用某个很大地址的网络地址进行划分,划分成指定子网数目。

计算出来划分之后的子网掩码,即可知道详细信息。

基本的算法是Z=2n幂次方,Z:

子网数,n:

向主机号借用的位数。

例子7,某大型企业内网网络地址172.168.0.0/16,由于部门众多,及业务要求,要求网络管理员进行子网划分,要求划分成30个子网,请写出划分后的子网掩码和每个子网可用IP数,列举出来所有子网地址,并且列举出来第一个子网和最后一个子网的详细信息。

计算步骤:

<1>根据公式:

Z=2n幂次方进行填写,要求的子网数是30,那么2的多少幂次方>=30呢?

(2^?

>=30),答案是2的5幂次方等于32大于等于30,那么意思就说需要向主机号借5位的0作为新的网络号(网络位+子网位)

那么:

原本的子网掩码二进制表示:

11111111.11111111.00000000.00000000

划分之后的子网掩码二进制表示:

11111111.11111111.11111000.00000000红色表示:

子网位

将划分之后的二进制的子网掩码转换成十进制,那么就是255.255.248.0

可用IP数:

32-21=11,2^11-2得2046,因此每个子网的可用IP数为2046。

<2>已知子网掩码,要求写出所有子网地址(32个),对子网位进行推算,共有32中情况,全0全1子网可用,直接推算网络的地址的第三个字节的前五位:

子网

序号

子网号

子网网络地址

1

00000000

172.168.0.0/21

2

00001000

172.168.8.0/21

3

00010000

172.168.16.0/21

4

00011000

172.168.24.0/21

5

00100000

172.168.32.0/21

6

00101000

172.168.40.0/21

7

00110000

172.168.48.0/21

8

00111000

172.168.56.0/21

9

01000000

172.168.64.0/21

10

01001000

172.168.72.0/21

11

01010000

172.168.80.0/21

12

01011000

172.168.88.0/21

13

01100000

172.168.96.0/21

14

01101000

172.168.104.0/21

15

01110000

172.168.112.0/21

16

01111000

172.168.120.0/21

17

10000000

172.168.128.0/21

18

10001000

172.168.136.0/21

19

10010000

172.168.144.0/21

20

10011000

172.168.152.0/21

21

10100000

172.168.160.0/21

22

10101000

172.168.168.0/21

23

10110000

172.168.176.0/21

24

10111000

172.168.184.0/21

25

11000000

172.168.192.0/21

26

11001000

172.168.200.0/21

27

11010000

172.168.208.0/21

28

11011000

172.168.216.0/21

29

11100000

172.168.224.0/21

30

11101000

172.168.232.0/21

31

11110000

172.168.240.0/21

32

11111000

172.168.248.0/21

<3>列举第一个子网和最后一个子网信息。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1