Duplicación de puertos a otro puerto de host local

Duplicación de puertos a otro puerto de host local

Tengo una aplicación ejecutándose en el puerto Y (UDP). ¿Es posible crear un espejo sin tocar la aplicación A para recibir el mensaje en la aplicación a y adicionalmente en la aplicación B (mismo host) en un puerto Y diferente?

lo intenté con

socat udp-listen:x,reuseaddr,fork udp:localhost:y

Desafortunadamente, socatinicia un oyente en el puerto X y la aplicación a no recibe el mensaje.

También leí alguna solución con iptablesmangle, que parece que iptablesya no es compatible con mi versión.

Debe ejecutarse en 2 plataformas diferentes:

  • Ubuntu 20.04 con iptables v1.8.4 (heredado)
  • SLES12SP5 con v1.4.21

No puedo usar una segunda dirección IP en la subred de mi eth0interfaz.

Respuesta1

Ah, puedes hacer estocon IPtables...

De ese sitio:

iptables -t mangle -A PREROUTING -p UDP --dport 162 -j TEE --gateway 127.0.0.2
iptables -t nat -A PREROUTING -d 127.0.0.2 -p UDP --dport 162 -j DNAT  --to 127.0.0.1:1162

Lea más sobre esto en el sitio que vinculé.

información relacionada