在本论坛网络管理板块的推荐区见到一个帖子,标题是《不理解判断是否在同一网段的算法》(链接:http://bbs.51cto.com/thread-1506660-1.html),对里面提到的某些观点不
.
在本论坛网络管理板块的推荐区见到一个帖子,标题是《不理解判断是否在同一网段的算法》(链接:http://bbs.51cto.com/thread-1506660-1.html),对里面提到的某些观点不是很赞同,特意另开一贴,想和大家探讨一下。
第一个是关于是否同一网段的提法。原文问到,两个IP,A:192.168.0.1/16和B: 192.168.1.1/24是否在同一个网段。
我认为,实际上这不是一个正确的问题,这样的提法是没有分清“两个子网是否相同”和“两个IP是否属于同一网段”的区别。如果想判断的是两个IP是否属于同一网段,正确的提法是分为两个问题:
“对于给定的IP和掩码(192.168.0.1/16),判断192.168.1.1这个IP是否属于它的子网范围?”以及“对于给定的IP和掩码(192.168.1.1/24),判断192.168.0.1这个IP是否属于它的子网范围?”。那么,这个答案是非常清晰的了。
“两个子网是否相同”和“两个IP是否属于同一子网”这是两个不同的问题。如上,很明显,A和B两个子网是一种特殊的大包小关系,他们的子网范围肯定是不相同的,但是,两个IP是否属于同一子网,则应根据各自的掩码分别计算。
第二个是关于“一个子网不能包含另一个子网”以及“一个子网包含另一个子网不能通信或者必须借助ARP代理才能通信”的论点。
“一个子网不能包含另一个子网”这个说法是存在的,但是,仅仅局限于同一台设备而言。一个交换机上,配置的多个子网范围必定是不能重叠,这个说法没错,但是,即使是在对接的两台交换机上,其实也经常可以见到子网重叠的配置实例。
“一个子网包含另一个子网不能通信或者必须借助ARP代理才能通信”,这个说法过于绝对。大家实验一下就可以验证。例如,两台直连的PC,一个配置192.168.1.1/16,一个配置192.168.2.1/20,明显是可以互通的。
举个工作中用到的实例供大家参考,IP路由规划如下图。如此规划的原因主要有以下几点:
1.
本地专网IP网段地址(10.11.12/24)由对方分配,不得更改;
2.
出于安全考虑,专网与本地网络必须使用防火墙隔离;
3.
本地某些特殊业务服务器绑定了专网IP地址不能修改,无法通过NAT映射的方式联网。
此规划的缺点:内网服务器区的设备无法与10.11.12.254这个点通讯。