Alan H Asked: 2009-05-22 12:39:39 +0800 CST2009-05-22 12:39:39 +0800 CST 2009-05-22 12:39:39 +0800 CST XYZ0 是有效的 IP 地址吗? 772 最后一个八位字节为 0 的 IP 地址是否有效? 10.6.43.0 就我而言,我有以下网络掩码 255.255.252.0 其他八位字节的 0 呢? networking tcpip subnet 6 个回答 Voted Best Answer splattne 2009-05-22T12:41:36+08:002009-05-22T12:41:36+08:00 这取决于相关 IP 地址的子网。通常,子网中的第一个地址和最后一个地址分别用作网络标识符和广播地址。子网中的所有其他地址都可以分配给该子网上的主机。 例如,具有至少 24 位以 .0 或 .255 结尾的子网掩码的网络的 IP 地址永远不能分配给主机。子网的这种“最后”地址被认为是“广播”地址,相应子网上的所有主机都会响应它。 理论上,在某些情况下,您可以分配以 .0 结尾的地址:例如,如果您有一个像 192.168.0.0/255.255.0.0 这样的子网,则允许您为主机分配地址 192.168.1.0。但它可能会造成混乱,因此这不是一种非常普遍的做法。 在你的例子中 10.6.43.0 with subnet 255.255.252.0 (22 bit subnet mask) 表示子网 ID 10.6.40.0,主机地址范围从 10.6.40.1 到 10.6.43.254,广播地址 10.6.43.255。因此,理论上,您的示例 10.6.43.0 将被允许作为有效的主机地址。 pQd 2009-05-22T12:45:30+08:002009-05-22T12:45:30+08:00 您的问题的答案取决于网络掩码。一般来说,“以 .0 或 .255 结尾的 IP 地址无效”是错误的。取 10.0.1.0/23 - 这是有效的 IP 地址。 10.6.43.0/255.255.252.0 aka 10.6.43.0/22 也是有效的。 这就是理论。最合理的网络设备 [包括 linux 服务器、windows box、cisco / hp / 等] 可以正常使用此类地址,但我见过 dlink 和其他低端网络设备 [路由器、接入点] 不接受此类地址。 Alan H 2009-05-22T13:24:13+08:002009-05-22T13:24:13+08:00 我发现了这个,它声称它是有效的,具体取决于您的子网掩码。 http://en.wikipedia.org/wiki/IPv4#Addresses_ending_in_0_or_255 Joachim Sauer 2009-07-05T07:44:42+08:002009-07-05T07:44:42+08:00 我想为其他八位字节添加一些关于 0 的信息: 这很简单:完全没有问题,正如相当常见的专用网络地址192.168.0.1所示。 当然,更明显的例子是127.0.0.1. Josh Kelley 2009-06-28T04:26:12+08:002009-06-28T04:26:12+08:00 我遇到了远程网络拒绝来自我的网络的 IP 地址的问题,如果它们以 0(或 255)结尾并且它们来自 C 类范围,因为任何以 0 结尾的东西都是无效的 C 类网络。 这是几年前的事了。我不知道是否有人仍然阻止这样的地址。 Squeeb 2011-01-18T06:10:18+08:002011-01-18T06:10:18+08:00 只是我发现可能值得注意的事情: 如果您正在为 iptables 运行 R-fx 网络的 APF 脚本,它会将所有流量降至 0.0.0.255 我们有一个 BT 客户,其地址以 .255 结尾,前缀为 /21 .. 从技术上讲,这是一个有效的 IP 地址,但是 R-fx 网络的人认为有理由丢弃这些地址的数据包。
这取决于相关 IP 地址的子网。通常,子网中的第一个地址和最后一个地址分别用作网络标识符和广播地址。子网中的所有其他地址都可以分配给该子网上的主机。
例如,具有至少 24 位以 .0 或 .255 结尾的子网掩码的网络的 IP 地址永远不能分配给主机。子网的这种“最后”地址被认为是“广播”地址,相应子网上的所有主机都会响应它。
理论上,在某些情况下,您可以分配以 .0 结尾的地址:例如,如果您有一个像 192.168.0.0/255.255.0.0 这样的子网,则允许您为主机分配地址 192.168.1.0。但它可能会造成混乱,因此这不是一种非常普遍的做法。
在你的例子中
表示子网 ID 10.6.40.0,主机地址范围从 10.6.40.1 到 10.6.43.254,广播地址 10.6.43.255。因此,理论上,您的示例 10.6.43.0 将被允许作为有效的主机地址。
您的问题的答案取决于网络掩码。一般来说,“以 .0 或 .255 结尾的 IP 地址无效”是错误的。取 10.0.1.0/23 - 这是有效的 IP 地址。
10.6.43.0/255.255.252.0 aka 10.6.43.0/22 也是有效的。
这就是理论。最合理的网络设备 [包括 linux 服务器、windows box、cisco / hp / 等] 可以正常使用此类地址,但我见过 dlink 和其他低端网络设备 [路由器、接入点] 不接受此类地址。
我发现了这个,它声称它是有效的,具体取决于您的子网掩码。
http://en.wikipedia.org/wiki/IPv4#Addresses_ending_in_0_or_255
我想为其他八位字节添加一些关于 0 的信息:
这很简单:完全没有问题,正如相当常见的专用网络地址
192.168.0.1
所示。当然,更明显的例子是
127.0.0.1
.我遇到了远程网络拒绝来自我的网络的 IP 地址的问题,如果它们以 0(或 255)结尾并且它们来自 C 类范围,因为任何以 0 结尾的东西都是无效的 C 类网络。
这是几年前的事了。我不知道是否有人仍然阻止这样的地址。
只是我发现可能值得注意的事情:
如果您正在为 iptables 运行 R-fx 网络的 APF 脚本,它会将所有流量降至 0.0.0.255
我们有一个 BT 客户,其地址以 .255 结尾,前缀为 /21 .. 从技术上讲,这是一个有效的 IP 地址,但是 R-fx 网络的人认为有理由丢弃这些地址的数据包。