Брандмауэры и специальное программное обеспечение




страница14/42
Дата15.02.2017
Размер6.16 Mb.
Просмотров1237
Скачиваний0
ТипАнализ
1   ...   10   11   12   13   14   15   16   17   ...   42
Сеть и маршрутизация в Интернете
Маршрутизация (routing) — это метод, благодаря которому пакеты ICMP и IP находят путь от одного компьютера к другому. В Интернете данные передаются не напрямую от источника к приемнику, а по цепочке. Пакеты передаются через сеть от системы к системе из интерфейсного устройства одной системы в интерфейсное устройство другой системы до тех пор, пока они не достигнут системы-приемника. Это происходит при условии, что во время пути с пакетами ничего не происходит. В данной книге подразумевается, что все интерфейсные устройства являются сетевыми картами Ethernet, однако интерфейсное устройство может быть также устройством подключения к каналу типа «точка-точка».
Интерфейсными устройствами могут быть модемы, сетевые карты Token Ring и т. п. Важным обстоятельством является то, что каждому интерфейсному устройству должен быть поставлен в соответствие уникальный IP-адрес. Если между двумя интерфейсными устройствами существует маршрут, эти интерфейсные устройства не могут обладать одним и тем же IP-адресом. Многим IP-адресам ставится в соответствие имя. Одному и тому же имени можно поставить в соответствие несколько IP-адресов, однако в этом случае вы должны предпринять некоторые дополнительные организационные действия, чтобы обеспечить корректное функционирование подобной схемы.
В заводских условиях в каждую сетевую карту Ethernet жестко записывается уникальный численный идентификатор, который называется аппаратным адресом MAC. МАС-адрес — это число, состоящее из шести двухзначных шестнадца-теричных чисел, например: 01:23:ab:cd:4e:5f. Как уже отмечалось ранее, на более верхнем уровне для идентификации сетевых узлов используются IP-адреса. Чтобы получить возможность вступить в контакт с удаленным узлом, для которого известен IP-адрес, система должна знать соответствие между IP-адресом и МАС-адресом для этого удаленного узла. Информация о соответствии между IP-адресами и МАС-адресами для известных системе удаленных сетевых узлов формируется при помощи протокола ARP (Address Resolution Protocol — протокол сопоставления адреса) и хранится в специальной внутренней таблице, которая называется ARP-кэшем. Чтобы связаться с узлом, для которого известен IP-адрес, система обращается к этой таблице и извлекает из нее соответствующий МАС-адрес.
ARP-кэш используется в течение определенного времени (как правило, пара минут), после чего он
считается устаревшим и стирается из памяти. После этого система вновь формирует ARP-кэш с использованием протокола ARP. Протокол ARP используется также в случае, если информация о некотором IP-адресе отсутствует в ARP-кэше. Любым IP-адресам, не принадлежащим локальной сети, ставится в соответствие МАС-адрес сетевого узла, который является шлюзом для локальной сети.
ПРИМЕЧАНИЕ
На самом деле IP-адреса назначаются не компьютерам, а коммуникационным устройствам. Коммуникационные
устройства напрямую подключаются к сети. Это могут быть сетевые карты (NIC, Network Interface Card),
модемы, спулеры принтеров HP JetDirect и т. п. Сам по себе компьютер не является коммуникационным
устройством. Каждое коммуникационное устройство получает свой собственный IP-адрес. Один компьютер
может быть оснащен несколькими коммуникационными устройствами.
Протокол АRР можно использовать и для решения обратной задачи (в этом случае говорят о протоколе RARP — Reverse Address Resolution Protocol). Благодаря этому система может узнать свой собственный IP-адрес. Сетевые карты HP JetDirect, установленные в принтерах HP LaserJet и спулерах принтеров HP JetDirect, по умолчанию слушают сеть, чтобы сообщить сетевому узлу свой МАС-адрес и получить от него соответствующий IP-адрес.
По умолчанию, когда говорят о сетевом узле, входящем в состав локальной сети, подразумевают, что этот сетевой узел напрямую подключен к тому же самому проводу или сетевому сегменту, что и все остальные компьютеры локальной сети. Если для того, чтобы передать пакет к месту назначения, требуется воспользоваться услугами еще одного промежуточного сетевого узла (шлюза или маршрутизатора), значит, сетевой узел, являющийся приемником, не принадлежит к локальной сети, даже если он подключен к тому же самому сетевому проводу. Это относится также и к машинам, которые принадлежат к одному и тому же диапазону адресов класса С, однако используют маску подсети с переменной длиной (Variable Length
Subnet Masking, VLSM) и, таким образом, относятся к разным подсетям. Подробнее об этом рассказывается чуть позже, при обсуждении технологии CIDR.
Размер кэша ARP может достигать 254 записей (по одной записи для каждого IP-адреса), в случае если речь идет о полной сети класса С, однако обычно размер таблицы ARP меньше. Таблицы ARP, как правило, не вырастают до значительных размеров, если только вы не имеете дело с маршрутизатором, подключенным к нескольким подсетям. В этом случае кэш ARP может достигнуть значительных размеров.
Что такое CIDR
Технология CIDR (Classless Inter-Domain Routing — бесклассовая междоменная маршрутизация) позволяет максимизировать использование ограниченного адресного пространства, доступного в рамках существующей реализации стандарта IPv4 (Internet Protocol version 4). Прочитав материал данного и последующего разделов, вы получите хорошее представление о том, как настраивается сетевая конфигурация компьютера, даже если раньше вы никогда не настраивали компьютер, подключенный к сети.
Предпосылки
С середины 1990-х и по сей день технология CIDR является наиболее распространенной тенденцией развития маршрутизации в сетях, основанных на IP. Эта концепция появилась в 1993 году для того, чтобы компенсировать недостатки существующей схемы распределения адресов IPv4 до тех пор, пока не будет введена в строй следующая версия протокола IP под названием IPv6 (также называемая IPng, то есть IP next generation — следующее поколение IP).
В настоящее время технология IPv6 проходит тщательное тестирование. Когда она вступит в строй, адресное пространство IP будет расширено на несколько порядков. В рамках IPv6 также реализованы специальные более совершенные механизмы защиты. Те из читателей, которые пожелают принять участие в формировании будущего уже сейчас, могут попробовать IPv6 в действии, так как операционная система
Linux поддерживает IPv6 на уровне ядра. Но до тех пор, пока IPv6 не получит широкого распространения, благодаря CIDR вы можете максимально эффективно использовать то, чем вы ограничены в рамках IPv4.
Чтобы лучше понять, зачем вообще нужна технология CIDR, давайте вернемся назад по шкале времени в конец 1980-х годов. В то время для поиска и идентификации компьютерных систем в сети использовался протокол IPv4. Однако в то далекое время к Интернету было подключено относительно немного компьютеров. Количество компьютеров, которые нуждались в подключении к Интернету, также было небольшим. В действительности огромное количество систем использовали для передачи данных протокол UUCP (UNIX-to-UNIX Copy Protocol). В рамках протокола UUCP компьютеры устанавливали между собой связь в заранее определенное время, происходил обмен электронной почтой, после чего связь
разрывалась. В то далекое время запас IP-адресов, доступных в рамках IPv4, казался неисчерпаемым.
Однако это было до того, как появился первый web-браузер под названием Mosaic. С появлением Mosaic
Интернет стал стремительно расти. По мере его роста увеличивалась потребность в новых IP-адресах. Чем большее количество компьютеров подключалось к Интернету, тем большее количество уникальных IP- адресов требовалось для идентификации машин в Интернете.
Базовые сведения о маршрутизации IP
Те из читателей, которые хорошо знакомы с механизмом маршрутизации, основанной на классах, могут пропустить данный раздел и перейти к изучению следующего. Компьютеры понимают только две базовых цифры: 1 и 0, в то время как большинство людей оперируют десятью базовыми цифрами (от 0 до
9). Для того чтобы облегчить работу людей, имеющих дело с компьютерами, компьютерные инженеры пошли на компромисс. Каждый компьютер в Интернете обладает уникальным IP-адресом, который может быть представлен в виде строки нулей и единиц. Другими словами, в современном Интернете IP-адрес — это набор из 32 битов. Для удобства восприятия эту последовательность разбивают на четыре группы по восемь битов. Каждая такая группа называется октетом. Таким образом, получается четыре числа, каждое из которых может принимать любое из значений в диапазоне от 0 (восемь двоичных нулей) до десятичного
255 (восемь двоичных единиц). Эти четыре числа, представляющие собой IP-адрес, записываются в формате: ХХХ.ХХХ.ХХХ.ХХХ (где X — это один десятичный разряд). Например, 192.213.150.205. Такое обозначение называется точечной десятичной нотацией (dotted decimal notation). Такой формат записи облегчает восприятие IP-адресов для людей. Все IP-адреса делятся на четыре категории, называемых
классами. Классы обозначаются латинскими буквами А, В, С, D. Разделение IP-адресов на классы осуществляется в соответствии со старшими четырьмя битами самого старшего октета IP-адреса:
- Класс А = старший октет равен от 0 до 127 (первые четыре бита 0000) — в каждой сети 16 777 216 сетевых узлов;
- Класс В = старший октет равен от 128 до 191 (первые четыре бита 1000) -в каждой сети 65 534 сетевых узла;
- Класс С = старший октет равен от 192 до 223 (первые четыре бита 1100) -в каждой сети 256 сетевых узлов;
- Класс D = старший октет равен всем оставшимся значениям (первые четыре бита 1110) — количество сетевых узлов по умолчанию не определено.
В каждом классе определяется некоторое количество IP-сетей, в состав каждой из которых может входить не более некоторого максимального количества сетевых узлов. Для нумерации сети используются старшие биты IP-адреса, а для нумерации сетевых узлов в сети используются младшие биты этого же самого IP-адреса. Таким образом, один и тот же IP-адрес идентифицирует как некоторую сеть, так и определенный сетевой узел в данной сети. Количество битов, используемых для идентификации сети и сетевого узла, в разных классах разное. В классе А для идентификации сети используются старшие восемь битов 32-битного IP-адреса. Остальные 24 бита используются для идентификации сетевого узла. Например, сеть класса А может обладать следующим адресом: 10.ХХХ.ХХХ.ХХХ. В классе В для идентификации сети используются два старших октета IP-адреса. Например, сеть класса В может обладать следующим адресом: 172.32.ХХХ.ХХХ. В классе С для идентификации сети используются три старших октета IP- адреса. Например, сеть класса С может обладать следующим адресом: 192.168.1.ХХХ. Класс D зарезервирован для тестовых целей. Как обозначено символами XXX, для идентификации сетевых узлов в классе А используются целых три октета (именно поэтому в каждой сети класса А может содержаться до 16 777 216 компьютеров). В сети класса В для идентификации сетевых узлов используется два октета
(получается, что в сети класса В может одновременно работать до 65 534 сетевых узлов). Наконец, в сети класса С для идентификации сетевого узла используется только один самый младший октет, то есть всего восемь битов (именно поэтому в состав любой сети класса С может входить не более 256 сетевых узлов).
Как можно заметить, в рамках данной схемы граница между частью IP-адреса, идентифицирующей сеть, и частью IP-адреса, идентифицирующей сетевой узел, всегда проходит по границе между октетами. Иными словами, адрес сети и адрес сетевого узла в этой сети всегда состоят из целого количества октетов. Чтобы разделить 32-битный IP-адрес на две этих составляющие, используется сетевая маска. Сетевая маска — это
32-битное число, для каждого из битов которого известно, что если бит равен 1, значит, соответствующий ему бит IP-адреса идентифицирует сеть, а если бит сетевой маски равен 0, значит, соответствующий ему бит IP-адреса идентифицирует сетевой узел. Например, сетям класса В соответствует сетевая маска
255.255.0.0, а сетям класса С соответствует сетевая маска 255.255.255.0.

ПРИМЕЧАНИЕ

Напомню, что один байт равен восьми битам. Один байт может хранить значение от 0 до десятичного 255.
Десятичное 255 соответствует шестнадцатеричному FF. Один шестнадцатеричный разряд может принимать
значения от 0 до F: 0,1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F.
Теперь, когда вы познакомились с основами адресации IP, базирующейся на классах сетей, я приведу набор определений, которые потребуются вам для дальнейшего знакомства с материалом книги.
- Адрес сетевого узла (host address) — это уникальный адрес, который ставится в соответствие коммуникационному устройству, установленному в компьютере. Если компьютер оснащен несколькими коммуникационными устройствами (например, несколько сетевых карт Ethernet и несколько модемов), каждому из этих устройств назначается свой собственный уникальный адрес. Это означает, что сетевой узел (компьютер или маршрутизатор) может обладать несколькими сетевыми узлами (это обозначается английским термином multi-homed). Того же самого эффекта можно добиться иначе: вы можете присвоить несколько разных IP-адресов одному и тому же коммуникационному устройству. Эта процедура называется назначением IP-псевдонимов (IP aliasing).
- Адрес сети (network address) — IP-адрес, в котором несколько старших битов (в соответствии с сетевой маской) идентифицируют сеть, а остальные (младшие) биты, предназначенные для идентификации сетевого узла в данной сети, равны нулю. Иными словами, адрес сети является самым младшим адресом из всех IP-адресов адресного диапазона некоторой IP-сети. Например, в сети класса С с адресами от
192.168.1.0 до 192.168.1.255 адрес сети будет равен 192.168.1.0. Очевидно, что адрес сети нельзя использовать для идентификации какого-либо сетевого узла в этой сети.
- Широковещательный адрес (broadcast address) — IP-адрес, в котором несколько старших битов (в соответствии с сетевой маской) идентифицируют сеть, а остальные (младшие) биты, предназначенные для идентификации сетевого узла в данной сети, равны единице. Иными словами, адрес сети является самым старшим адресом из всех IP-адресов адресного диапазона некоторой IP-сети. Например, в сети класса С с адресами от 192.168.1.0 до 192.168.1.255 широковещательный адрес будет равен 192.168.1.255. Любой пакет, отосланный по широковещательному адресу, будет получен всеми сетевыми узлами, работающими в рамках данной сети. Очевидно, что широковещательный адрес для некоторой сети нельзя использовать для идентификации какого-либо сетевого узла в этой сети.
- Сетевая маска (netmask) — 32-битное число, указывающее, какая часть IP-адреса используется для идентификации сети, а какая часть IP-адреса используется для идентификации сетевого узла в рамках данной сети. Старшие биты сетевой маски равны единице, а младшие — нулю. Если некоторый бит сетевой маски равен 1, значит, соответствующий бит IP-адреса служит для идентификации сети, если некоторый бит сетевой маски равен 0, значит, соответствующий бит IP-адреса служит для идентификации сетевого узла. Для сетей класса С (например, для сети из приведенного ранее примера) сетевая маска равна
255.255.255.0. Если сеть принадлежит классу В, сетевая маска для нее будет равна 255.255.0.0. Иными словами, чтобы получить сетевую маску для некоторой сети, необходимо определить часть IP-адреса, которая остается неизменной для всех сетевых узлов в рамках данной сети, и заменить эту часть единицами. Часть IP-адреса, которая меняется от узла к узлу, заменяется нулями.
Десятилетие назад к Интернету было подключено очень небольшое количество персональных компьютеров, поэтому в конце 1980-х схема адресации IPv4 казалась неисчерпаемым источником адресов даже с учетом того, что далеко не все IP-адреса из всего допустимого диапазона 32-битных чисел могут использоваться для идентификации конкретных сетевых узлов.
СОВЕТ
Сетевая маска определяет сеть. Если две системы принадлежат одной локальной сети, но при этом используют
различные сетевые маски, они будут работать так, как будто принадлежат разным сетям IP.
Реализация CIDR с использованием VLSM
Описанная в предыдущем разделе схема адресации IP, основанная на диапазонах адресов в соответствии с четырьмя классами, устарела. Термины, используемые для ее описания — класс А, класс В, класс С, — тоже устарели, однако они по-прежнему широко используются, так как их смысл легко усвоить.
В данной книге мы также будем распространены эти термины для простоты изложения. Я рассказал вам о схеме адресации, основанной на классах, чтобы было проще перейти к рассказу о CIDR — новой, модифицированной схеме адресации IPv4. Название CIDR расшифровывается как Classless Inter-Domain
Routing — бесклассовая междоменная маршрутизация. Из названия CIDR можно сделать вывод, что эта схема не основана на классах. Однако чтобы понять CIDR, вы должны прежде всего узнать, что означает
маска подсети переменной длины (Variable Length Subnet Masking, VLSM). В рамках старой, основанной на классах схемы адресации каждому IP-адресу ставится в соответствие маска подсети по умолчанию. Для IP- адреса, принадлежащего диапазону адресов класса С, старшие 24 бита (три старших октета) маски подсети равны единице, а остальные (младшие) 8 битов маски подсети равны нулю. Таким образом, маска подсети для любого адреса класса С равна 255.255.255.0 (шестнадцатеричное: ffffff00). Для классов А и В маска подсети равна 255.0.0.0 и 255.255.0.0 соответственно. Таким образом, если вы получаете в свое распоряжение адрес сети класса С, вы получаете 256 уникальных IP-адресов, из которых два зарезервированы: один является адресом сети, а другой — широковещательным адресом. В рамках схемы адресации, основанной на классах, каждому, кто нуждается в IP-адресе, выдается адрес сети одного из классов: А, В или С. Таким образом, IP-адреса распределяются наборами по 256 (класс С), 65 536 (класс В) или 16 777 216 (класс А) адресов. В современных условиях недостатка IP-адресов такой подход неэкономичен. Бесклассовая схема адресации позволяет разделить эти наборы на множество менее крупных диапазонов. Схема адресации, основанная на классах, предусматривает использование маски подсети, в которой количество битов, равных единице, обязательно должно быть кратно восьми. Например, для сети класса С маска подсети выглядит следующим образом (слева стоит двоичное число, а справа приводится точечная десятичная нотация):
1111111.1111111.1111111.00000000 = 255.255.255.0
Как видите, старшие 24 разряда (8 битов умножить на 3 октета) равны единице. Таким образом, адрес сети в схеме адресации, основанной на классах, всегда включает в себя количество битов, кратное восьми.
Схема VLSM снимает это ограничение.
Для примера представим, что вам выделили один IP-адрес класса С (192.168.0.0). Вам надо организовать работу двух географически удаленных друг от друга офисов, в составе каждого из которых работает по 50 систем. Вы планируете организовать сетевой обмен данными по протоколу IP между всеми системами сети. В рамках схемы адресации, основанной на классах, вы можете объединить все 100 систем в единую IP-сеть с адресом класса С. Но, к сожалению, вы не можете обеспечить прямой скоростной обмен данными между обоими офисами. Иными словами, для обмена данными между всеми имеющимися у вас компьютерами нельзя использовать один сетевой провод. Однако при этом вы вынуждены использовать для всех компьютеров один и тот же адрес сети. Говоря иначе, компьютеры каждого из офисов считают, что все компьютеры другого офиса являются локальными. Если все ваши компьютеры рассматриваются как локальные по отношению друг к другу, значит, подразумевается, что передача данных из одного офиса в другой может осуществляться напрямую, то есть без использования шлюза. Шлюз требуется только в случае, если необходимо передать данные узлу, который не входит в локальную сеть. К сожалению, в вашем случае физическое расположение офисов к этому не располагает.
Шлюз (gateway) — это компьютерная система (обычный компьютер или специализированный маршрутизатор), которая обладает двумя или большим количеством адресов сети — по крайней мере, один из этих адресов соответствует локальной сети, а все остальные соответствуют другим сетям. Таким образом, шлюз напрямую подключен к нескольким сетям. Шлюз выполняет передачу пакетов из сети в сеть. Любые полученные шлюзом пакеты, которые не предназначены для локальной сети, передаются в один из сетевых интерфейсов, подключенных к другим сетям. Выбор интерфейса осуществляется в соответствии с информацией, хранящейся в таблице маршрутизации. В рамках схемы маршрутизации, основанной на классах, для каждого из ваших офисов потребовалось бы выделять отдельный адрес сети класса С. В условиях недостатка IP-адресов такой подход нельзя назвать экономичным.
В рамках CIDR вы можете разбить одну сеть с адресом класса С на любое удобное для вас количество более мелких диапазонов IP-адресов. VLSM позволяет использовать маску подсети, в которой часть, идентифицирующая сеть, может состоять из любого количества битов, которое не обязательно должно быть кратным восьми. В маске подсети класса С старшие 24 бита маски подсети равны единице.
Таким образом, маска подсети класса С равна 255.255.255.0 (11111111. 11111111.11111111.00000000).
Теперь представьте, что вы присвоили самому старшему биту самого младшего октета значение 1 вместо 0.
Теперь в составе маски подсети 25 единиц и 7 нулей, и она становится равной 255.255.255.128. Если теперь вы будете использовать эту сетевую маску для обоих офисов, вы сможете использовать половину диапазона адресов класса С для одного офиса и вторую половину диапазона адресов — для другого офиса.
В этом случае компьютеры, установленные в одном из офисов, уже не будут воспринимать компьютеры из другого офиса как сетевые узлы локальной сети. Таким образом, для передачи данных из одного офиса в другой офис по умолчанию будет использоваться шлюз. В результате вы получаете две сети, IP-адреса одной из них простираются от 192.168.0.0 до 192.168.0.127, а вторая включает в себя IP-адреса от
192.168.0.128 до 192.168.0.255. В качестве адреса первой сети будет использоваться адрес 192.168.0.0, а в качестве адреса второй сети — адрес 192.168.0.128. Наконец, адрес 192.168.0.127 будет широковещательным адресом для первой сети, а адрес 192.168.0.255 будет широковещательным адресом для второй сети.
Используя подобный подход, вы можете разбить предоставленный вам диапазон адресов класса С на
четыре отдельных сети, на восемь сетей, 16 сетей, 32 сети и т. д. На самом деле для идентификации сети можно использовать любое количество двоичных разрядов IP-адреса, начиная с восьми и заканчивая 30-ю.
Дело в том, что в стандарте IPv4 каждый IP-адрес — это 32-битное число. Значит, если вы будете использовать для идентификации сети все 32 бита (сетевая маска 255.255.255.255), то в результате получится сеть, в которой может использоваться всего один адрес, таким образом, отпадает надобность в адресе сети и в широковещательном адресе. Если для идентификации сети используется 31 бит (сетевая маска 255.255.255.254), значит, у вас получится сеть с двумя IP-адресами, однако при этом вы должны использовать один из них для адресации самой сети, а второй — в качестве широковещательного адреса. В результате у вас не остается ни одного адреса для адресации сетевых узлов — это неприемлемо.
В рамках схемы адресации, основанной на классах, сетевая маска всегда начинается с октета 255. То есть самый старший октет всегда равен 255. Далее идут октеты, равные 255, до тех пор пока не встретится первый октет, равный 0. После этого до самого младшего из октетов идут октеты, равные 0.
В рамках CIDR самый старший октет сетевой маски должен оставаться равным 255, однако первый нулевой октет можно заменить на любое из чисел: 128, 192, 224, 240, 248, 252 или 254 (за исключением последнего октета), после этого «пограничного» октета все остальные более младшие октеты должны быть равны нулю. Адрес сети и широковещательный адрес выбираются в соответствии с подсетью. Теперь любая подсеть может быть определена при помощи маски подсети с переменной длиной. Для того чтобы определить подсеть, достаточно просто указать количество битов, используемое для идентификации сети.
Это значение может быть от 8 до 32 (исключая 31). Данное значение, как правило, записывается через дробь. Например: /8 или /21. Таким образом, любой сетевой узел можно идентифицировать при помощи IP- адреса и размера маски VLSM, благодаря чему сразу становится ясно, как выглядит адрес сети, широковещательный адрес и сетевая маска.
Например, если некоторому компьютеру предлагается присвоить адрес 192. 168.0.50/27, сразу становится ясно, что адрес сети 192.168.0.32, широковещательный адрес 192.168.0.63, а сетевая маска
255.255.255.224. Для тех, кому сложно с ходу привыкнуть к такой форме записи, я привожу таблицу, при помощи которой вы сможете упростить эту процедуру.


Поделитесь с Вашими друзьями:
1   ...   10   11   12   13   14   15   16   17   ...   42


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал