Процесс преобразования NAT с перегрузкой является одинаковым как при использовании пула адресов, так и при использовании одного адреса. Продолжим предыдущий пример PAT с использованием одного публичного IPv4-адреса. Компьютеру ПК1 требуется подключение к веб-серверу Сервер 1. Одновременно другому клиенту, ПК 2, нужно установить аналогичный сеанс с веб-сервером Сервер 2. И для ПК 1, и для ПК 2 настроены частные IPv4-адреса, а на маршрутизаторе R2 включено преобразование PAT.
Процесс передачи пакетов от компьютеров к серверам
1. На рис. 1 показаны компьютеры ПК 1 и ПК 2, отправляющие пакеты серверам Сервер 1 и Сервер 2 соответственно. ПК 1 использует IPv4-адрес 192.168.10.10 и порт TCP источника 1444. ПК 2 использует IPv4-адрес 192.168.10.11 источника и, по случайному совпадению, тот же порт TCP источника — 1444.
2. Пакет компьютера ПК 1 первым достигает маршрутизатора R2. Используя PAT, R2 изменяет IPv4-адрес источника на 209.165.200.225 (внутренний глобальный адрес). В таблице NAT отсутствуют другие устройства, использующие порт 1444, поэтому PAT сохраняет этот же номер порта. Затем пакет пересылается серверу Сервер 1 по адресу 209.165.201.1.
3. Далее на маршрутизатор R2 приходит пакет с ПК 2. Настройка PAT обеспечивает использование для всех преобразований одного внутреннего глобального IPv4-адреса — 209.165.200.225. Аналогично процессу преобразования для ПК 1, PAT изменяет IPv4-адрес источника ПК 2 на внутренний глобальный адрес 209.165.200.225. Однако в этом пакете ПК 2 используется номер порта источника, уже содержащийся в текущей записи PAT, обеспечивающей преобразование для ПК 1. PAT увеличивает номер порта источника, пока его значение не окажется уникальным для данной таблицы. В данном случае записи порта источника в таблице NAT и пакету от ПК 2 назначается номер 1445.
Хотя ПК 1 и ПК 2 используют одинаковый преобразованный адрес - внутренний глобальный адрес 209.165.200.225, и одинаковый номер порта источника — 1444, изменённый номер порта для ПК 2 (1445) делает уникальной каждую запись в таблице NAT. Это становится очевидным при отправке серверами ответных пакетов клиентам.
Процесс передачи пакетов от серверов к компьютерам
4. Как показано на рис. 2, при типовом обмене «клиент-сервер» серверы Сервер 1 и Сервер 2 отвечают на запросы, полученные от компьютеров ПК 1 и ПК 2 соответственно. Серверы используют для обратного трафика порт источника из полученного пакета в качестве порта назначения и адрес источника — в качестве адреса назначения. Серверы ведут себя так, как если бы они взаимодействовали с одним узлом 209.165.200.225, однако это не так.
5. Получив пакеты, маршрутизатор R2 находит уникальную запись в таблице NAT, используя адрес назначения и порт назначения каждого пакета. В случае получения пакета от сервера Сервер 1 адресу назначения IPv4 209.165.200.225 соответствует несколько записей, но только одна из них содержит порт назначения 1444. Используя эту запись таблицы, маршрутизатор R2 изменяет IPv4-адрес назначения пакета на 192.168.10.10. Изменение порта назначения в данном случае не требуется. Затем пакет пересылается компьютеру ПК 1.
6. Получив пакет от сервера Сервер 2, маршрутизатор R2 выполняет аналогичное преобразование. Маршрутизатор снова находит адрес назначения IPv4 209.165.200.225 с несколькими записями. Однако, используя порт назначения 1445, R2 может уникально идентифицировать запись преобразования. IPv4-адрес назначения меняется на 192.168.10.11. В этом случае порт назначения также необходимо изменить обратно на первоначальное значение 1444, сохранённое в таблице NAT. Затем пакет пересылается компьютеру ПК 2.