Добавил:
Незнакомец Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс Администрирование сетей -rev1.1.1.docx
Скачиваний:
42
Добавлен:
30.03.2022
Размер:
2.59 Mб
Скачать

Тема 7. Подключение к Интернет - последняя миля и порт подключения. Варианты подключения с dhcp и статическим адресом. Работа nat. Типы nat - static/dynamic. Работа pat.

Построив локальную сеть, многие инженеры озяботятся вопросом подключения её к сети глобальной с целью доступа к важным рабочим ресурсам. Как же это сделать? Во-первых, для подключения к сети Интернет обязателен маршрут по умолчанию (если, конечно, мы не будем использовать BGP). Объясняется это тем, что прописать пути ко всем Интернет-ресурсам, которые будут нужны Вашей организации, задача крайне нелёгкая, а добавлять новый путь каждый раз, когда сотрудники затребуют доступ к новым сайтам и ресурсам нецелесобразно. Кроме того, количество таких путей будет расти в геометрической прогрессии и сильно увеличит конфигурационный файл Вашего маршрутизатора. Соответственно, при подключении к Интернету мы будем использовать маршрут по умолчанию, тем самым убирая все проблемы глобальной маршрутизации нашего трафика в сторону Интернет-провайдера.

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

На помощь приходит технология NAT – Network Address Translation (трансляция сетевых адресов). Эта технология позволяет при прохождении маршрутизатора менять адрес с одного на другой. Пример: у нас есть хост с адресом 192.168.0.2 и мы взяли в аренду у провайдера «белый» адрес 11.0.0.3. Применяя технологию NAT, мы будем использовать адрес 192.168.0.2 в локальной сети, а выходя за её пределы – 11.0.0.3.

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

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

Возникает вопрос, зачем нам 2 интерфейса, inside и outside, когда, казалось бы, достаточно и одного?

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

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

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

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

Обратная трансляция:

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

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

Рассмотрим другой вопрос. А что делать, если адресов не один, а несколько? Как быть, если количество хостов, которым нужно выходить в интернет, увеличится или мы купим ещё больше «белых» IP? В этом случае, необходимо использовать Dynamic NAT. По сути, принцип тот же, однако функционал позволяет использовать пулы (pools – диапазоны) адресов. Причём, можно настроить и так, чтобы все хосты локальной сети ходили в Интернет через один и тот же белый 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). Она применима в случае, если число активных устройств превышает число выделенных «белых» адресов. Для доступа в интернет будет использован один адрес + порт, который для каждого хоста локальной сети будет отличаться. Например, наш «белый» IP это 11.0.0.2, мы хотим, чтобы одновременно Интернетом пользовались хосты с адресами: 192.168.0.11, 192.168.0.12, 192.168.0.13, 192.168.0.14. Тогда каждый из них будет выходить в глобальную сеть, имея привязку адрес+порт:

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

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

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, и именно для распознавания конкретно этого хоста будет использован порт: пакет данных, попадая на наш пограничный маршрутизатор, в процессе обратной трансляции конвертирует связку «белый 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