为了确定网络区域,分开主机和路由器的每个接口,从而产生了若干个分离的网络岛,接口端连接了这些独立网络的端点。这些独立的网络岛叫做子网(subnet)。
IP地址是以网络号和主机号来表示网络上的主机的,只有在一个网络号下的计算机之间才能“直接”互通,不同网络号的计算机要通过网关(Gateway)才能互通。但这样的划分在某些情况下显得并不十分灵活。为此IP网络还允许划分成更小的网络,称为子网(Subnet)。
IP地址被用来给Internet上的电脑一个编号,即标识一台主机。
IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。
IP地址包括两部分:网络号与主机号,即 IP地址=网络号-主机号
子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码,即将某个IP地址划分成网络地址和主机地址两部分。
有类网络就是指把IP地址能归结到A类、B类、C类IP。
类型 | 特征 | 子网掩码 |
---|---|---|
A类 | 网络号有8位 | 255.0.0.0/8 |
B类 | 网络号有16位 | 255.255.0.0/16 |
C类 | 网络号有24位 | 255.255.255.0/24 |
网络号可能不是固定的8、16、24位,而可能是变长的。无类网络IP地址的掩码是变长的。在有类网络的基础上,拿出一部分主机ID作为子网ID。
它的出现的因为,有类网络会指定特定的掩码位数,但有时不需要那么多位主机号,但其他子网又不能使用该子网中的IP,因此会出现大量浪费。
我们可以利用可变长子网掩码(VLSM)来划分本地子网,也就是说在它的主机号中再划分出网络号来:
未做子网划分的ip地址:网络地址+主机地址
做子网划分后的ip地址:网络地址+(子网网络地址+子网主机地址)
网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连。
网关实质上是一个网络通向其他网络的IP地址。
在不同子网内的主机是不能直接通信的,必须经过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机。
网关的IP通常是具有路由功能的设备的IP地址,具有路由功能的设备有
1.假定给你分配的网络块为200.35.1.0/24,请你指定一个子网中可以至少容纳20台主机的扩展网络前缀___.
2.这些子网中每个子网可以最多容纳多少台机器?
3.在这个/24下最多可以定义多少个子网(大小容纳20台主机)
4.给出200.35.1.0/24的所有子网的二进制形式和点分十进制表示____.
5.列出可以分配给#6(200.35.1.192/27)的主机地址范围
6.子网200.35.1.192/27 的广播地址是什么?
解答
1、20台主机,子网地址+1 网络号+1 广播地址+1,16<23<32,主机号需要5位,则子网号为32-24-5 = 3位,则该子网掩码为 11111111.11111111.11111111.11100000/27,即为255.255.255.224;
2、每个子网最多可容纳,32-2 = 30 台机器
3、子网号有3位,因此最多可定义 23 = 8 个子网
4、三位子网号从 000 ~ 111 :
11111111.11111111.11111111.000 00000
11111111.11111111.11111111.001 00000
...
11111111.11111111.11111111.111 00000
5、200.35.1.192/27 为 200.35.1.110 00000/27
即主机地址范围为:200.35.1.110 00001/27~200.35.1.110 11110/27
200.35.1.193 ~ 200.35.1.222
6、200.35.1.192/27 即 200.35.1.110 00000,广播地址为主机号全为1,即最后八位变为110 11111,答案为,200.35.1.110 11111,200.35.1.223。
一个单位有一个C类网络200.1.1。考虑到共有四个部门,准备划分子网。这四个部门内的主机数目分别是:A—72台, B—35台, C—20台, D—18台; 即共有145台主机。
(a) 给出一种可能的子网掩码安排来完成划分任务
(b) 如果部门D的主机数目增长到34台,那么该单位又该怎么做?
解答
(a)
直接划分:
A:64 < 72+3 < 128,主机号需要7位,最后八位的最高位为0
即子网掩码为 255.255.255.1 0000000,255.255.255.128
B:32 < 35+3 < 64,主机号需要6位,最后八位最高两位为10
即子网掩码为 255.255.255.11 000000,255.255.255.192
C:16 < 20+3 < 32,主机号需要5位,最后八位最高三位为110
即子网掩码为 255.255.255.111 00000,255.255.255.192.224
D:16 < 18+3 < 32,主机号需要5位,最后八位最高三位为111
即子网掩码为 255.255.255.111 00000,255.255.255.192.224
(b)
部门D主机涨到34台,则部门D需要6位主机号,但若使用之前的编码方案,只是将D改成六位主机号,发现不可以,因为A已经使用了 1 作为最后八位最高位,且B使用了 10 作为最后八位最高位,所以 D 就只能使用 11 作为最后八位最高位,但这样C主机就没法分配了。(实际上是由于A冗余太多,导致无法分配这么多IP地址给主机)
一种方案:解决A冗余太多的问题
A:64 < 72+3 < 64+32,使用 两位网络号01+三位网络号001
即子网掩码为 255.255.255.01 00000,255.255.255.001 00000
B不变
C:16 < 20+3 < 32,主机号需要5位,最后八位最高三位为000
即子网掩码为 255.255.255.000 00000
D:32 < 34+3 < 64,主机号需要6位,最后八位最高三位为11 000000
即子网掩码为 255.255.255.11 000000
超网(supernetting)是与子网类似的概念——IP地址根据子网掩码被分为独立的网络地址和主机地址。但是,与子网把大网络分成若干小网络相反,它是把一些小网络组合成一个大网络——超网。
子网划分是为了让我们拥有更小的网络,每个网络的主机数可以放得少一些。超网则是让我们把这些单块儿的小网络聚合,让一个网段儿能放更多的主机数。
假设下面有4个网络:
172.18.129.0/24
172.18.130.0/24
172.18.132.0/24
172.18.133.0/24
如果这四个进行路由汇聚,能覆盖这四个网络的汇总地址是多少?
解答:
1)将各子网地址的网段以二进制写出。
129的二进制代码是10000001
130的二进制代码是10000010
132的二进制代码是10000100
133的二进制代码是10000101
2)比较,从第1位比特开始进行比较,将从开始不相同的比特到末尾位填充为0。由此得到的地址为汇总后的网段的网络地址,其网络位为连续的相同的比特的位数。
3) 这四个数的前五位相同都是10000,所以加上前面的172.18这两部分相同的位数,网络号就是10000000,而10000000的十进制数是128,所以,路由汇聚的Ip地址就是172.18.128.0。所以最终答案就是172.18.128.0/21。
参考
原文:https://www.cnblogs.com/TRY0929/p/14737533.html