一、IP地址组成
把一个IP地址分成两部分:网络号(标识了一个局域网)+主机号(标识了一个局域网中的设备)
下图是通过一个路由器连接的两个局域网(两个相邻的局域网),网络号不相同,同一个局域网中的设备网络号必须相同,主机号必须不同
过去曾提出一种划分网路号和主机号的方案: 把所有IP地址分为五类,如下图所示
网络号:IP地址中的主机地址全为0(代表整个局域网)192.168.100.0
广播地址:IP地址中的主机地址全为1(用于给同一个链路中相互连接的所有主机发送数据包) 192.168.100.0
环回地址:127.*(用于本机环回测试) 127.0.0.1
二、子网掩码
子网掩码格式和IP地址格式一样,也是一个32位的二进制数。
其中左边是网络位,用二进制数字”1“表示;右边是主机位,用二进制数字”0“表示
子网掩码也可以使用二进制所有高位1相加的数值来表示,如以上
它和IP地址都是32位2进制地址,都可以用点分十进制标识
但是子网掩码与IP地址不同:IP地址的32位2进制数,每一位都可以任意取0或1,可以表示2^32-2个(刨去全是0的网络本身或者全是1的广播地址)
而子网掩码的二进制构成只有两部分, 表示网络位的1和表示主机位的0,左边的1和右边的0分别连续,所以2进制的点分十进制表示不能随意取值,理论上的IPv4子网掩码只有30个
子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据
最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯
三、IP协议的两个核心功能:地址管理和路由选择
路由选择就是描述了IP协议(IP数据报)转发过程
在进行IP数据报转发时每个路由器都是无法知道网络路径全貌的,只知道一些局部信息(一个路由器能知道哪些设备和它自己是相连的),这就意味着IP数据在转发过程中是一个探索式的过程
每个路由器内部都有一个数据结构”路由表“,根据数据报中的目的IP查路由表,若查到了就直接按照路由表给定的方向(从哪个网络接口进行转发)继续转发就行;若没查到则按照默认的表项转发即可