Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Частные адреса и система NAT



Другое временное решение проблемы сокращающегося адресного пространства про­ токола IPv4 заключается в использовании частных областей IP-адресов, описанных в документе RFC1918. Частные адреса используются только внутри сайта и никогда не демонстрируются в Интернете (по крайней мере, непреднамеренно). Преобразование частных адресов в адреса, выделенные интернет-провайдером, осуществляется погра­ ничным маршрутизатором.

Документ RFC1918 определяет, что одна сеть класса А, 16 сетей класса В и 256 сетей класса С резервируются для частного использования и никогда не выделяются глобаль­ но. В табл. 14.5 показаны диапазоны частных адресов (каждый диапазон представлен в более короткой нотации протокола CIDR). Из перечисленных диапазонов организа­ ции могут выбирать для себя сети нужного размера.

Таблица 14.5. IP-адреса, зарезервированные для частного использования

Класс

А В

Начало Конец Диапазон CIDR

10.0.0.0 10.255.255.255 10.0.0.0/8

172.16.0.0 172.31.255.255 172.16.0.0/12

С

192.168.0.0 192.168.255.255 192.168.0.0/16

Изначально идея состояла в том, чтобы узлы могли самостоятельно выбирать класс адресов из указанных возможностей, чтобы правильно определить свой размер. Однако в настоящее время протокол CIDR и подсети стали универсальным инструментом, по­ этому для всех новых частных сетей целесообразнее всего использовать адреса класса А (разумеется, с подсетями).

Для того чтобы узлы, использующие частные адреса, могли получать доступ в Ин­ тернет, на пограничном маршрутизаторе организации должна выполняться система NAT (Network Address Translation — трансляция сетевых адресов). Эта система перехватыва­ ет пакеты и заменяет в них адрес отправителя реальным внешним IP-адресом. Может также происходить замена номера исходного порта. Система хранит таблицу преобразо­ ваний между внутренними и внешними адресами/портами, чтобы ответные пакеты до­ ставлялись нужному адресату.

Благодаря нумерации портов, появляется возможность подключить несколько исхо­ дящих соединений к общему IP-адресу, чтобы внутренние узлы совместно использовали одинаковый внешний IP-адрес. Иногда в организации достаточно иметь один “настоя­ щий” внешний адрес. Например, эта конфигурация по умолчанию установлена в боль­ шинстве популярных маршрутизаторов, использующих кабель и модемы DSL.

Узел, использующий систему NAT, запрашивает адреса у провайдера, но большин­ ство адресов теперь используется для внутрисистемных привязок и не назначается от­ дельным компьютерам. Если узел позднее захочет сменить провайдера, потребуется лишь изменить конфигурацию пограничного маршрутизатора и его системы NAT, но не самих компьютеров.

Существует возможность заставить операционные системы UNIX или Linux выпол­ нять функции NAT, хотя во многих организациях предпочитают делегировать эти обязанности маршрутизаторам или устройствам подключения к сети.8 Вопросы, связанные с конкретными поставщиками, мы обсудим в этой главе позднее.

Неправильная конфигурация системы NAT может привести к тому, что пакеты с част­ ными адресами начнут проникать в Интернет. Они могут достичь узла назначения, но ответные пакеты не будут получены. Организация CAIDA9, замеряющая трафик маги­ стральных сетей, сообщает о том, что 0,1—0,2% пакетов, проходящих по магистрали, имеют либо частные адреса, либо неправильные контрольные суммы. На первый взгляд показатель кажется незначительным, но на самом деле это приводит к тому, что каж­ дую минуту в сети циркулируют тысячи пакетов. Информацию по статистике Интернета и средствам измерения производительности глобальной сети можно получить на веб­ узле www.caida.org.

Одной из особенностей системы NAT является то, что узел Интернета не может на­ прямую подключиться к внутренним машинам организации. Для того чтобы преодолеть это ограничение, в некоторых реализациях системы NAT разрешается создавать тунне­ ли, которые поддерживают прямые соединения с выбранными узлами.10

Еще одна проблема заключается в том, что некоторые приложения встраивают IP-адреса в информационную часть пакетов. Такие приложения не могут нормально ра­ ботать совместно с NAT. К ним относятся определенные протоколы маршрутизации, программы потоковой доставки данных и ряд FTP-команд. Система NAT иногда также отключает виртуальные частные сети (VPN — virtual private network).

Система NAT скрывает внутреннюю структуру сети. Это может показаться преиму­ ществом с точки зрения безопасности, но специалисты считают, что на самом деле си­ стема NAT не обеспечивает должную безопасность и уж во всяком случае не устраняет потребность в брандмауэре. Кроме того, она препятствует попыткам оценить размеры и топологиюИнтернета.См.документRFC4864, Local Network Protection for IPv6, содер­ жащий полезную информацию о реальных и мнимых преимуществах системы NAT и протокола IPv4.

 

Маршрутизация

Маршрутизация — это процесс направления пакета по лабиринту сетей, находящих­ ся между отправителем и получателем. В системе TCP/IP маршрутизация происходит примерно так, как путешественник, первый раз посетивший страну, находит нужный ему дом, задавая вопросы местным жителям. Первый человек, с которым он заговорит, возможно, укажет ему нужный город. Войдя в город, путешественник спросит другого человека, и тот расскажет, как попасть на нужную улицу. В конце концов наш путеше­ ственник подойдет достаточно близко к конечному пункту своих странствий, чтобы кто- нибудь указал ему дом, который он ищет.

Маршрутная информация в системе TCP/IP имеет форму правил (маршрутов), на­ пример: “Для того чтобы достичь сети А, посылайте пакеты через компьютер С”. Часто существует и стандартный маршрут. В нем объясняется, что нужно делать с пакетами, предназначенными для отправки в сеть, маршрут к которой не указан явным образом.

Данные маршрутизации хранятся в одной из таблиц ядра. Каждый элемент этой та­ блицы содержит несколько параметров, включая сетевую маску (раньше это поле было опциональным, но теперь оно обязательно, если стандартная сетевая маска неверна). Для направления пакета по заданному адресу ядро подбирает наиболее конкретный маршрут (т.е. тот, где самая длинная маска). Если ни один из маршрутов (в том числе стандартный) не подходит, то отправителю возвращается ICMP-сообщение вида “net­ work unreachable” (сеть недоступна).

Слово “маршрутизация” широко употребляется в двух различных смыслах:

• процедура поиска сетевого адреса в специальной таблице для передачи пакета в пункт его назначения;

• процесс построения этой таблицы.

Ниже мы рассмотрим, как осуществляется переадресация пакетов и как вручную доба­ вить или удалить маршрут. Более сложные вопросы, связанные с работой протоколов марш­ рутизации, создающих и обслуживающих маршрутные таблицы, освещаются в главе 15.

 

Таблицы маршрутизации

Таблицу маршрутизации можно просмотреть с помощью команды netstat -r. Ко­ манда netstat -rn запрещает поиск доменных имен в системе DNS, вследствие чего все адреса будут представлены в числовом виде. Команда netstat подробно описыва­ ется в разделе 21.5, здесь же мы дадим небольшой пример, чтобы у читателей сложилось представление о том, что такое маршруты.

% netstat -rn

Kernel IP routing table

Destination

132.236.227.0

default

132.236.212.0

132.236.220.64

127.0.0.1

Genmask

255.255.255.0

0.0.0.0

255.255.255.192

255.255.255.192

255.255.255.255

Gateway

132.236.227.93

132.236.227.1

132.236.212.1

132.236.212.6

127.0.0.1

Fl MSS Iface U 1500 eth0 UG 1500 eth0 U 1500 eth1 UG 1500 eth1 U 3584 lo

В рассматриваемой системе есть два сетевых интерфейса: 132.236.227.93 (eth0) — в сети 132.236.227.0/24 и 132.236.212.1 (eth1) - в сети 132.236.212.0/26.

514 Часть II. Работа в сети

Поле destination обычно содержит адрес сети. В поле gateway отображается адрес локального сетевого интерфейса или соседнего узла; в ядре системы Linux для вызова шлюза, установленного по умолчанию, в поле gateway может бьггь записан адрес 0.0.0.0.

Например, четвертый маршрут указывает, что для достижения сети 132.236.220.64/26 пакеты следует посылать в шлюз 132.236.212.6 через интерфейс eth1. Вторая запись со­ держит описание стандартного маршрута. Пакеты, не адресованные явно ни в одну из трех указанных сетей (или самому компьютеру), будут направлены в стандартный шлюз 132.236.227.1.

Компьютеры могут посылать пакеты только тем шлюзам, которые физически под­ ключены к той же сети. Локальные компьютеры могут перемещать пакеты только на один шаг в направлении пункта назначения, поэтому в него бессмысленно включать информацию о шлюзах, не являющихся смежными в таблице локальной маршрутиза­ ции. Каждый шлюз, через который проходит пакет, принимает следующее решение о его перемещении, анализируя собственную таблицу локальной маршрутизации.12

Вести таблицы маршрутизации можно статически, динамически или комбинирован­ ным способом. Статический маршрут задается в явном виде с помощью команды route. Он должен оставаться в таблице маршрутизации в течение всего времени работы систе­ мы. Во многих случаях такие маршруты задаются на этапе начальной загрузки с помо­ щью одного из сценариев запуска системы. Например, команды

route add -net 132.236.220.64 netmask 255.255.255.192

gw 132.236.212.6 eth1

route add default gw 132.236.227.1 eth0

добавляют, соответственно, четвертый и второй маршруты из числа тех, что отобра­ жаются выше командой netstat -rn (первый и третий маршруты добавляются коман­ дой ifconfig при конфигурировании интерфейсов eth0 и eth1).

Полное описание команды route см. в разделе 14.10.

Последний маршрут также добавляется на этапе начальной загрузки. Он определя­ ет псевдоустройство, называемое интерфейсом обратной связи (loopback interface). Это устройство препятствует пакетам, которые компьютер посылает сам себе, выходить в сеть. Вместо этого они напрямую переносятся из выходной сетевой очереди ядра во входную очередь.

В относительно стабильной локальной сети статическая маршрутизация является до­ статочно эффективным решением. Эта система проста в управлении и надежна в экс­ плуатации, но требует знания системным администратором топологии сети на момент начальной загрузки, а также того, чтобы эта топология в периоды между загрузками не изменялась.

Большинство компьютеров локальной сети имеет единственный выход во внешний мир, поэтому маршрутизация осуществляется очень просто: достаточно на этапе начальной загрузки добавить стандартный маршрут. Компьютер может получить стандартный марш­ рут вместе со своим IP-адресом у сервера DHCP (этот протокол описан в разделе 14.7).

В сетях с более сложной топологией требуется динамическая маршрутизация. Она осуществляется процессом-демоном, который ведет и модифицирует таблицу маршру­ тизации. Демоны маршрутизации, “обитающие” на различных компьютерах, взаимо­ действуют друг с другом с целью определения топологии сети и решения вопроса о том, как добраться до удаленных адресатов. Существует несколько таких демонов. Подробно они будут рассмотрены в главе 15.

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.