Discussion:
Ruteo por aplicación a través de interfaces con IPs dinámicas
Martin R. Garcia
2011-04-14 23:03:24 UTC
Permalink
Hola gente:

Me gustaría 'escuchar' sugerencias para la resolución del siguiente problema.

Resulta que en un determinado momento tuve que sacar el tráfico que generaba una aplicación en particular por un tunel con IP dinámica. Lo resolví corriendo la aplicación en nombre de un usuario en particular y SNATeando a la IP dinámica matcheando con -m owner.

Ahora necesito hacer lo mismo con otra aplicación. Duplicar lo anterior se complica porque las reglas de iptables las estoy metiendo cuando se conecta el tunel, pero no se como separar facilmente las acciones para cada tunel (ppp0 y ppp1 pueden estar desconectados, correr de a uno, o ambos al mismo tiempo, y por supuesto se caen eventualmente).

De hecho se puede resolver de esta manera, complicando las cosas en el script que corre una vez que el tunel está conectado.

Alguna otra alternativa?

Gracias y saludos,
Martin.
Alfredo Daniel Rezinovsky
2011-04-14 23:16:53 UTC
Permalink
Post by Martin R. Garcia
Me gustaría 'escuchar' sugerencias para la resolución del siguiente problema.
Resulta que en un determinado momento tuve que sacar el tráfico que generaba una aplicación en particular por un tunel con IP dinámica. Lo resolví corriendo la aplicación en nombre de un usuario en particular y SNATeando a la IP dinámica matcheando con -m owner.
Ahora necesito hacer lo mismo con otra aplicación. Duplicar lo anterior se complica porque las reglas de iptables las estoy metiendo cuando se conecta el tunel, pero no se como separar facilmente las acciones para cada tunel (ppp0 y ppp1 pueden estar desconectados, correr de a uno, o ambos al mismo tiempo, y por supuesto se caen eventualmente).
De hecho se puede resolver de esta manera, complicando las cosas en el script que corre una vez que el tunel está conectado.
Alguna otra alternativa?
Gracias y saludos,
Martin.
No entendí el problema
Martin R. Garcia
2011-04-14 23:36:58 UTC
Permalink
Post by Martin R. Garcia
Post by Martin R. Garcia
Me gustaría 'escuchar' sugerencias para la
resolución del siguiente problema.
Post by Martin R. Garcia
Resulta que en un determinado momento tuve que sacar
el tráfico que generaba una aplicación en particular por
un tunel con IP dinámica. Lo resolví corriendo la
aplicación en nombre de un usuario en particular y
SNATeando a la IP dinámica matcheando con -m owner.
Post by Martin R. Garcia
Ahora necesito hacer lo mismo con otra aplicación.
Duplicar lo anterior se complica porque las reglas de
iptables las estoy metiendo cuando se conecta el tunel, pero
no se como separar facilmente las acciones para cada tunel
(ppp0 y ppp1 pueden estar desconectados, correr de a uno, o
ambos al mismo tiempo, y por supuesto se caen
eventualmente).
Post by Martin R. Garcia
De hecho se puede resolver de esta manera, complicando
las cosas en el script que corre una vez que el tunel está
conectado.
Post by Martin R. Garcia
Alguna otra alternativa?
Gracias y saludos,
Martin.
No entendí el problema
A ver si puedo clarificarlo:

- La Aplicación X tiene que salir por ppp0.
- La Aplicación Y tiene que salir por ppp1.
- Todo el resto por eth0.
- X e Y no saben las IPs de ppp0 y ppp1.
Alfredo Daniel Rezinovsky
2011-04-15 00:50:05 UTC
Permalink
Post by Martin R. Garcia
Post by Martin R. Garcia
Post by Martin R. Garcia
Me gustaría 'escuchar' sugerencias para la
resolución del siguiente problema.
Post by Martin R. Garcia
Resulta que en un determinado momento tuve que sacar
el tráfico que generaba una aplicación en particular por
un tunel con IP dinámica. Lo resolví corriendo la
aplicación en nombre de un usuario en particular y
SNATeando a la IP dinámica matcheando con -m owner.
Post by Martin R. Garcia
Ahora necesito hacer lo mismo con otra aplicación.
Duplicar lo anterior se complica porque las reglas de
iptables las estoy metiendo cuando se conecta el tunel, pero
no se como separar facilmente las acciones para cada tunel
(ppp0 y ppp1 pueden estar desconectados, correr de a uno, o
ambos al mismo tiempo, y por supuesto se caen
eventualmente).
Post by Martin R. Garcia
De hecho se puede resolver de esta manera, complicando
las cosas en el script que corre una vez que el tunel está
conectado.
Post by Martin R. Garcia
Alguna otra alternativa?
Gracias y saludos,
Martin.
No entendí el problema
- La Aplicación X tiene que salir por ppp0.
- La Aplicación Y tiene que salir por ppp1.
- Todo el resto por eth0.
- X e Y no saben las IPs de ppp0 y ppp1.
podrias ponerlos en los scripts de if-up a los ppps los podes forzar
(dentro de peers) para que cada uno levante siempre con el mismo numero
sin importan en que orden levanten.

Loading...