Европейский Университет в Санкт-Петербурге
Опубликован: 19.10.2005 | Доступ: свободный | Студентов: 1764 / 170 | Оценка: 4.31 / 3.82 | Длительность: 18:28:00
Лекция 3:

Настройка и обслуживание сетевых соединений

Классы сетей

Самой крупной IP-сетью в мире является глобальная сеть Internet. Ее адресное пространство разделено на диапазоны адресов, которые называются "сетями". Сети разделены на классы. Адреса сетевых интерфейсов компьютеров в сети, как правило, относятся к классам A, B или С.

Разделение сетей на классы определяется в RFC 950 и ряде других RFC 2RFC - Request For Comments - стандарты, используемые в сети Интернет. Текст стандартов можно бесплатно получить на сайте www.ripn.net . Кроме сетей A, B, С есть и другие сети. Они представляют собой меньшие по размеру блоки сетей, которые используются для различных служебных надобностей.

Сети классов от A до С отличаются значением первого байта IP-адреса. Значение первого байта сети класса А находится в диапазоне от 1 до 126, класса B - от 128 до 191, класса C - от 192 до 223. классы сетей, в адресах которых первый байт имеет значение от 224 до 254, именуются от D до F. Они имеют служебное назначение и их адреса не используются обычными сетевыми интерфейсами.

Предполагается, что в сетях класса A номер сети занимает первый байт, а остальные три - это номер компьютера (точнее, номер сетевого интерфейса ). Таким образом, в сети класса А может быть до 16777214 интерфейсов. В сети класса В номер сети занимает два байта адреса, максимальное число интерфейсов в такой сети - 65534. В сети класса С номер сети занимает три байта, номер компьютера - один, максимальное число интерфейсов в такой сети - 254.

Зарезервированные сетевые адреса

Надо иметь в виду, что один компьютер может иметь несколько сетевых интерфейсов, а каждый интерфейс может иметь несколько адресов. Некоторые адреса в каждой сети являются зарезервированными и не могут использоваться для адресации какого-либо интерфейса. Так, IP-адрес, в котором поле номера компьютера заполнено двоичными нулями, используется в качестве номера данной сети в целом. Например, адрес 131.45.0.0 обозначает целую сеть класса B. IP-адрес, в котором поле номера компьютера заполнено двоичными единицами, является широковещательным адресом сети (broadcast address) и используется для одновременной рассылки пакета всем компьютерам данной сети. Получив пакет с адресом получателя 131.45.255.255, каждый компьютер сети 131.45.0.0 (класс B) воспримет этот пакет как предназначенный ему. Эти зарезервированные адреса используются, например, в целях управления маршрутизацией.

Существуют и другие зарезервированные адреса. Адрес 127.0.0.1, всегда указывающий на локальный внутренний интерфейс системы "127.0.0.1", обозначает для системы то же самое, что для человека - слово "я". Этот локальный внутренний интерфейс требуется для того, чтобы одна программа (клиент) могла обратиться к другой программе (серверу), работающей на том же компьютере, стандартным образом. Например, можно обратиться из браузера на вашем компьютере к web-серверу на вашем же компьютере. Локальный интерфейс обычно называется lo или lo0 (от слова loopback - петля).

Адрес 0.0.0.0 используется для обозначения всех интерфейсов в сети вообще.

Основной шлюз

Адрес 0.0.0.0 зарезервирован для указания "всех остальных адресатов". Если пакет не удается соотнести с конкретной строкой таблицы маршрутизации, он отправляется в шлюз согласно указывающей на него строке таблицы маршрутизации. Например, таблица маршрутизации нашего хоста выглядит так:

# netstat -rn
Routing Table: IPv4
Destination	Gateway	Flags	Ref	Use	Interface
192.168.5.0	192.168.5.33	U	1	2	elxl0
224.0.0.0	192.168.5.33	U	1	0	elxl0
default	192.168.5.1	UG	1	0	
127.0.0.1	127.0.0.1	UH	61	1013	lo0

Адрес нашего компьютера в этой сети - 192.168.5.33. Предположим, нам надо отправить пакет по адресу 192.168.5.30. Для этого система посмотрит в таблицу маршрутизации и обнаружит там маршрут 192.168.5.0, для которого указан шлюз (gateway) 192.168.5.33 - наш собственный интерфейс. Стало быть, компьютер 192.168.5.30 находится в непосредственно присоединенной к нам сети и ему надо послать пакет напрямую.

Ситуация изменится, если адресатом будет, скажем, компьютер 192.168.10.1. Тогда в таблице маршрутизации вначале не найдется подходящего маршрута - ведь там нет отдельной строки для сети 192.168.10.1, верно? Тогда пакет будет отправлен в основной шлюз, "шлюз по умолчанию", тот, что в выводе netstat обозначен словом default. Адрес назначения пакетов "во все остальные сети", тех самых, которые отправляются в шлюз, в таблице маршрутизации в ядре обозначается как 0.0.0.0.

Пакеты, предназначенные для отправки "всем остальным", направляются в основной шлюз. Основной шлюз (default gateway) - это такое место, куда любой компьютер сети отправляет пакет, если не знает, в какую сторону его лучше отправить. Действие такого шлюза подобно действию почтальона. Если вы хотите сделать сюрприз девушке, которая живет с вами в одном подъезде, вы можете положить нежное письмо ей прямо в почтовый ящик. Если же адресат живет в другом городе, вы положите конверт в другой почтовый ящик, тот, из которого почтальон вынимает почту для отправки. Основной шлюз имеет сетевой интерфейс, который работает таким "почтовым ящиком" для пакетов, адресованных за пределы локальной сети.