
Понятие подсети и маски сети.
В силу определенных причин (о них или уже было рассказано, или будет рассказано на лекциях) двухуровневой иерархии IP-адресации уже стало не хватать. Суть этой двухуровневой иерархии заключается в том, что IP-адрес делится на адрес сети и номер хоста в этой сети. Введи понятие подсети. Теперь IP-адрес включает три компонента – адрес сети, адрес подсети, адрес хоста в подсети. Что произошло? Часть старших бит, которые кодировали адрес хоста, отдали на кодирование подсетей. Какую часть бит? Этот вопрос решается введение понятия маска подсети. Мы часто будем называть ее маской сети. Это синонимы. Давайте теперь разберемся с тем, что такое маска подсети.
Маска подсети опять таки представляет собой 32-разрядное число, которое может выражаться в десятичном виде с точечным разделением. Маска сообщает, какие биты IP-адреса используются для идентификации сети и подсети. Остальные биты случат для идентификации хоста в подсети. Сетевые биты маски равны 1, а хостовые равны 0. Например, маска 11111111.11111111.11111111.11000000 (255.255.255.192 в десятичной записи) позволяет использовать 64 хостовых адреса в подсети. Учитывая, то что, было сказано про особые адреса, реально можно использовать только 62 адреса.
Каким образом по IP-адресу и маске определить адрес подсети и адрес хоста? Для этого необходимо и достаточно применить битовую операцию "и". Эта операция работает по следующей таблицы истинности:
А&В |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
Например. Пусть задан IP-адрес 192.168.11.223 и маска 255.255.255.128. Спрашивается – адрес подсети и адрес хоста в этой сети. Для простоты понимания продемонстрирую пример на двоичном представлении:
IP-адрес |
192 |
168 |
11 |
223 |
IP-адрес в двоичном виде |
11000000 |
10101000 |
00001011 |
11011111 |
Маска |
255 |
255 |
255 |
128 |
Маска в двоичном виде |
11111111 |
11111111 |
11111111 |
10000000 |
IP-адрес & Маска в двоичном виде |
11000000 |
10101000 |
00001011 |
10000000 |
IP-адрес & Маска |
192 |
168 |
11 |
128 |
Применив операцию "и" к IP-адресу и маске, мы получили адрес подсети – 192.168.11.128.
Младшие 7 бит IP-адреса являются адресом хоста в этой подсети – 0.0.0.95.
Рассмотрим другой пример использования масок. Пусть вам дан IP-адрес сети 193.168.125.0. требуется разделить ее на подсети, таким образом, чтобы было не менее 9 подсетей. Чтобы решить эту задачу, нужно найти маску, которая давала бы такое количество подсетей. Указанный IP-адрес относится к сети класса С. Стандартная маска для такой сети 255.255.255.0. Необходимое количество бит, которые нужно занять у адреса хоста, для идентификации девяти подсетей равно 4. Значит на идентификацию хоста остается 4 младших бита. Соответствующая маска подсети будет равна 255.255.255.240. В каждой такой подсети может быть 14 хостов.
Адрес подсети |
Минимальный адрес хоста |
Максимальный адрес хоста |
193.168.125.0 |
193.168.125.1 |
193.168.125.14 |
193.168.125.16 |
193.168.125.17 |
193.168.125.30 |
193.168.125.32 |
193.168.125.33 |
193.168.125.46 |
193.168.125.48 |
193.168.125.49 |
193.168.125.62 |
193.168.125.64 |
193.168.125.65 |
193.168.125.78 |
193.168.125.80 |
193.168.125.81 |
193.168.125.84 |
… |
|
|
193.168.125.208 |
193.168.125.209 |
193.168.125.222 |
193.168.125.224 |
193.168.125.225 |
193.168.125.238 |
193.168.125.240 |
193.168.125.241 |
193.168.125.254 |