Y
,可以很容易地计算相应的网络掩码:将Y
乘以设置的位,然后用零填充“在右边”,直到一个总数达到32位(IPv4)。示例:前缀
24
,因此是网络掩码11111111 11111111 11111111 00000000
或255.255.255.0
。 /> 00000000 11111111 00000000 11111111
(0.255.0.255
)00000000 11111111 11111111 11111111
(0.255.255.255
)11111111 11111111 11111111 00000001
(255.255.255.1
)指定“前缀”显然不会在这些情况下不能使用。可以确定101%。)
#1 楼
RFC950声明由于标识子网的位是由位掩码指定的,因此它们不必在地址中相邻。但是,我们建议
子网位是连续的,并定位为本地地址的最高有效位
。
大多数设备在遵循此建议之前执行它。早在2012年,我仅在仅Linux网络上使用了非连续的子网掩码。我测试过的Windows,OSX,Cisco和HP设备无法处理/不允许它。
#2 楼
如果使用前缀和网络,则答案是否定的,这些位必须是连续的。在某些情况下,可以使用通配符掩码(掩码的倒数),例如思科ACL,并且这些ACL可以是任何位模式。例如,您可以阻止来自网络上所有奇数主机的流量。这似乎仍然可以教,但是我没有看到它在现实世界中经常使用(尽管我已经看过)。#3 楼
否。网络掩码是一个连续的系列。(其他都是“通配符”模式。)
评论
这不是真的。 30年前有很多。可能还有一些正在运行。
– MAP
16年7月6日在2:02
我对此表示高度怀疑。没有现代的路由硬件将允许它。 80年代的路由器将在当今IP的工作方式上遇到许多问题。 (在那儿。告诉过您'不使用全零子网-即使在90年代后期也是一个问题)我在那个时代仍然只有两个设备不会接受非连续的网络掩码。 (WTI pdus之所以存在,是因为它们有10bT端口。大多数互联网都与他们无话可说。)
–瑞奇
16年7月6日在5:37
#4 楼
当TCP / IP首次问世并得到广泛传播时,实际上有许多子网具有不连续的掩码。但是随着地址的稀缺,网络其余部分的开销使这些前缀可以进行全局路由,而不是强制所有内容都仅基于前缀。太多,全球网络更改为仅支持前缀。实际上,实际上仍然会有一些遗留网络在内部使用不连续的掩码(许多IGP仍然支持此功能)。但是,当这样的网络连接到Internet时,它具有覆盖所有网络的单个前缀,并在BGP中发布。而且,当然,EGP(BGP的前身)仅支持Classful寻址。我只是不知道他们中是否有人还在这样做。他们中的许多人甚至都没有退出。 ARPAnet的内部网络掩码为255.0.0.255(IIRC)。评论
废话。这与CIDR,类或聚合无关。网络掩码始终是连续的。
–瑞奇
16年7月6日在1:52
例如,请参阅RFC 950。第15页给出了一个网络掩码为255.255.255.88的示例。
–罗斯压机
16年7月6日在3:14
我认为RFC 1519的第12页实际上会伤害您的情况,因为唯一相关的句子是:“唯一突出的约束是必须使掩码保持连续。” (强调我的)由于类在类路由中隐含/假定了掩码,并且仅使用了三个连续的掩码,并且CIDR上的RFC指定了连续的掩码,因此看来您的答案是错误的。 FreeBSD列表帖子对我来说是个谜。
– Todd Wilcox
16年7月6日在4:24
替代的RFC是4632:tools.ietf.org/html/rfc4632注意,已经讨论并使用了斜杠符号,并且“前缀长度”一词出现了好几次,如果使用了非连续的掩码,则两者都毫无意义。支持的。从RFC 950可以清楚地看出,在早期,可能有使用非连续掩码的系统,但是提出来并不能帮助询问者了解TCP / IP当前的工作方式,并且可能会造成混乱。
– Todd Wilcox
16年7月6日在4:44
由于标识子网的位由位掩码指定,因此它们不必在地址中相邻。但是,我们建议子网位是连续的,并定位为本地地址的最高有效位。尽管它不包含当今使用的应该/必须的措辞,但这正是每个人都建立了现代子网功能的方式。在超过三十年的联网中,我从未遇到过允许不连续子网的技术。
–瑞奇
16年7月6日在5:02
评论
我相信这已被RFC1519取代,RFC1519明确要求使用连续的掩码。
–user1686
17年9月11日在6:10
@grawity可能是这种情况。发现“唯一的突出约束是必须使遮罩保持连续。”在谈论CIDR时,但阅读的内容不足以获取上下文。
–Filip Haglund
17年9月11日上午10:01