Что такое PAT?
В попытке понять PAT, я настроил следующую настройку, где у меня есть Linux Router, который masquerades
из внутреннего интерфейса на внешний. Таким образом, оба клиента могут общаться с внешним сервером с IP-трансляцией, происходящей на компьютере с Linux-маршрутизатором.
+---------------+
| client 1 |
| src port 4567 |--+
+---------------+ | +--------+ +--------------+
+-| Linux |-----| Server listen|
+-| Router | | on port 9584 |
+---------------+ | +--------+ +--------------+
| client 2 | |
| src port 4567 |--+
+---------------+
Я сделал простой эхо-вызов, используя nc
от клиента 1 и клиента 2 к серверу ПК и заметил, что порт источника пакета был на самом деле 4567
, Когда я побежал nc
с тем же src
номер порта от обоих клиентов, одно соединение приводит к разрыву другого! (Клиенты разные компьютеры между прочим) поэтому у меня было предположение, что iproute
также скрывает номер порта и выполняет некоторые преобразования, такие как сопоставление IP-адресов. Исправлена ли эта проблема?