Перед обсуждением вопросов о подсетях, нам нужно узнать основные принципы IP адресации.
Самое первое, что надо уяснить себе - IP назначаются не хостам. IP адреса назначаются сетевым интерфейсам хостов.
Eh - как это?
Очень многие (если не большинство) компьютеров в IP сети имеют единственный сетевой интерфейс (и как следствие один IP адрес). Но компьютеры и другие устройства могут иметь несколько (если не больше) сетевых интерфейсов - и каждый интерфейс будет иметь свой собственный IP адрес.
Так устройство с 6 активными интерфейсами (например, маршрутизатор) будет иметь 6 IP адресов - по одному на каждый интерфейс в каждой сети, к которой он подключен. Причина этого станет ясной, если мы взглянем на IP сеть!
Подозреваю, что большинство людей имеют в виду хостовый адрес, когда ссылаются на IP адрес. Только помните, это просто сокращание IP адреса определенного интерфейса на этом хосту. Многие (если не большинство) из устройств в Internet имеют только один интерфейс и значит один IP адрес.
В текущей (IPv4) реализации адресов IP, IP адреса состоят из 4 байт (8 бит) - дающих в совокупности 32 бита доступной информации. Это приводит к тому, что числа выглядят слишком большими (даже когда записаны в десятичном исчислении). Поэтому для читабельности (и по организационным причинам) IP адреса обычно записываются в "точечно-разделительной нотации". Вот пример IP адреса:
192.168.1.24
- 4 (десятичных) числа, разделенных (.) точками.
Так как каждое из четырех чисел - это десятичное представление 8-битного байта, то каждое число может принимать значения от 0 до 255 (что дает 256 уникальных значений - помните, ноль - это тоже величина).
Кроме того, часть IP адреса хоста определяет сеть, в которой находится хост, а оставшиеся 'биты' IP адреса определяют сам хост (oops - сетевой интерфейс). То, сколько бит используется сетевым ID и сколько бит доступно для идентификации хостов (интерфейсов) в этой сети, определяется сетевыми 'классами'.
Существует три класса IP адресов
Итак:
Сетевой класс Диапазон значений первого байта (десятичный)
A 1 to 126
B 128 to 191
C 192 to 254
Существует также специальные адреса, которые зарезервированы для 'несвязанных' сетей - это сети, которые используют IP, но не подключены к Internet. Вот эти адреса:-
В дальшейшем вы заметите, что в данном документе используются именно эти адреса, чтобы предотвратить пересечение с 'настоящими' сетями и хостами.
IP адрес может означать одно из трех:-
Подытожим и уточним
Для сети класса A ...
(один байт под адрес сети, три байта под номер хоста)
10.0.0.0 сеть класса А, потому что все хостовые биты равны 0.
10.0.1.0 адрес хоста в этой сети
10.255.255.255 широковещательный адрес этой сети,
поскольку все сетевые биты установлены в 1
Для сети класса B...
(два байта под адрес сети, два байта под номер хоста)
172.17.0.0 сеть класса B
172.17.0.1 адрес хоста в этой сети
172.17.255.255 сетевой широковещательный адрес
Для сети класса C...
(три байта под адрес сети, один байт под номер хоста)
192.168.3.0 адрес сети класса C
192.168.3.42 хостовый адрес в этой сеть
192.168.3.255 сетевой широковещательный адрес
Едва ли не все доступные сетевые IP адреса принадлежат классу C.
Сетевую маску более правильно называть подсетевой маской. Однако в основном говорят "сетевая маска".
Сетевая маска определяет как будут локально интерпретироваться IP адреса в сегменте IP сети, что для нас весьма важно, поскольку определяет процесс разбивки на подсети.
Стандартная (под-) сетевая маска - все сетевые биты в адресе установлены в '1' и все хостовые биты установлены в '0'. Это означает, что стандартные сетевые маски для трех классов сетей:-
О сетевой маске нужно помнить три вещи:-