我们接着讲子网掩码。
子网掩码给出了整个IP地址的位模式,其中的1代表网络部分,0代表IP主机号部分,应用中也采用点式十进制表示。用它来帮助确定IP地址网络号在哪结束,主机号在哪开始。A、B、C三类网络的标准缺省掩码如下:
如果在Internet网上进行通信的两台主机的IP地址分别为192.83.192.10和192.83.192.32,那么子网掩码255.255.255.0分别对两个IP地址进行与(AND)运算后,得出网络号和主机号,并且结果一致,可以判断这两个IP地址属于同一个网络。
你是怎么知道这个工作的呢?依靠你的技术。它通过将易懂的十进制数字如255转变为不好懂的二进制数字如11111111.然后,当所有数字都转变为二进制后,它们进行AND(与),AND是一种二进制的数学运算。在与运算中,只有当两个数字(比特)都为1时,结果才为1,否则结果为0。
0101 数据
0011 掩码
0001 结果
记住,虽然这个东西你可能不会理解,但你的计算机是活着的,呼吸着,并且食用着二进制,想想这个真是有趣。
为了在网络分段情况下有效地利用IP地址,可以攫取主机号的高位部分作为子网号,从通常的八位界限中扩展子网掩码,用来创建某类地址的更多子网。但创建更多的子网时,在每个子网上的可用主机地址数目会减少。要确定更多子网的子网掩码,首先应确定传输IP信息流的网段的数目,然后再确定能够容纳网段数的最低子网掩码数目,记住不要使用包含全0或全1的网络地址。
投石问路的小技巧
IP数据包在互联网中传输时难免会遇到各种问题,如:路由器故障、路径太长、系统拥塞等,这就需要互联网在IP层具有一定的控制功能,ICMP(Internet Control Message Protocol)协议就是互联网中传递控制信息的主要手段。
ICMP用于报告问题并传达其它的网络特定信息。例如,来自一些网络设备的错误情况;IP侦测出错误并将其传递给ICMP。ICMP的一个十分常用的功能便是提供给Ping命令的回应请求。Ping实用程序允许你检查远程计算机是否可用。它使用网络“声纳”Internet控制信息协议ICMP.Ping弹回信息至计算机,如果有应答,计算机便是好的。
借助Ping程序可用检测主机是否还存在工作。输入不带参数的ping命令你可以看到所描述的命令。简单的ping可以确定不正常对象的工作,但是要对一台远程机子执行ping命令成功的话,你可以确定对方物理层、数据链路层和网络层的所有功能是不是正确,通信问题一般发生在更高层。黑客可以将ping用于各种侵害网络的目的,比如说利用ping通过发送大量的ping(子弹)分组,引起淹没的无效数据。一台机用这种方式不能起到作用,但是有多台机子同时发送这个命令的话,那么就会……这也是一种拒绝服务的攻击,这种攻击能够造成远程系统TCP/IP服务器的崩溃。
最后说一下用Ping程序正确检测TCP/IP的四个步骤:Ping 127.0.0.1(回环地址)如果通表示TCP/IP已经装入,Ping自己表明客户机正常(主要是网卡),Ping网关表示局域网正常,Ping路由外地址表示完全正常,当然你也可以直接进行第四步,一般来说没这么麻烦的,但理论是基础:-)