到目前为止,我所看到的标准是对本地网络上的设备使用192.168。*。* IP地址。
为什么要这样组合?如果是我,我会选择更简单的东西,例如1.0。*。*。历史原因是什么?
192
几乎可以肯定的部分来自以下事实:这是与C类IP地址相关联的私有用途块(早于有课的日子),而C类始于192.0.0.0
。为什么在家庭网络前缀为192.168的地方有更多信息?(超级用户),为什么192.168.xy用于本地IP?(堆栈溢出),但我找不到选择168
Internet 上任何地方的理由。
到目前为止,我所看到的标准是对本地网络上的设备使用192.168。*。* IP地址。
为什么要这样组合?如果是我,我会选择更简单的东西,例如1.0。*。*。历史原因是什么?
192
几乎可以肯定的部分来自以下事实:这是与C类IP地址相关联的私有用途块(早于有课的日子),而C类始于192.0.0.0
。为什么在家庭网络前缀为192.168的地方有更多信息?(超级用户),为什么192.168.xy用于本地IP?(堆栈溢出),但我找不到选择168
Internet 上任何地方的理由。
Answers:
注意:除非我们可以让RFC 1918 / RFC 1597的原始作者之一或当时(1994-1996)的InterNIC / RIPE NCC的人发表评论*,否则我们可能只能猜测,而不能回答这个问题。主要基于意见。
根据RFC 1918,以下三个范围保留供专用网络使用:
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
这就是为什么您会看到它们被用于本地网络上的设备的原因。
这三个“私有”地址范围中至少每个部分背后的推理都非常简单,但同样超出逻辑范围,这些都是基于我多年来的阅读所得出的猜测。
首先考虑分类网络如下(有关分类网络的维基百科文章来源):
Class A
0. 0. 0. 0 = 00000000.00000000.00000000.00000000
127.255.255.255 = 01111111.11111111.11111111.11111111
0nnnnnnn.HHHHHHHH.HHHHHHHH.HHHHHHHH
Class B
128. 0. 0. 0 = 10000000.00000000.00000000.00000000
191.255.255.255 = 10111111.11111111.11111111.11111111
10nnnnnn.nnnnnnnn.HHHHHHHH.HHHHHHHH
Class C
192. 0. 0. 0 = 11000000.00000000.00000000.00000000
223.255.255.255 = 11011111.11111111.11111111.11111111
110nnnnn.nnnnnnnn.nnnnnnnn.HHHHHHHH
Class D
224. 0. 0. 0 = 11100000.00000000.00000000.00000000
239.255.255.255 = 11101111.11111111.11111111.11111111
1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX
Class E
240. 0. 0. 0 = 11110000.00000000.00000000.00000000
255.255.255.255 = 11111111.11111111.11111111.11111111
1111XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX
如您所见,三个RFC1918范围中的每个范围都从一个旧的“有类”网络范围中切出了一个私有块。(在这种情况下为A级,B级和C级。)
引用邓布利多的话说: “从现在开始,我们将离开事实的牢固基础,一起走过阴暗的记忆沼泽,到最疯狂的猜测丛生。”
在RFC 1918成立(1996年2月)之前,IANA已经分配地址很多年了。(实际上,私有范围最初是在1994 年 3月的RFC 1597中提出的。)例如,如果进行查找,您会看到在1992-12-01级别3分配了此块。whois 8.0.0.0
因此,可以假设RFC1918的作者必须与IANA / Jon Postel一起寻找可用范围,从而为我们提供了上面列出的私有范围。
但是,除非有人直接参与流程*,否则这可能仍然是猜测。
* 或者只是一个拥有比我更好的Google-foo的人。我找不到该信息的很好的主要来源。
正如其他人指出的那样,RFC1918定义了3个私有IP范围。1996年,仍然有一些旧设备不支持CIDR,因此为每个班级创建了一个范围。B类地址始于128.0.0.0,C类地址始于192.0.0.0;选择168只是因为它尚未分配。
但这又提出了一个问题-为什么需要C级范围?由于A,B和C类之间的唯一区别是网络大小,为什么不只使用10.0.0.0/8?根据RFC1918:
如果可以设计适当的子网划分方案并由相关设备支持,则建议使用私有地址空间的24位块(A类网络)并制定具有良好增长路径的寻址计划。如果存在子网划分问题,则可以使用专用地址空间的16位块(C类网络)或20位块(B类网络)。
我不确定作者想出什么样的子网划分“问题”。也许由于内存限制,某些CIDR之前的硬件不支持A类网络(尽管您认为重要的是主机数量,而不是潜在主机数量)。
另外,即使192.168.xx是/ 16,C类网络也为/ 24,因此在有类网络中192.168.xx实际上包含256个子网。对于希望在CIDR之前的硬件上运行专用子网的大型组织,这可能很有用。
请根据RFC 6890第6页使用10.0.0.0-10.255.255.255 。
我曾经认为回答历史性问题是个好主意,但由于吸血鬼的帮助不足,我想避免定期这样做。在这种情况下,似乎没有必要。10.0.0.0/8很简单。