Добавил:
Незнакомец Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие и лабораторный практикум Сетевая безопасность rev1.docx
Скачиваний:
45
Добавлен:
30.03.2022
Размер:
2.4 Mб
Скачать

5.2. Краткие теоретические сведения

Для созданной локальной сети актуальной становится задача подключения её к глобальной сети с целью организации доступа к важным рабочим ресурсам.

Рассмотрим порядок решения этой задачи.

Во-первых, для подключения к сети Интернет обязателен т.н. маршрут по умолчанию, т.е. путь, по которому сервер сети будет соединяться в том случае, если нет дополнительных условий и причин.

Необходимость наличия маршрута по умолчанию объясняется это тем, что не представляется возможным описать все пути доступа ко всем интернет-ресурсам, необходимым, например, сотрудникам организации.

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

Исходя из изложенного, при подключении к Интернету будет использоваться маршрут по умолчанию, а все связанное с глобальной маршрутизацией трафика будет возложено на Интернет-провайдера.

В таком случае с нашей стороны необходимо лишь обеспечить доступ к Интернету конечных хостов.

Ранее было указано, что количество IPv4-адресов лимитировано, и за каждый из них необходимо платить. При создании локальной сети используется адресация типа 10.0.0.0, 192.168.0.0 и подобная. Поэтому встает вопрос о том, как обеспечить маршрутизацию таких хостов в Интернете?

При этом помощь может оказать применение технологии NAT – (Network Address Translation, трансляция сетевых адресов).

Преобразование адресов методом NAT может производиться практически любым маршрутизирующим устройством – Интернет-маршрутизатором, сервером доступа, межсетевым экраном. Наиболее популярным является Source NAT (SNAT), суть механизма которого состоит в замене адреса источника (source) при прохождении пакета в одну сторону и обратной замене адреса назначения (destination) в ответном пакете. Наряду с адресами источника/назначения могут также заменяться номера портов источника и назначения.

Пример: у нас есть хост с адресом 192.168.0.2 и мы взяли в аренду у провайдера «белый» адрес 11.0.0.3. Применяя технологию NAT, мы будем использовать адрес 192.168.0.2 в локальной сети, а выходя за её пределы – 11.0.0.3.

Описанный пример относится к применению т.н. статического NAT.

Примечание: Статический NAT отображает локальные IP-адреса на конкретные публичные адреса по принципу «один к одному». 

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

Рис. 5.1. Внешний вид сетевой топологии с применением

технологии статического NAT

Из анализа рис.5.1 возникает вопрос о необходимости наличия 2-х интерфейсов: «inside» и «outside».

Router#conf t

Router(config)#ip route 0.0.0.0 0.0.0.0 gigabitEthernet 0/1

%Default route without gateway, if not a point-to-point interface, may impact performance

Router(config)#interface gigabitEthernet 0/0

Router(config-if)#ip address 192.168.0.1 255.255.255.0

Router(config-if)#no shutdown

%LINK-5-CHANGED: Interface GigabitEthernet0/0, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0, changed state to up

Router(config-if)#ip nat inside

Router(config-if)#exit

Router(config)#interface gigabitEthernet 0/1

Router(config-if)#ip address 11.0.0.1 255.255.255.0

Router(config-if)#no shutdown

%LINK-5-CHANGED: Interface GigabitEthernet0/1, changed state to up

Router(config-if)#ip nat outside

Router(config-if)#exit

Router(config)#ip nat inside source static 192.168.0.2 11.0.0.3

Рассмотрим трансляцию пошагово:

А) Прямая трансляция

1. Трафик, приходя на интерфейс, помеченный как inside, если он соответствует тому, что мы хотим транслировать, маркируется как возможно транслируемый.

2. На этом этапе трафик подвергается маршрутизации. В том случае если при этом трафик направляется на интерфейс, помеченный как outside, происходит трансляция. Если же трансляция динамическая, маршрутизатор проверяет ее наличие в таблице трансляций и при ее отсутствии создает запись, а при наличии - обнуляет счетчик неактивности. Если же пакет попадает на выход на интерфейс, не помеченный как outside, то трансляция не происходит.

Примечание: Динамический NAT отображает набор частных адресов на некое множество публичных IP-адресов. Если число локальных хостов не превышает число имеющихся публичных адресов, каждому локальному адресу будет гарантироваться соответствие публичного адреса. В противном случае, число хостов, которые могут одновременно получить доступ во внешние сети, будет ограничено количеством публичных адресов. 

Б) Обратная трансляция.

1. Трафик, попадая на outside интерфейс, в отличии от прямой трансляции, сначала подвергается NAT. Если трансляция (динамическая или статическая) существует, в случае с inside source NAT, у него меняется значение destination и только после этого трафик подвергается маршрутизации и перенаправляется по назначению.

Поэтому маркировка интерфейсов inside - outside осуществляется учетом механизма работы.

Рассмотрим другой вопрос.

Что делать, если мы имеем дело не с одним, а с несколькими адресами?

Как быть, если количество хостов, которые необходимо обеспечить выходом в интернет, увеличится?

В этом случае, необходимо использовать динамический NAT (Dynamic NAT). См. примечание выше.

В сущности, реализуемый принцип тот же, однако функционал позволяет использовать пулы (диапазоны) адресов, причём, существует возможность настройки таким образом, что все хосты локальной сети имеют выход в Интернет через один и тот же IP-адрес по очереди.

В таком случае конфигурация маршрутизатора изменится следующим образом:

Router#conf t

Router(config)#ip route 0.0.0.0 0.0.0.0 gigabitEthernet 0/1

Router(config)#interface gigabitEthernet 0/0

Router(config-if)#ip address 192.168.0.1 255.255.255.0

Router(config-if)#no shutdown

Router(config-if)#ip nat inside

Router(config-if)#exit

Router(config)#interface gigabitEthernet 0/1

Router(config-if)#ip address 11.0.0.1 255.255.255.0

Router(config-if)#no shutdown

Router(config-if)#ip nat outside

Router(config-if)#exit

Router(config)#ip nat pool Test 11.0.0.2 11.0.0.10 netmask 255.255.255.0

Router(config)#access-list 10 permit 192.168.0.0 0.0.0.255

Router(config)#ip nat inside source list 10 pool Test

Как видно в этом случае добавляется список управления доступом, который определяет какие хосты имеют право пользоваться NAT-ом, а также добавляется пул адресов, которые выделены (заказаны у провайдера)для доступа в Интернет.

В остальном конфигурация и принцип работы соответствуют таковым в случае статического NAT.

Вместе с тем, всё перечисленное ранее не решает проблему одновременного доступа в Интернет количества устройств, которое превышает количество выделенных (приобретенных у провайдера) адресов.

Для решения такой задачи существует технология PAT (Port Address Translation, трансляция порт-адрес). Иногда ее называют NAT overload или NATPT.

Технология PAT применима в случае, если число активных устройств превышает число выделенных адресов. При этом для доступа в интернет будет использован один адрес + порт, который для каждого хоста локальной сети будет отличаться.

Пример: Наш выделенный IP - 11.0.0.2. Необходимо, чтобы одновременно Интернетом пользовались хосты с адресами: 192.168.0.11, 192.168.0.12, 192.168.0.13, 192.168.0.14. В этом случае каждый из них будет выходить в глобальную сеть, имея следующую привязку адрес+порт:

Таблица 5.1

Привязка адрес+порт по технологии PAT

Адрес в локальной сети

Адрес в глобальной сети

192.168.0.11

11.0.0.2 port 678

192.168.0.12

11.0.0.2 port 664

192.168.0.13

11.0.0.2 port 679

192.168.0.14

11.0.0.2 port 456

Имена портов берутся из диапазона, не зарезервированного за определёнными протоколами, и служат в качестве средства распознавания того или иного хоста в локальной сети.

Пример: Получая доступ в Интернет хост 192.168.0.12 будет всегда иметь адрес 11.0.0.2 и все службы Интернет будут «знать» его именно под этим адресом, а порт значения не имеет. Однако, пакеты данных, адресованные в нашу локальную сеть, должны попасть в адрес хоста 192.168.0.12 и именно для распознавания этого хоста будет использован порт 664. Пакет данных, попадая на пограничный маршрутизатор, в процессе обратной трансляции конвертирует связку «IP-адрес+port» в адрес 192.168.0.12.

В данном случае конфигурация маршрутизатора при настройке PAT изменится:

Router#conf t

Router(config)#ip route 0.0.0.0 0.0.0.0 gigabitEthernet 0/1

Router(config)#interface gigabitEthernet 0/0

Router(config-if)#ip address 192.168.0.1 255.255.255.0

Router(config-if)#no shutdown

Router(config-if)#ip nat inside

Router(config-if)#exit

Router(config)#interface gigabitEthernet 0/1

Router(config-if)#ip address 11.0.0.1 255.255.255.0

Router(config-if)#no shutdown

Router(config-if)#ip nat outside

Router(config-if)#exit

Router(config)#access-list 10 permit 192.168.0.0 0.0.0.255

Router(config)# ip nat inside source list 10 interface gigabitEthernet 0/1 overload