NAT (Network Address Translation) для новичков
Приветствую всех читателей данной статьи!
Данная статья будет полезна как новичкам в IT сфере, так и неопытным системным администраторам/ сетевым инженерам. Здесь затрагиваются понятия и принцип работы технологии NAT, ее значение в наше время, виды и создание с конфигурированием в программе-симуляторе Cisco Packet Tracer.
Введение
Интернет — всемирная система, состоящая из объединенных компьютерных сетей на базе протокола TCP/IP.
Сейчас интернет — это не просто сеть, а целая информационная вселенная, подчиняющаяся техническим, социальным и государственным законам в различных ее частях. В современном мире люди не обходятся без доступа во всемирную паутину. Интернет открывает множество возможностей получения информации из любой точки мира.
На данный момент в интернете больше всего распространены IP адреса версии — IPv4. Это позволяет создать 4.3 млрд. IP-адресов. Однако этого, казалось бы, большого количества критично не хватает. Чтобы решить эту проблему — был создан механизм преобразования сетевых адресов — NAT.
С задачей объединения устройств в единую сеть помогают различные компании, занимающиеся разработкой и внедрением сетевого оборудования.На сей момент на рынке сетевого оборудования доминируют компании Cisco Systems и Huawei. В данной статье будем вести работу с оборудованием Cisco.
Cisco Systems разработала собственную специальную межсетевую ОС для работы с оборудованием под названием IOS (Internet Operating System). IOS — многозадачная операционная система, выполняющая функции сетевой организации, маршрутизации, коммутации и передачи данных. ОС IOS представляет собой сложную операционную систему реального времени, состоящую из нескольких подсистем и имеющую множество возможных параметров конфигурирования.
В операционной системе IOS представлен специфичный интерфейс командой строки CLI (Command Line Interface). В этом интерфейсе возможно использовать некоторое количество команд. Количество зависит от выбранного режима и от уровня привилегий пользователя (пользовательский, привилегированный, глобальной конфигурации и специфической конфигурации).
Нехватка IP адресов. Технология NAT
В 80х годах ХХ века заложили основу IPv4, позволяющую создавать
4.3 млрд. адресов, но никто не предполагал, что этот запас так быстро иссякнет. С каждым годом появлялось все больше и больше пользователей и с 25 ноября 2019г. в России и в Европе официально закончились IP адреса. Лимит исчерпан.
Для решения этой проблемы было придумано несколько способов:
Первый способ заключается в усилении контроля за IP адресами.
Пусть существует некоторый сайт N с IPv4 xxx.xxx.xxx.xxx, и его хост решил прекратить его поддержание данного сайта. Сайт заброшен, а IP продолжает числиться как занятый и таких случаев может быть очень много. То бишь необходимо провести «инвентаризацию» IP адресов и изъять неиспользуемые/заброшенные.
Второй способ — в массовом использовании системы IPv6.
Протокол IPv6 разработан как преемник протокола IPv4. Основные преимущества IPv6 над IPv4 заключаются в увеличенном адресном пространстве (IPv4 имел 32 бита, что равнялось 2 32 адресам, а IPv6 имел 128 бит, что равнялось 2 128 адресам), 6 версия протокола стала безопаснее (т.к. в v4 не предусматривались многие аспекты безопасности, ибо расчет был на сторонние ПО, а в v6 появились контрольные суммы и шифрование пакетов), однако это далеко не все преимущества IPv6 над IPv4.
Проблема, казалось бы, решена, однако перейти с протокола IPv4 на IPv6 вызывает трудности, потому что эти протоколы несовместимы. И изюминкой причины тяжелого перехода на 6 версию протокола является денежная стоимость. Многие кампании не готовы вложить достаточное кол-во средств для перехода, хоть и стоит отметить, что процесс перехода с 4 на 6 версию постепенно идет.
И третий способ — использование технологии трансляции сетевых адресов — NAT.
Cогласно документу RFC 1918, IANA зарезервировала 3 блока адресов для частных IP (серых) (рис 1), остальные же IP адреса носят название публичных адресов (белых).
рис.1
Network Address Translation — это механизм в сетях TCP/IP, позволяющий изменять IP адрес в заголовке пакета, проходящего через устройство маршрутизации трафика.
Принимая пакет от локального компьютера, маршрутизатор смотрит на IP-адрес назначения. Если это локальный адрес, то пакет пересылается другому локальному компьютеру. Если нет, то пакет надо переслать наружу в интернет.
Маршрутизатор подменяет обратный IP-адрес пакета на свой внешний (видимый из интернета) IP-адрес и меняет номер порта (чтобы различать ответные пакеты, адресованные разным локальным компьютерам). Комбинацию, нужную для обратной подстановки, маршрутизатор сохраняет у себя во временной таблице. Через некоторое время после того, как клиент и сервер закончат обмениваться пакетами, маршрутизатор сотрет у себя в таблице запись об n-ом порте за сроком давности.
Основная функция NAT — сохранение публичных адресов, однако дополнительной функцией является конфиденциальность сети, путем скрытия внутренних IPv4 адресов от внешней.
Существует множество типов технологии NAT, однако основными принято считать: Статический NAT (Static Network Address Translation), Динамический NAT (Dynamic Network Address Translation) и Перегруженный NAT (Network Address Translation Overload).
Статический NAT применяют для отображения незарегистрированного IP-адреса на зарегистрированный IP-адрес на основании один к одному. Особенно полезно, когда устройство должно быть доступным снаружи сети.
рис 2
Статический NAT используется чаще всего в корпоративных сетях, когда необходимо, чтобы какой-либо IP адрес всегда был доступен из глобальной сети. Зачастую статическим IP наделяют сервера и помещают их в DМZ (рис 2).
Динамический NAT отображает незарегистрированный IP-адрес на зарегистрированный адрес из группы зарегистрированных IP-адресов. Динамический NAT также устанавливает непосредственное отображение между незарегистрированными и зарегистрированными адресами, но отображение может меняться в зависимости от зарегистрированного адреса, доступного в пуле (pool — диапазон) адресов, во время коммуникации.
Перегруженный NAT. Этот тип NAT’a имеет множество названий:
NAT Overload, Many-to-One, PAT (Port Address Translation) и IP Masquerading, однако в большинстве источников указывается как NAT Overload. Перегруженный NAT — форма динамического NAT, который отображает несколько незарегистрированных адресов в единственный зарегистрированный IP-адрес, используя различные порты. При перегрузке каждый компьютер в частной сети транслируется в тот же самый адрес, но с различным номером порта.
Подготовка компьютерной сети
Логическая схема топологии сети будет выглядеть как показано на изображении (рис 3)
рис 4
Отнесем PC — станции во VLAN 2, а сервер во VLAN 3. Для этого нужно настроить коммутатор S0 (рис 4). Для того, чтобы определить PC пользователей в отдельный VLAN, необходимо создать VLAN 2 и в 3 запихнуть сам сервер (удобства ради еще и обзовем VLAN’ы именами) (показано синим на рис 4), определить область портов коммутатора, которые будут входить во VLAN 2,3 и прописать соответствующие команды (показано красным на рис 4). Следующая задача – определить один порт типа trunk, для взаимодействия с маршрутизатором (показано зеленым рис 4). Таким образом, коммутатор выступает в роли «посредника» между оконечными устройствами и маршрутизатором.
рис 5
Теперь нужно настроить непосредственно маршрутизатор. Технология sub-interface позволяет объединять несколько виртуальных интерфейсов в один и подключить их к физическому интерфейсу (на маршрутизаторе выбран физический интерфейс fa0/0). Необходимо дать для каждого VLAN’а свой под-интерфейс (показано красным на рис 5) и выдать им IP адрес (показано зеленым на рис 5).
Таким образом, в будущем мы будем NAT’ить трафик.
Дальше я бы посоветовал бы настроить протокол динамической выдачи IP адреса — DHCP, ибо прописывать каждому PC свой адрес — то еще «удовольствие».
Дадим серверу статичный IP 192.168.3.2, а остальных оставим для динамического распределения адресов.
После настройки DHCP, нужно прописать на каждом саб-интерфейсе в R0 команду «ip helper-address 192.168.3.2», тем самым указывая, куда стоит обращаться для получения IP адреса.
После данной команды, устройства получат запрашиваемые IP адреса.
рис 6
Пингуем с рандомного ПК сам сервер (1 пинг) и шлюзы маршрутизатора (2- 3 пинг) (рис 6).
Дальше для удобства будем эмулировать подключение к провайдеру, путем создания в программе-симуляторе РС провайдера, сервера Serv2 с IP 213.234.60.2 (эмулирующий остальную сеть интернет) и роутера R3.
Настройка NAT
Ну и наконец-то мы дошли до самой настройки NAT.
Для внедрения NAT нужно определиться какие порты будут внешними(outside), а какие внутренними(inside).
рис 7
Статичный NAT сопоставляет внутренний и внешний адреса один к одному, поэтому настроим Serv2 таким образом, чтобы любой компьютер мог подключиться к серверу, а сервер к компьютеру — нет. Для этого необходимо прописать следующие команды (рис 7):
По итогу, любой компьютер, находящийся во 2 VLAN’е может пинговать сервер провайдера, а обратно — нет (рис 8). Аналогично проделываем для Serv1, находящимся во VLAN 3.
рис 8
рис 9
А теперь, на финал, внедрим NAT Overload на R0.
Для этого создадим ACL и пропишем там сети, которые должны «натиться» (показано синим на рис 9) и, показав что нужно «натить», активируем лист (показано красным на рис 9).
Таким образом, реализовав статическую и динамическую (типа PAT) настройку NAT, мы смогли защитить небольшую сеть от подключения извне.
Надеюсь вам понравилась данная статья.
Спасибо за ее чтение, всем хорошего настроения 🙂
Источник
Как изменить тип NAT на ПК
Вы только что приобрели новую замечательную игру, и пришло время для захватывающего матча с вашим другом. Вы подключаетесь и начинаете играть, но внезапно начинаете терять очки из-за раздражающей задержки. Одним из виновников может быть тип NAT, поэтому ниже мы расскажем, как изменить его на вашем ПК.
Что такое NAT и каково его назначение?
Трансляция сетевых адресов (NAT) — это метод изменения IP-адреса путем изменения информации в заголовке пакета данных. Сетевые пакеты — это пакеты информации, которые составляют ваш трафик, когда он проходит через устройство маршрутизации.
NAT работает в маршрутизаторе и позволяет ему преобразовывать частные адреса всей сети в один публичный IP-адрес. Это превращает маршрутизатор в посредника между вашей частной сетью и Интернетом.
NAT-маршрутизатор можно сравнить с офисным коммутатором. Каждый отдел имеет свой собственный внутренний номер, который не виден посторонним (частный IP). Исходящие звонки обычно отображают один и тот же публичный номер (публичный IP). Подобно секретарю, NAT может направлять звонки конкретным абонентам в различные отделы, используя их порты, при этом гарантируя, что эти соединения легитимны.
NAT используется для следующих целей:
- Для предотвращения исчерпания адресов IPv4. Изначально NAT использовался для сохранения доступных IP-адресов, поскольку их количество ограничено. С ростом числа интернет-пользователей для каждого из них не хватает IP-адресов. Интернет-провайдеры используют шлюзы NAT для присвоения одного IP-адреса всей сети, а не одному устройству. Например, в вашей сети может быть много подключенных устройств (например, ноутбук, несколько мобильных телефонов, IoT-устройства). Если бы каждое из них имело уникальный адрес, ситуация потребовала бы гораздо больше IP-адресов. Но с NAT-шлюзами провайдеры присваивают всей сети один IP вместо нескольких;
- Чтобы скрыть ваш частный IP. NAT также скрывает ваши частные IP-адреса, отображая вместо них публичный IP. В результате IP-пакеты кажутся исходящими от устройства маршрутизации;
- Для защиты. NAT также действует как брандмауэр и может решать, какие данные могут проходить в вашу локальную сеть.
- Проблемы с подключением NAT
- Более строгие настройки NAT могут замедлить скорость вашего интернета. Хотя это не будет большой проблемой для ежедневного просмотра веб-страниц, это снижение может быть гораздо более заметным во время игр. Поскольку NAT выполняет функции брандмауэра, он может замедлить вашу скорость, ограничивая поток определенных пакетов.
Кроме того, устройства с маршрутизаторами NAT обычно не имеют сквозного соединения и не поддерживают определенные интернет-протоколы. Поэтому некоторые пакеты могут не доходить до места назначения, что может привести к проблемам с интернет-соединением.
Что такое тип NAT?
К сожалению, не существует общепринятой в отрасли классификации различных типов NAT, которые пользователи часто видят на своих устройствах. Обычно они описывают, насколько строгой является конфигурация NAT в контексте вашего устройства. Функции NAT и технические характеристики могут отличаться в зависимости от устройства, поэтому мы рекомендуем проверить их перед изменением настроек.
Открытый NAT
Открытый NAT не имеет никаких ограничений. Все устройства могут свободно отправлять и получать данные, и у него нет брандмауэра. Он также легко соединяется с другими типами NAT.
Хотя открытый NAT гарантирует бесперебойную работу в Интернете с минимальными задержками и буферизацией, это не очень безопасный вариант. Он не обеспечивает защиту брандмауэра, поэтому при его использовании вы более уязвимы для хакерских атак.
Умеренная NAT
Этот NAT более безопасен и оставляет открытыми только несколько портов. Он также использует брандмауэр для защиты вашей сети. Хотя он более безопасен, он также может немного замедлить работу вашего интернета.
Строгая NAT
Это самый строгий и самый безопасный тип NAT. Он ограничивает данные, поступающие в сеть, а также является самым безопасным из трех. Строгий NAT защищает вас от различных атак и включен по умолчанию в большинстве маршрутизаторов.
Его недостатком является то, что он замедляет работу интернета, и вы можете испытывать больше задержек во время игр. Этот тип может подключаться только к сетям с открытым NAT, поэтому вы можете чаще сталкиваться с проблемами подключения.
Как изменить тип NAT на компьютере
Вот несколько способов изменить тип NAT.
1. Включите UPnP
Universal Plug and Play (UPnP) — это набор протоколов, которые помогают устройствам в вашей сети находить друг друга. Он также позволяет автоматически перенаправлять порты.
Перед включением UPnP убедитесь, что вы включили статический IP-адрес. Шаги могут отличаться в зависимости от модели маршрутизатора, но обычно они выглядят следующим образом:
Откройте панель управления маршрутизатора в браузере и войдите в систему;
Перейдите к настройкам и установите UPnP в положение on.
Помните, что использование UPnP делает вас гораздо более уязвимым в Интернете. В устройствах UPnP обычно отсутствуют механизмы аутентификации, что делает вас более уязвимыми для кибератак. Кроме того, они подвержены так называемой лазейке CallStranger, что позволяет злоумышленникам использовать их для DDoS, перечислений и других атак. Чтобы избежать этих угроз, обязательно внедряйте последние обновления для системы UPnP.
2. Используйте Windows Network Discovery
Если вы используете Windows, вы можете использовать Network Discovery для изменения NAT:
1. Нажмите кнопку меню Пуск;
2. Перейдите в раздел Настройки;
3. Нажмите Сеть и интернет;
4. Выберите Wi-Fi;
5. Затем нажмите Изменить дополнительные параметры общего доступа;
6. Включите опцию Включить обнаружение сети и установите флажок Включить автоматическую настройку подключенных к сети устройств.
3. Используйте проброс портов
Это один из самых простых методов изменения NAT. Сначала включите функцию переадресации портов в настройках маршрутизатора. Вот как это сделать:
- Вы, вероятно, найдете опцию переадресации портов в разделе настроек панели управления вашего маршрутизатора. Включите ее;
- Затем вам следует узнать номера портов, которые используют ваши игры, и внести их в список. Не забудьте добавить рядом свой IP-адрес;
- Выберите устройство, на которое вы хотите указать;
- Выберите опции TCP и UDP;
- Сохраните изменения и перезагрузите маршрутизатор.
4. Использование файла конфигурации
Для этого метода вам необходимо:
- Перейти на панель конфигурации маршрутизатора;
- Найти «Сохранить или восстановить конфигурацию» или аналогичную опцию;
- Выбрать опцию резервного копирования конфигурации;
- Сохранить файл, когда появится соответствующее окно;
- Создайте дополнительную копию файла для резервного копирования;
- Откройте файл;
- Затем найдите «последнюю привязку»;
- В поле «last bind» введите «bind application=CONE(UDP) port=5555-5555» (замените номера портов на те, которые использует ваша игра). Если вы хотите открыть несколько портов, добавьте необходимое количество строк с разными номерами портов ниже той, которую вы ввели;
- Сохраните файл, вернитесь на панель конфигурации маршрутизатора и найдите опцию, где можно загрузить конфигурацию с жесткого диска. Затем загрузите файл, который вы только что изменили;
- Нажмите кнопку Восстановить конфигурацию или опцию с аналогичным названием;
- Перезагрузите маршрутизатор после загрузки конфигурации.
Источник