Verificamos de forma exhaustivamente cada una de las noticias en nuestra página web con el objetivo de mostrarte en todo momento la información certera y actualizada.
Solución:
Estoy bastante seguro de que todo lo que proviene de la máquina local nunca pasa por el PREROUTING
tabla, como se ve en esta impresionante figura ASCII.
Por lo general, el criterio principal para SNAT es “tráfico que sale de una interfaz determinada” (es decir, -o eth0
). La interfaz por la que saldrá un paquete está determinada por el enrutamiento, por lo que para aplicar ese criterio debe ejecutarlo en un POSTROUTING
contexto.
DNAT reescribe la dirección de destino de un paquete, lo que significa que puede afectar a dónde va un paquete; por ejemplo, un paquete que parece estar destinado a la puerta de enlace podría terminar siendo reescrito para ir a una máquina en la red. Dado que desea que el enrutamiento pueda tener en cuenta ese destino reescrito cuando toma su decisión, de modo que el paquete realmente vaya a donde debe ir, DNAT debe ejecutarse en un PREROUTING
contexto.
Como sugieren los nombres de las cadenas, PREROUTING
se realiza al principio cuando se recibe un paquete y, por lo tanto, se enruta en función de hacia dónde se dirige (destino). Una vez aplicadas todas las demás reglas de enrutamiento, el POSTROUTING
la cadena determinará a dónde va en función de su procedencia (fuente).
Por ejemplo, en mi servidor, los puertos entrantes que se van a reenviar (NATed) están todos definidos en el PREROUTING
cadena como DNAT
y todos los paquetes que provienen de las interfaces NATed, pasan por el POSTROUTING
cadena como SNAT
y en consecuencia (en este caso), pasar por el filtro FORWARD
cadena.
Recuerda que puedes dar recomendación a esta reseña si lograste el éxito.