1.IP地址由两个固定的字段组成(网络号+主机号)。划分子网后(对主机号这部分进行再划分),变成(网络号+子网号+主机号),但对外仍然表现为一个网络。例如B类IP:145.13.0.0。划分为三个子网145.13.3.0,145.13.7.0,145.13.21.0。数据报(目的地址是145.13.3.10)到达路由器后,按照网络号,子网号,找到目的子网,交付给它。
总结上面的就是145.13.0.0对外是一个普通B类网络,到达路由器进入这个网络后,就看到了划分后的许多子网。
2.但从IP数据报(目的地址是145.13.3.10)的首部无法看出目的主机所连的网络是否进行了子网划分,就不知到转发给谁。所以就有了子网掩码。子网掩码中的1对应(网络号+子网号),子网掩码中的0对应主机号,这样就可以找到对应的目的子网。如果没有划分子网,那么该网络的子网掩码就使用默认子网掩码(例如,B类255.255.0.0)。
总结上面的就是说子网掩码就是用来切割网络地址和主机地址的。
3.要想让不同的电脑在同一网段,只要网络标识相同就可以了。而不是说IP的前三段相同就可以了。例如:
把IP:192.168.0.1。子网掩码:255.255.255.0做例子。
把他们转化为二进制:
IP 11000000.10101000.00000000.00000001
子网掩码 11111111.11111111.11111111.00000000
把IP和子网掩码的每一位对应做与运算,得到:11000000.10101000.00000000.00000000,这就是网络标识,转成二进制192.168.0.0.
再把子网掩码取反,得到的结果与IP做与运算,得到主机标识。
子网掩码取反 00000000.00000000.00000000.11111111
IP 11000000.10101000.00000000.00000001
结果为 00000000.00000000.00000000.00000001,转为二进制,得到0.0.0.1。
网络标识相同就在同一网段。各类IP的网络标识算法是不一样的,A类只算第一段,B类只算一二段,C类算一二三段。
4.求主机数。算法是2^m。m是子网掩码中零的个数。再减去0和255。
5.求子网数。和主机数相反。