Чтобы понять PAT, я установил следующую настройку, в которой у меня есть Маршрутизатор Linux который 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. Эта проблема решаема?