5.2 Internet技术
Internet的中文标准译名为英特网,它是全球的、极具影响的计算机网络,也是世界范围的信息资源宝藏。
5.2.1 Internet的概念
Internet又称网际网路或音译因特网、英特网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协定相连,形成逻辑上的单一巨大国际网络。
5.2.2 IP地址
我们把整个因特网看成为一个单一的、抽象的网络。
1.分类IP地址
所谓IP“分类”就是将IP地址划分为若干个固定类,每一类地址都由两个固定长度的字段组成,其中一个字段是网络号Net-id,它标识主机所连接到的网络,而另一个字段则是主机号Host-id,它标识该主机。这种两级的IP地址如公式6-1所示,可以记为:
IP地址::={<网络号>,<主机号>} (5-1)
如图5-12所示,给出了各种IP地址的网络号字段和主机号字段,这里A类、B类和C类地址是最常用的,D类用于多点广播,E类为将来使用保留。

图5-12 IP地址中的网络号字段和主机号字段
从图5-12可以看出:
A类、B类和C类地址的网络号字段Net–id(在图中这个字段是灰色的)分别为1,2和3字节长,而在网络号字段的最前面有1~3bit的类别比特,其数值分别规定为0,10和110。A类、B类和C类地址的主机号字段分别为3个、2个和1个字节长。
(1)A类地址
A类地址的net-id字段占一个字节,只有7个比特可供使用(该字段的第一个比特已固定为0),但可提供使用的网络号是126个(27-2)。
(2)B类地址
B类地址的Net-id字段有2字节,但前面两位(10)已经固定了,只剩下14个比特可以变化,因此B类地址的网络数为16384(214)。
(3)C类地址
C类地址有3个字节的Net-id字段,最前面的3个比特是(110),还有21个比特可以变化,因此C类地址的网络总数是2097152(221)。
这样,我们就可得出IP地址的使用范围。如表5-2所示。
表5-2IP地址的使用范围
| 网络类别 | 最大网络数 | 第一个可用的网络号 | 最后一个可用的网络号 | 每个网络中的最大主机数 |
| A | 126 (27 – 2) | 1 | 126 | 16777214 |
| B | 16384 (214) | 128.0 | 191.255 | 65534 |
C | 2097152 (221) | 192.0.0 | 223.255.255 | 254 |
2.IP地址的特点
(1)每一个IP地址都由网络号和主机号两部分组成。
(2)IP地址的这种结构和电话号码的等级结构虽然有相似之处,但并不完全一样。
(3)当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP地址,其网络号Net-id是不同的。这种主机称为多归宿主机(Multi homed host),或多接口主机。
(4)按照因特网的观点,用转发器或网桥连接起来的若干个局域网一个网络,因此这些局域网都具有同样的网络号Net-id。
(5)在IP地址中,所有分配到网络号Net-id的网络都是平等的。
3.IP地址的分配
分配IP应当注意一下4个方面。
] 在同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的。
] 用网桥(它只在链路层工作)互连的仍然是一个局域网,只能有一个网络号。
] 路由器总是具有两个或两个以上的IP地址。
] 当两个路由器直接相连时,在连线两端的接口处,可以指明也可以不指明IP地址。如指明了IP地址,则这一段连线就构成了一种只包含一段线路的特殊“网络”(如图中的N1、N2和N3)。之所以叫“网络”是因为它有IP地址。但为了节省IP地址资源,对于这种由一段连线构成的特殊“网络”,现在也常常不指明IP地址。
5.2.3子网的划分
1.划分子网的概念和思路
在今天看来,在ARPANET的早期,IP地址的设计确实不够合理。
(1)IP地址空间的利用率有时很低。
(2)给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。
(3)两级的IP地址不够灵活。
2.划分子网的基本思路
(1)一个拥有许多物理网络的单位,可将所属的物理网络划分为若干个子网(subnet)。
(2)划分子网的方法是从网络的主机号代用若干个比特作为子网号Subnet-id,而主机号Host-id也就相应减少了若干个比特。于是两级的IP地址在本单位内部就变为三级的IP地址:网络号Net-id、子网号Subnet-id和主机号Host-id。或者可以用公式6-2所示。
IP地址::={<网络号>,<子网号>,<主机号>} (5-2)
(3)凡是从其他网络发送给本单位某个主机的IP数据报,仍然是根据IP数据报的目的网络号Net-id找到连接在本单位网络上的路由器。
3.子网掩码
A类地址的默认子网掩码是255.0.0.0,或0xFF000000。
B类地址的默认子网掩码是255.255.0.0,或0xFFFF0000。
C类地址的默认子网掩码是255.255.255.0,或0xFFFFFF00。
表5-3 B类地址的子网划分选择(使用固定长度子网)
| 子网号的比特数 | 子网掩码 | 子 网 数 | 主机数/每一个子网 |
| 2 | 255.255.192.0 | 2 | 16382 |
| 3 | 255.255.224.0 | 6 | 8190 |
| 4 | 255.255.240.0 | 14 | 4096 |
| 5 | 255.255.248.0 | 30 | 2046 |
| 6 | 255.255.252.0 | 62 | 1022 |
7 | 255.255.254.0 | 126 | 510 |
| 8 | 255.255.255.0 | 254 | 254 |
| 9 | 255.255.255.128 | 510 | 126 |
| 10 | 255.255.255.192 | 1022 | 62 |
| 11 | 255.255.255.224 | 2046 | 30 |
12 | 255.255.255.240 | 4094 | 14 |
| 13 | 255.255.255.248 | 8190 | 6 |
| 14 | 255.255.255.252 | 16382 | 2 |
4.无分类编址CIDR(构造超网)
(1)网络前缀
划分子网在一定程度上缓解了因特网在发展中遇到的困难。然而在1992年因特网仍然面临三个必须迟早解决的问题,这就是:
] B类地址在1992年已分配了近一半,眼看就要在1994年3月全部分配完毕了。
] 因特网主干网上的路由表中的项目数急剧增长(从几千个增长到几万个)。
] 整个IPv4的地址空间最终将全部耗尽。
(2)CIDR最主要的特点
第一个特点是CIRD消除了传统的A类、B类和C类地址以及划分子网的概念,因而可以更加有效地分配IPv4的地址空间,并且可以在新的IPv6使用之前容许因特网的规模继续增长。
第二个特点是CIDR将网络前缀都相同的连续的IP地址组成“CIDR地址块”。
从表5-4可看出,除最后几行外,CIDR地址块都包含了多个C类地址,这就是“构成超网”这一名词的来源。
表5-4 常用的CIDR地址块
| CIDR前缀长度 | 点分十进制 | 包含的地址数 | 包含的分类的网络数 |
| /13 | 255.248.0.0 | 512 K | 8个B类或2048个C类 |
| /14 | 255.252.0.0 | 256 K | 4个B类或1024个C类 |
| /15 | 255.254.0.0 | 128 K | 2个B类或512个C类 |
| /16 | 255.255.0.0 | 64 K | 1个B类或256个C类 |
| /17 | 255.255.128.0 | 32 K | 128个C类 |
| /18 | 255.255.192.0 | 16 K | 64个C类 |
| /19 | 255.255.224.0 | 8 K | 32个C类 |
| /20 | 255.255.240.0 | 4 K | 16个C类 |
| /21 | 255.255.248 | 2 K | 8个C类 |
| /22 | 255.255.252.0 | 1 K | 4个C类 |
| /23 | 255.255.254.0 | 512 | 2个C类 |
| /24 | 255.255.255.0 | 256 | 1个C类 |
| /25 | 255.255.255.128 | 128 | 1/2个C类 |
| /26 | 255.255.255.192 | 64 | 1/4个C类 |
| /27 | 255.255.255.224 | 32 | 1/8个C类 |
5.2.4 Internet计算实例
1.子网判定的计算
例5-1现有两个子网分别是子网一202.118.212.0 子网掩码255.255.255.240和子网二202.118.212.128 子网掩码255.255.255.192,现有一主机IP地址为202.118.212.130,该主机IP地址属于哪个子网。
解题思路:对某一IP地址属于哪个子网的判定是采用按位与运算来进行计算的,具体运算方法为利用对应子网的子网掩码与IP地址进行按位“与”运算,按点分十进制的方式得出结果与哪个子网相同即属于哪个子网。计算过程如表5-5所示。
表5-5 子网计算过程表
| 子网 | 运算过程 | |
| 子网一 | IP地址 | 11001010011101101101010010000010 |
| 子网掩码 | 11111111111111111111111111110000 | |
| 运算结果 | 11001010011101101101010010000000 | |
| 十进制 | 202.118.212.128 | |
| 子网二 | IP地址 | 11001010011101101101010010000010 |
| 子网掩码 | 11111111111111111111111110000000 | |
| 运算结果 | 11001010011101101101010010000000 | |
| 十进制 | 202.118.212.128 | |
由上表可以看出运算结果与子网二相同,即该IP地址属于子网二。
2.网络ID、子网ID和主机ID的计算
例5-2现有一主机IP地址为202.118.212.130子网掩码为255.255.255.240,计算该地址的网络ID、子网ID和主机ID。
解题思路:对某一IP地址的网络ID的具体计算方法为利用该子网的子网掩码的网络位与IP地址对应位进行按位与运算,子网ID计算的具体运算方法为利用该子网的子网掩码的子网位与IP地址对应位进行按位与运算,主机ID计算的具体运算方法为利用该子网的子网掩码的主机位取反与IP地址对应位进行按位与运算,得出结果即为相应ID。具体计算如表5-6所示。
表5-6网络ID、子网ID和主机ID的计算表
| IP地址 | 运算过程 | |
| 网络ID | IP地址 | 11001010011101101101010010000010 |
| 子网掩码 | 11111111111111111111111100000000 | |
| 运算结果 | 11001010011101101101010000000000 | |
| 十进制 | 202.118.212.0 | |
| 子网ID | IP地址 | 11001010011101101101010010000010 |
| 子网掩码 | 00000000000000000000000011110000 | |
| 运算结果 | 00000000000000000000000010000000 | |
| 十进制 | (1000)2=8 | |
| 主机ID | IP地址 | 11001010011101101101010010000010 |
| 子网掩码 | 00000000000000000000000000001111 | |
| 运算结果 | 00000000000000000000000000000010 | |
| 十进制 | (0010)2=2 | |
通过判断,该主机属于C类地址,其网络位为24位,子网位为4位,主机位为4为。
3.子网划分
例5-3将网络202.118.212.0子网掩码255.255.255.0按照主机数为50、30、5划分出3个子网。具体计算如下。
主机数为50的子网划分:首先确定需要的主机位位数,即2n-3>=50(其中n为主机位位数,减3为广播、网络、路由所用IP地址),n取最小正整数,通过计算得n=6,即子网掩码为255.255.255.192,所占用IP地址为202.118.212.0-202.118.212.63。广播地址为202.118.212.63、网络地址为202.118.212.0。
主机数为30的子网划分:首先确定需要的主机位位数,即2n-3>=30(其中n为主机位位数,减3为广播、网络、路由所用IP地址),n取最小正整数,通过计算得n=6,即子网掩码为255.255.255.192,所占用IP地址为202.118.212.64-202.118.212.127(IP起始地址接上一子网)。广播地址为202.118.212.127、网络地址为202.118.212.64。
主机数为5的子网划分:首先确定需要的主机位位数,即2n-3>=5(其中n为主机位位数,减3为广播、网络、路由所用IP地址),n取最小正整数,通过计算得n=3,即子网掩码为255.255.255.248,所占用IP地址为202.118.212.128-202.118.212.135(IP起始地址接上一子网)。广播地址为202.118.212.135、网络地址为202.118.212.128。

