tcpip协议中最核心的协议是 tcpip协议( 五 )


1.1 IP 地址概述
在计算机通信中,为了识别通信对端,必须要有一个类似于地址的识别码进行标识 。在数据链路中的 MAC 地址正是用来标识同一个链路中不同计算机的一种识别码 。作为 *** 层的 IP ,也有这种地址信息,一般叫做 IP 地址 。IP 地址用于在“连接到 *** 中的所有主机中识别出进行通信的目标地址” 。因此,在 TCP/IP 通信中所有主机或路由器必须设定自己的 IP 地址 。不论一台主机与哪种数据链路连接,其 IP 地址的形式都保持不变 。IP 地址(IPv4 地址)由32位正整数来表示 。IP 地址在计算机内部以二进制方式被处理 。然而,由于我们并不习惯于采用二进制方式,我们将32位的 IP 地址以每8位为一组,分成4组,每组以 “.” 隔开,再将每组数转换成十进制数 。如下:

tcpip协议中最核心的协议是  tcpip协议

文章插图
1.2 IP 地址由 *** 和主机两部分标识组成
如下图,*** 标识在数据链路的每个段配置不同的值 。*** 标识必须保证相互连接的每个段的地址不相重复 。而相同段内相连的主机必须有相同的 *** 地址 。IP 地址的“主机标识”则不允许在同一个网段内重复出现 。由此,可以通过设置 *** 地址和主机地址,在相互连接的整个 *** 中保证每台主机的 IP 地址都不会相互重叠 。即 IP 地址具有了唯一性 。
tcpip协议中最核心的协议是  tcpip协议

文章插图
IP地址的主机标识
如下图,IP 包被转发到途中某个路由器时,正是利用目标 IP 地址的 *** 标识进行路由 。因为即使不看主机标识,只要一见到 *** 标识就能判断出是否为该网段内的主机 。
tcpip协议中最核心的协议是  tcpip协议

文章插图
IP地址的 *** 标识
1.3 IP 地址的分类
IP 地址分为四个级别,分别为A类、B类、C类、D类 。它根据 IP 地址中从第 1 位到第 4 位的比特列对其 *** 标识和主机标识进行区分 。A 类 IP 地址是首位以 “0” 开头的地址 。从第 1 位到第 8 位是它的 *** 标识 。用十进制表示的话,0.0.0.0~127.0.0.0 是 A 类的 *** 地址 。A 类地址的后 24 位相当于主机标识 。因此,一个网段内可容纳的主机地址上限为16,777,214个 。B 类 IP 地址是前两位 “10” 的地址 。从第 1 位到第 16 位是它的 *** 标识 。用十进制表示的话,128.0.0.0~191.255.0.0 是 B 类的 *** 地址 。B 类地址的后 16 位相当于主机标识 。因此,一个网段内可容纳的主机地址上限为65,534个 。C 类 IP 地址是前三位为 “110” 的地址 。从第 1 位到第 24 位是它的 *** 标识 。用十进制表示的话,192.0.0.0~223.255.255.0 是 C 类的 *** 地址 。C 类地址的后 8 位相当于主机标识 。因此,一个网段内可容纳的主机地址上限为254个 。D 类 IP 地址是前四位为 “1110” 的地址 。从第 1 位到第 32 位是它的 *** 标识 。用十进制表示的话,224.0.0.0~239.255.255.255 是 D 类的 *** 地址 。D 类地址没有主机标识,常用于多播 。在分配 IP 地址时关于主机标识有一点需要注意 。即要用比特位表示主机地址时,不可以全部为 0 或全部为 1 。因为全部为 0 只有在表示对应的 *** 地址或 IP 地址不可以获知的情况下才使用 。而全部为 1 的主机通常作为广播地址 。因此,在分配过程中,应该去掉这两种情况 。这也是为什么 C 类地址每个网段最多只能有 254( 28 - 2 = 254)个主机地址的原因 。1.4 广播地址
广播地址用于在同一个链路中相互连接的主机之间发送数据包 。将 IP 地址中的主机地址部分全部设置为 1,就成了广播地址 。广播分为本地广播和直接广播两种 。在本 *** 内的广播叫做本地广播;在不同 *** 之间的广播叫做直接广播 。1.5 IP 多播
多播用于将包发送给特定组内的所有主机 。由于其直接使用 IP 地址,因此也不存在可靠传输 。相比于广播,多播既可以穿透路由器,又可以实现只给那些必要的组发送数据包 。请看下图:
tcpip协议中最核心的协议是  tcpip协议

文章插图
IP 多播多播使用 D 类地址 。因此,如果从首位开始到第 4 位是 “1110”,就可以认为是多播地址 。而剩下的 28 位可以成为多播的组编号 。此外,对于多播,所有的主机(路由器以外的主机和终端主机)必须属于 224.0.0.1 的组,所有的路由器必须属于 224.0.0.2 的组 。1.6 子网掩码
现在一个 IP 地址的 *** 标识和主机标识已不再受限于该地址的类别,而是由一个叫做“子网掩码”的识别码通过子网 *** 地址细分出比 A 类、B 类、C 类更小粒度的 ***。这种方式实际上就是将原来 A 类、B 类、C 类等分类中的主机地址部分用作子网地址,可以将原 *** 分为多个物理 *** 的一种机制 。子网掩码用二进制方式表示的话,也是一个 32 位的数字 。它对应 IP 地址 *** 标识部分的位全部为 “1”,对应 IP 地址主机标识的部分则全部为 “0” 。由此,一个 IP 地址可以不再受限于自己的类别,而是可以用这样的子网掩码自由地定位自己的 *** 标识长度 。当然,子网掩码必须是 IP 地址的首位开始连续的 “1” 。对于子网掩码,目前有两种表示方式 。之一种是,将 IP 地址与子网掩码的地址分别用两行来表示 。以 172.20.100.52 的前 26 位是 *** 地址的情况为例,如下:

推荐阅读