在计算机网络课时,我们在学校机房练习在Windows 2000 Server 下TCP/IP的安装和配置,机房的电脑预先安装好了该协议,我们的试验题目是设置IP和它的子网掩码来验证属于同一个子网的计算机可以直接通信。
学校局域网里的机器使用DHCP服务器获得IP地址,于是我用ipconfig/all查看甲机IP:192.168.10.56,子网掩码255.255.255.0,默认网关192.168.10.1相邻乙机的配置为IP:192.168.10.65,子网掩码255.255.255.0,默认网关:192.168.10.1,首选DNS都是为192.168.10.1,此时机房的所有机器都能互相访问。现在我们更改配置,在本地连接中甲机IP:172.16.0.1,子网掩码255.255.255.0,默认网关172.16.0.1,乙机IP:172.16.0.2,子网掩码:255.255.255.0,默认网关172.16.0.1,DNS都为172.16.0.1。这时甲和乙都能互相访问。但是甲在网上邻居中能看到并且访问除乙以外别的机子。
我们设置的是甲和乙在同一子网172.16.0.0能通信,而别的机器还是在子网192.168.10.0中,按理是不能通信的。我们想了半天,最后叫来老师,老师让我看看有没有设置路由,打开“控制面板→管理工具→路由和远程访问”,发现没设置路由。我们又检查了一下协议的配置,打开本地连接,在此连接使用下列项目中看到还装了NWLink IPX/SPX/Netbios Compatible Trasport Protocol等协议。这时,我们发现问题所在了:IPX/SPX协议即IPX(全称Internetwork Packet Exchange网间数据包交换)与SPX(全称Sequences Packet Exchange 顺序包交换)协议的组合,它是Novell公司为了适应网络的发展而开发的通信协议,具有很强的适应性,安装方便,同时还具有路由功能,可以实现多网段间的通信。其中,IPX协议负责数据包的传送;SPX负责数据包传输的完整性。在微软的NT操作系统中,一般使用NWLink IPX/SPX兼容协议和NWLink NetBIOX两种IPX/SPX的兼容协议,即NWLink协议,该兼容协议继承了IPX/SPX协议优点,更适应Windows的网络环境。
在刚才的试验中,TCP/IP协议不能实现不同子网通信时,NWLink IPX/SPX就生效了。为了验证正确性,甲机和乙机删除此协议后,除甲和乙能通信外,不能访问不在同一子网中的机子。