¿En qué se diferencia un proxy HTTP de un cuadro NAT?

2

Un host en una LAN con IP (10.0.0.1 puerto TCP 8888) se conecta a un servidor sin saber que hay una caja NAT en el borde de la red. El cuadro NAT es tonto y solo traduce el puerto 8888 a otro puerto 5555 y cambia la IP a la dirección IP pública (digamos 205.209.96.96) y guarda en un diccionario la clave, el par de valores: (5555,10.0.0.1: 8888) .

Cuando recibe una respuesta, realiza la traducción inversa y reenvía el paquete al host. ¿Cómo es la operación de un proxy HTTP diferente de esto? Entiendo que el proxy puede hacer otras cosas como el filtrado, el almacenamiento en caché, etc., pero ¿en qué se diferencia la operación básica del proxy de una caja NAT?

Bruce
fuente

Respuestas:

2

El proxy HTTP no funcionará para nada excepto HTTP.

No funcionará para conexiones OpenVPN, no funcionará para tráfico P2P, juegos 3D multijugador, etc.

NAT es bueno para todo tipo de tráfico TCP. Muchos de ellos también manejan UDP e ICMP (de forma limitada, ya que ICMP no tiene puertos).

Mikhail Kupchik
fuente
2

NAT funciona en un nivel de protocolo más bajo: solo reescribe la dirección IP y el puerto; de lo contrario, no interrumpe la conexión TCP (y, por lo tanto, es principalmente transparente para los protocolos de nivel superior).

Un proxy HTTP hace algo bastante diferente: primero, la conexión TCP termina allí y abre una conexión completamente diferente al host de destino. En segundo lugar, realiza su propio procesamiento y transformaciones en las solicitudes y respuestas HTTP.

Piskvor
fuente
¿Dónde puedo leer más sobre el funcionamiento interno de un proxy HTTP?
Bruce
1

Son similares en muchos aspectos, ambos son Gateways. Un proxy HTTP opera en el nivel de una solicitud HTTP. Un enrutador que realiza NAT funciona en el nivel de conexión TCP / IP. Muchos enrutadores de red también realizan ambas funciones.


fuente
"Ambos son Gateways", y la similitud termina allí mismo.
Piskvor el
No veo por qué el downvote de todos modos ...
m0skit0