对于一般由
路由器和
主机组成的互连系统,我们可以使用下列方法定义系统中的子网。
我们知道在Internet中广泛使用的
TCP/IP协议就是利用IP地址来区别不同的主机的。如果你曾经进行过TCP/IP协议设置,那么你一定会遇到
子网掩码(Subnet mask)这一名词,那么你知道什么是子网掩码吗?它有什么作用呢?
我们知道IP地址是一个4字节(共32bit)的数字,被分为4段,每段8位二进制数,段与段之间用句点分隔。为了便于表达和识别,IP地址是以
十进制形式表示的如210.52.207.2,每段所能表示的
十进制数最大不超过255。IP地址由两部分组成,即
网络号(Network ID)和
主机号(Host ID)。网络号标识的是Internet上的一个网络,而主机号标识的是该网络中的某台主机。网络地址分解成两个域后,带来了一个重要的优点:IP
数据包从网际上的一个网络到达另一个网络时,选择路径可以基于网络而不是主机。在大型的网际中,这一点优势特别明显,因为
路由表中只存储网络信息而不是主机信息,这样可以大大简化路由表。
IP地址根据
网络号和
主机号的数量而分为A、B、C三类:IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。例如一个采用二进制形式的IP地址是“00001010000000000000000000000001”,这么长的地址,人们处理起来也太费劲了。为了方便人们的使用,IP地址经常被写成
十进制的形式,中间使用符号“.”分开不同的字节。于是,上面的IP地址可以表示为“10.0.0.1”。IP地址的这种表示法叫做“
点分十进制表示法”,这显然比1和0容易记忆得多。
B类IP地址:用可变的14位来标识
网络号,可变的16位标识
主机回送地址,用于回路测试),第一段和第二段合在一起表示网络号。B类地址适用于中等规模的网络,全世界大约有16000个B类网络,每个B类网络最多可以连接65534台主机。
从上面的介绍我们知道,IP地址是以
网络号和
主机号来表示网络上的主机的,只有在一个网络号下的计算机之间才能“直接”互通,不同网络号的计算机要通过
网关(Gateway)才能互通。但这样的划分在某些情况下显得并不十分灵活。为此
IP网络还允许划分成更小的网络,称为子网(Subnet),这样就产生了
子网掩码前面讲到IP地址分网络号和主机号,要将一个网络划分为多个子网,因此网络号将要占用原来的主机位,如对于一个C类地址,它用24位来标识网络号,要将其划分为2个子网则需要占用1位原来的主机标识位。此时
网络号位变为25位,
主机标示变为7位。同理借用2个主机位则可以将一个C类网络划分为4个子网……那计算机是怎样才知道这一网络是否划分了子网呢?这就可以从子网掩码中看出。子网掩码和IP地址一样有32bit,确定
子网掩码子网划分及相关子网掩码:
同时我们还可以使用可变长
掩码(VLSM)就是指一个网络可以用不同的掩码进行配置。这样做的目的是为了使把一个网络划分成多个子网更加方便。在没有VLSM的情况下,一个网络只能使用一种
子网掩码,这就限制了在给定的子网数目条件下主机的数目。例如你被分配了一个C类地址,
网络号为192.168.10.0,而你现在需要将其划分为三个子网,其中一个子网有100台
主机,其余的两个子网有50台主机。我们知道一个C类地址有254个可用地址,那么你如何选择子网掩码呢?从上表中我们发现,当我们在所有子网中都使用一个子网掩码时这一问题是无法解决的。此时VLSM就派上了用场,我们可以在100个主机的子网使用255.255.255.128这一
掩码,它可以使用192.168.10.0到192.168.10.127这128个IP地址,其中可用主机号为126个。我们再把剩下的192.168.10.128到192.168.10.255这128个IP地址分成两个子网,
子网掩码为255.255.255.192。其中一个子网的地址从192.168.10.128到192.168.10.191,另一子网的地址从192.168.10.192到192.168.10.255。子网掩码为255.255.255.192每个子网的可用
主机地址都为62个,这样就达到了要求。可以看出合理使用子网掩码,可以使IP地址更加便于管理和控制。