我试图理解IPv4或CIDR中构建的位。通读 RFC 文档,我了解到 IP 地址最初是由 32 位组成的 4 个八位字节。我对 255.255.0.0 的网络掩码是什么意思感到困惑?
如果我们查看与 cnn.com 相关的 IP 甚至更多 151.101.65.67
上面列出的 IP 的各个位 01101001.01000001.00110101.00110111 ?
还是我没有正确考虑这个问题。网络掩码以 255.255.0.0 为例,但我如何看待八位组中表示的实际位?
The IPv4 address 151.101.65.67 corresponds to the number that can be represented as hexadecimal 0x97654143 or decimal 2539995459.In binary it would be 0b10010111011001010100000101000011.It is shown as 151.101.65.67 for the sake of human readers (decimal 151 = hexadecimal 97 = binary 10010111, etc., notice that you can simply concatenate the hexadecimal or binary representations to form the full number,but not the decimal!)
网络掩码确定 IP 地址的哪一部分对应于网络,哪一部分是主机。它用二进制"1"显示"网络部分,用二进制"0"隐藏"客户端部分。
网络掩码被"and"为IP地址并生成网络地址。在您的示例中:
IP address (10010111011001010100000101000011) & mask (11111111111111110000000000000000)
is = 10010111011001010000000000000000,即 151.101.0.0
网络掩码通常只与本地相关。假设一个 IP 地址为 151.101.66.45 且网络掩码为 255.255.255.0 的客户端想要查看示例 IP 上的页面。
客户端需要做出的第一个决定是:它是否可以直接连接到地址(即它是否在同一个本地网络中?(或者它是否需要将请求发送到路由器(网关(。通过"&"使用自己的newtwork掩码(结果= 151.101.66.0(将其自己的IP与远程地址和自己的网络掩码(结果= 151.101.65.0(进行比较,它确定两个值不相等,因此请求转到路由器进行进一步通信。