最近测试过程中遇到了一个很奇怪的现象,把服务器(测试产品)部署在Server2003系统的外网A上,把客户端(测试产品)部署在内网B,网络A,B用路由器相连,设置网络A为200.1.1.255,发现客户端连不上服务器,把服务器部署在Server2008,设置同一个IP,又能正常连接。或者在2003上设置IP为:200.1.1.254.也能正常连接。部署大致如下图所示:

wan口端的子网掩码是22位,则网络位占22位,主机位占10位。IP与子网掩码进行and与计算后,得到的是网络号:200.1.0.0。主机号全为1(3.255)加上网络号就是广播地址200.1.3.255.即使服务器设置IP是255,且是合法的IP地址,在Server2003还是不能用的。查阅官方文档:https://support.microsoft.com/en-us/kb/281579。

Windows Server 2003和Windows XP,因为微软的停止更新,已经正式退役了,导致产生一个后果当客户端发出一个x.x.x.255地址,从DHCP服务器或静态配置,客户端可能无法利用TCP/IP协议进行通讯。因为该地址被看作是“广播地址”,而不是在网络上的主机地址,即使它可能是一个有效的主机地址。这类现象还会发生在:

C类地址x.x.x.255基础
B类地址x.x.255.255和基础
A类基地址x.255.255.255可能是有效的,这些都是不允许的。
例如,假设网络地址与子网掩码分别为:200.57.8.0, 255.255.252.0,这两个地址,第一个字节必须完全匹配,这第三个字节的前六位必须匹配(252 = 111111 00)和最后一个字节不要紧。这个范围,200.57.8.0是网络地址和200.57.11.255是子网广播地址。这两者之间的每一个地址都是有效的。但是,下面的地址是不允许的因为他们是子网广播地址(基于标准的C类子网掩码255.255.255.0):
200.57.8.255
200.57.9.255
200.57.10.255

如果服务器设置成以上这样,都是会出现这类问题的。解决方法有很多种,避免使用该版本服务,设置iP的时候稍微注意下,避免设置位数255即可。

现象分析:服务器设置成200.1.1.0/22 这类是超网,是你说的聚合形,合理的IP范围是200.1.0.0(网络号)-200.1.3.255(广播地址) ,在2003上设置wan口IP为200.1.1.255不行,是因为基于标准的C类子网掩码255.255.255.0,对应的广播地址为200.1.1.255.而 Windows Server 2003和Windows XP已经把这类地址看成了“广播地址”,而不是在网络上的主机地址,即使它可能是一个有效的主机地址。

最新文章

  1. Windows 7您的凭据不工作
  2. Python Q&A
  3. objc/runtime
  4. Oracle时间戳 与时间之间的相互转换
  5. hive中同列多行数据组合的方法以及array to string要点(行转列)
  6. 神奇的 echo 命令
  7. SharePoint表单和工作流 - Nintex篇(六)
  8. C/C++学习之路
  9. ResourceManager高可用配置
  10. 二分图的最大匹配-hdu-3729-I'm Telling the Truth
  11. Android利用文本分割拼接开发一个花藤文字生成
  12. ZOJ 2042 Divisibility (DP)
  13. CLR类型设计之属性
  14. Python学习笔记(1)-列表
  15. Flash10下复制到剪切板的一种新方法
  16. Hibrenate关系映射(一对一外键关联)
  17. 前端js实现 blob转base64位 和 base64位转blob
  18. 17 多校1 Add More Zero 水题
  19. MySQL全文本搜索
  20. System.Data.SQLite安装的相关问题

热门文章

  1. ArcGIS API for Silverlight 加载google地图
  2. graphviz - Node Shapes
  3. Block作为property属性实现页面之间传值(代替Delegate代理与协议结合的方法)
  4. 深入理解Redis主键失效原理及实现机制
  5. JavaScript:实现瀑布流
  6. 微信公众平台开发(112) 自动更新微信access token
  7. Android TimePickerDialog样式配置与TimePicker模式选择
  8. 阻止PHP彩蛋信息泄漏 [转]
  9. sql语句like多个条件的写法实例
  10. FreeMarker惯用内置函数