Налаштування перетворення адрес портів (PAT)

Налаштування PAT. Пул адрес

Перетворення адрес портів PAT (так зване NAT з перевантаженням) економить адреси у внутрішньому глобальному пулі, дозволяючи маршрутизатору використати одну внутрішню глобальну адресу для декількох внутрішніх локальних адрес. Іншими словами, одна публічна IPv4-адреса може використовуватися для сотень або навіть тисяч внутрішніх IPv4-приватних адрес. Якщо налагоджений цей тип перетворення, маршрутизатор зберігає достатній об’єм інформації протоколів більш високих рівнів, наприклад, номера портів TCP або UDP, для зворотного перетворення внутрішньої глобальної адреси в потрібну внутрішню локальну адресу. При прив’язці декількох внутрішніх локальних адрес до однієї внутрішньої глобальної адреси для розрізнення локальних адрес використовуються номери портів TCP або UDP.

Сумарне число внутрішніх адрес, які можуть бути перетворені в одну зовнішню адресу, теоретично може досягати 65 536 на одну IP-адресу. Але число внутрішніх адрес, яким можна призначити одну IP-адресу, приблизно складає 4000.

Залежно від того, яким чином інтернет-провайдер виділяє публічні IPv4-адреси, існує два способи налаштування PAT. У першому випадку інтернет-провайдер виділяє організації декілька публічних IPv4-адрес, а в другому випадку виділяється єдина публічна IPv4-адреса, необхідна організації для підключення до мережі інтернет-провайдера.

Якщо об’єкту було виділено декілька публічних IPv4-адрес, то ці адреси можуть бути частиною пулу, використовуваного PAT. Це аналогічно динамічному NAT, за винятком того, що публічних адрес недостатньо для створення взаємно-однозначних відповідностей внутрішніх і зовнішніх адрес. Невеликий пул адрес спільно використовується великим числом пристроїв.

На рис. 1 показані кроки по налаштуванню PAT для використання пулу адрес. Основна відмінність між цією конфігурацією і конфігурацією для динамічного взаємно-однозначного NAT полягає у використанні ключового слова overload. Ключове слово overload задіює роботу PAT.

Рис. 1. Налаштування PAT

Приклад конфігурації, показаної на рис. 2, створює перетворення з перевантаженням для пулу NAT з ім’ям NAT — POOL2. NAT — POOL2 містить адреси з 209.165.200.226 по 209.165.200.240. Об’єктами перетворення є вузли мережі 192.168.0.0/16. В якості внутрішнього інтерфейсу визначений інтерфейс S0/0/0, а в якості зовнішнього інтерфейсу — інтерфейс S0/1/0.

Рис. 2. Приклад PAT з пулом адрес

Налаштування PAT для однієї адреси

На рис. 3 показана топологія реалізації PAT для перетворення однієї публічної IPv4-адреси. В даному прикладі для усіх вузлів мережі 192.168.0.0/16 (відповідний список ACL 1), що відправляють трафік в Інтернет через маршрутизатор R2, виконуватиметься перетворення в IPv4-адресу 209.165.200.225 (IPv4-адресу інтерфейсу S0/1/0). Потоки трафіку визначатимуться номерами портів в таблиці NAT, оскільки було використано overload.

Рис. 3. PAT з одною адресою

На рис. 4 показані дії, необхідні для налаштування PAT з однією IPv4-адресою. Якщо доступна тільки одна публічна IPv4-адреса, для конфігурації з перевантаженням зазвичай призначається публічна адреса зовнішнього інтерфейсу, який підключається до інтернет-провайдера. Усі внутрішні адреси в пакетах, що виходять із зовнішнього інтерфейсу, перетворяться в одну IPv4-адресу.

Рис. 4. Дії по налаштуванню PAT

Крок 1. Визначте ACL-список, що дозволяє перетворення трафіку.

Крок 2. Настройте перетворення джерела, використовуючи ключові слова interface і overload. Ключове слово interface визначає IP-адресу інтерфейсу, яка використовуватиметься при перетворенні внутрішніх адрес. Ключове слово overload вказує маршрутизатору відстежувати номери портів для кожного запису NAT.

Крок 3. Вкажіть інтерфейси, що є внутрішніми по відношенню до NAT. Це будь-який інтерфейс, підключений до внутрішньої мережі.

Крок 4. Вкажіть інтерфейс, що є зовнішнім по відношенню до NAT. Це має бути той же інтерфейс, який вказаний в записі перетворення джерела в кроці 2.

Ця конфігурація аналогічна динамічному NAT, за винятком того, що для визначення зовнішньої IPv4-адреси замість пулу адрес використовується ключове слово interface. Таким чином, пул NAT не визначається.

Використайте засіб перевірки синтаксису на рис. 3, щоб настроїти PAT на маршрутизаторі R2 з використанням однієї адреси.

Аналіз PAT

Процес перетворення NAT з перевантаженням є однаковим як при використанні пулу адрес, так і при використанні однієї адреси. Продовжуючи попередній приклад PAT з використанням однієї публічної IPv4-адреси, комп’ютеру PC1 потрібно підключення до веб-сервера Svr1. Одночасно іншому клієнтові, PC2, треба встановити аналогічний сеанс з веб-сервером Svr2. І для PC1, і для PC2 налагоджені приватні IPv4-адреси, а на маршрутизаторі R2 включено перетворення PAT.

Процес передачі пакетів від комп’ютерів до серверів:

1. На рис. 5 показані комп’ютери PC1 і PC2, які відправляють пакети серверам Svr1 і Svr2, відповідно. PC1 використовує IPv4-адресу 192.168.10.10 і TCP-порт джерела 1444. PC2 використовує IPv4-адресу 192.168.10.11 джерела і, по випадковому збігу, той же TCP-порт джерела — 1444.

Рис. 5. Аналіз від комп’ютерів до серверів

2. Пакет комп’ютера PC1 першим досягає маршрутизатора R2. Використовуючи PAT, R2 змінює IPv4-адресу джерела на 209.165.200.225 (внутрішня глобальна адреса). У таблиці NAT відсутні інші пристрої, що використовують порт 1444, тому PAT зберігає цей же номер порту. Потім пакет пересилається серверу Svr1 за адресою 209.165.201.1.

3. Далі на маршрутизатор R2 приходить пакет з комп’ютера PC2. Налаштування PAT забезпечує використання для усіх перетворень одну внутрішнью глобальну IPv4-адресу — 209.165.200.225. Аналогічно процесу перетворення для PC1, PAT змінює IPv4-адресу джерела PC2 на внутрішню глобальну адресу 209.165.200.225. Проте в цьому пакеті PC2 використовується номер порту джерела, що вже міститься в поточному записі PAT, що забезпечує перетворення PC1. PAT збільшує номер порту джерела, поки його значення не виявиться унікальним для цієї таблиці. В даному випадку записи порту джерела в таблиці NAT і пакету від PC2 призначається номер 1445.

Хоча PC1 і PC2 використовують однакову перетворену адресу, внутрішня глобальна адреса 209.165.200.225, і однаковий номер порту джерела — 1444, змінений номер порту для PC2 (1445) робить унікальним кожен запис в таблиці NAT. Це стає очевидним при відправці серверами зворотних пакетів клієнтам.

Процес передачі пакетів від серверів до комп’ютерів

4. Як показано на рис. 6, при типовому обміні «клієнт-сервер» сервери Svr1 і Svr2 відповідають на запити, отримані від комп’ютерів PC1 і PC2 відповідно. Сервери використовують для зворотного трафіку порт джерела з отриманого пакету в якості порту призначення і адреса джерела — в якості адреси призначення. Сервери поводяться так, як якби вони взаємодіяли з одним вузлом 209.165.200.225, проте це не так.

Рис. 6. Аналіз PAT від серверів до комп’ютерів

5. Отримавши пакети, маршрутизатор R2 знаходить унікальний запис в таблиці NAT, використовуючи адресу призначення і порт призначення кожного пакету. У разі отримання пакету від сервера Svr1 адресі призначення IPv4 209.165.200.225 відповідає декілька записів, але тільки одна з них містить порт призначення 1444. Використовуючи цей запис таблиці, маршрутизатор R2 змінює IPv4-адресу призначення пакету на 192.168.10.10. Зміну порту призначення в даному випадку не потрібно. Потім пакет пересилається комп’ютеру PC1.

6. Отримавши пакет від сервера Svr2, маршрутизатор R2 виконує аналогічне перетворення. Маршрутизатор знову знаходить адресу призначення IPv4 209.165.200.225 з декількома записами. Проте, використовуючи порт призначення 1445, R2 може унікально ідентифікувати запис перетворення. IPv4-адреса призначення міняється на 192.168.10.11. В цьому випадку порт призначення також необхідно змінити назад на первинне значення 1444, збережене в таблиці NAT. Потім пакет пересилається комп’ютеру PC2.

Перевірка PAT

Маршрутизатор R2 налаштований на надання PAT клієнтам з мережі 192.168.0.0/16. Коли внутрішні вузли виходять через маршрутизатор R2 в Інтернет, виконується перетворення їх адрес в IPv4-адресу з пулу PAT з унікальним номером порту джерела.

Для перевірки PAT використовуються ті ж команди, що і для перевірки статичного і динамічного NAT, як показано на рис. 7. Команда show ip nat translations виводить перетворення для трафіку від двох різних вузлів до різних веб-серверів. Зверніть увагу, що двом різним внутрішнім вузлам виділяється одна і та ж IPv4-адреса 209.165.200.226 (внутрішня глобальна адреса). Для розрізнення цих двох транзакцій в таблиці NAT використовуються номери портів джерел.

Рис. 7. Перевірка перетворення PAT

Як показано на рис. 8, команда show ip nat statistics дозволяє перевірити, що в пулі NAT – POOL2 виділена одна адреса для обох перетворень. Результат виконання команди містить інформацію про кількість і тип активних перетворень, параметри налаштування NAT, кількість адрес в пулі і кількість виділених адрес.

Рис. 8. Перевірка статистики PAT