Tenemos una dirección IP en Internet global: "A"
Solo tenemos acceso a "A".
Tenemos una red detrás de un enrutador que hace NAT: 192.168.1.0/24
Hay un cliente detrás de ese NAT: "B"
No tenemos acceso a "B" ni al enrutador "NAT".
Objetivo : llega a la "B" directamente con "A".
No podemos usar el reenvío de puertos o UPnP, etc.
Pregunta: ¿Cuál es el truco para llegar a "B"? Un truco que podría evitarse si el enrutador tuviera un firewall con estado, ¡no solo NAT!
Estamos pensando que cuando "B" navegue por la web, saldrá a Internet. Cuando está recibiendo respuestas, el enrutador que hace el NAT debe decidir qué IP con NAT tenía "B". (Podría haber más máquinas detrás de la red NATed). Para esto, el enrutador NAT usa la información del puerto también. ¿Quizás si nosotros / ellos estamos usando UDP, podemos probar todos los puertos no privilegiados con la IP "A" para enviar un paquete a "B"?
El enrutador NAT es simplemente un enrutador Soho. (Problema original: intentar probar que NAT no es un firewall, pero necesitamos una evidencia)