当 IPv4 地址分配给一台设备时,该设备使用子网掩码来确定自身所属网络。 网络地址是代表同一网络中的所有设备的地址。

当发送网络数据时,设备使用此信息来确定是可以本地发送数据包,还是必须将数据包发送到默认网关以进行远程传输。 当主机发送数据包时,它会根据子网掩码将自己的 IP 地址的网络部分与目标 IP 地址的网络部分进行对比。 如果网络部分的各个位相符,表示源主机和目的主机位于同一网络中,因此数据包只需在本地传送。 如果不相符,则发送方主机会将数据包转发到默认网关,再由其转发到其他网络。

AND 运算

AND 运算是数字逻辑中使用的三种基本二进制运算之一。 另外两种是 OR 和 NOT。 虽然这三种运算都用于数据网络中,不过用于确定网络地址的是 AND。 因此,本章的讨论仅限于逻辑 AND。 逻辑 AND 运算比较两个位,所得结果如下:

1 AND 1 = 1(图 1)

0 AND 1 = 0(图 2)

0 AND 0 = 0(图 3)

1 AND 0 = 0(图 4)

对 IPv4 主机地址同其子网掩码逐位执行 AND 逻辑运算,可以确定该主机的关联网络地址。 地址和子网掩码之间按位 AND 运算得到的结果就是网络地址。