子网掩码 又叫网络掩码、地址掩码 上面我们说到IP地址分为网络号与主机号,但是路由如何区分网络号与主机号呢?就需要通过子网掩码。子网掩码必须与IP地址结合使用,A、B、C类的子网掩码分别为255.0.0.0,255.255.0.0与255.255.255.0(网络号字节为255,主机号字节为0)。 也就是说给你一个IP地址,那么怎么知道它的网络号和主机号各是多少位呢? 如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现 子网掩码的重要作用:就是将某个IP地址划分成网络地址和主机地址两部分。 子网掩码的位数就是网络的位数。A类网络的网络位数是8位,子网掩码就是255.0.0.0,B类网络的网络位数是16位,子网掩码是255.255.0.0,C类是24位,255.255.255.0。 以C类IP地址192.168.1.2为例使用子网掩码划分网络号与主机号。 当然,在计算主机号时,可不用取反子网掩码二进制,直接令其与IP地址异或即可。 例1 不同子网下的主机能否直接通信(是否在同一网络/段下) 假设两个IP地址分别是172.20.0.18和172.20.1.16,子网掩码都是255.255.255.0。 我们可以知道两者的网络标识分别是172.20.0和172.20.1,无法直接通信,也就无法PING通。要想能相互通信,需要将子网掩码改成255.255.0.0 例2 如何理解172.20.1.0/26 上文中的26代表主机ID的掩码地址长度,从前往后有26位,即子网掩码的地址是255.255.255.192。 子网掩码还可以用来将网络划分为更小的子网,将IP的两极结构扩充成三级结构,节约地址空间,减轻路由器负担。 子网掩码的划分 如果要将一个网络划分为多个子网,如何确定子网掩码?步骤如下: 第一步:将要划分的子网数目转换为2的m次方。如果不是恰好是2的多少次方,则按照取大原则。 第二步:将上一步确定的幂m按照高序占用主机地址前m位,再转化为十进制。如m为3,表示主机位中有3位被划分为网络标识号占用,因网络标识号都为1,故如是C类地址,主机号对应的字节变为11100000,转化为十进制后为224,故子网掩码为255.255.255.224,如果是B类网络,则子网掩码为255.255.224.0。 网关 网关(Gateway)又称网间连接器,就是一个网络连接到另一个网络的“关口”。 网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络B向网络A转发数据包的过程。 所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。 |