Чим HTTP-проксі відрізняється від NAT-вікна?


2

Хост в локальній мережі з IP (10.0.0.1 TCP-порт 8888) підключається до сервера, не знаючи, що на краю мережі є поле NAT. Поле NAT німе і просто переводить порт 8888 на інший порт 5555 і змінює IP-адресу на загальнодоступну IP-адресу (скажімо, 205.209.96.96) і зберігає в словнику ключ, пару значень: (5555,10.0.0.1: 8888) .

Коли він отримує відповідь, він робить зворотний переклад і пересилає пакет назад хосту. Чим функція HTTP-проксі відрізняється від цієї? Я розумію, що проксі може виконувати інші речі, такі як фільтрування, кешування тощо, але чим основна операція проксі відрізняється від NAT-поля?

Відповіді:


2

HTTP-проксі не працюватиме ні для чого, крім HTTP.

Він не працюватиме для підключень OpenVPN, не працюватиме для P2P-трафіку, багатокористувацьких 3D-ігор тощо.

NAT хороший для всіх видів трафіку TCP. Багато з них також обробляють UDP та ICMP (обмежено, оскільки ICMP не має портів).


2

NAT працює на нижчому рівні протоколу - він лише переписує IP-адресу та порт; в іншому випадку це не порушує TCP-з'єднання (і, таким чином, воно здебільшого прозоре для протоколів вищого рівня).

HTTP-проксі робить щось зовсім інше: по-перше, з'єднання TCP там припиняється, і він відкриває зовсім інше з'єднання з цільовим хостом. По-друге, вона робить власну обробку та перетворення на HTTP-запити та відповіді.


Де я можу прочитати докладніше про внутрішню роботу проксі HTTP?
Брюс

1

Вони багато в чому схожі, вони обидва шлюзи. Проксі-сервер HTTP працює на рівні HTTP-запиту. Маршрутизатор, що виконує NAT, працює на рівні з'єднання TCP / IP. Багато мережевих маршрутизаторів також виконують обидві функції.


"вони обидва шлюзи" - і подібність закінчується саме там.
Пісквор

Я не бачу, чому все-таки протиріччя ...
m0skit0
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.