Una vez más estamos ante un claro ejemplo de la flexiblidad que nos ofrece GNU/Linux. <ejemplo_hipotético> Seguro que alguna vez, habeis querido poner el emule (por ejemplo) por la DSL del vecino (via wireless) mientras el resto de aplicaciones salen por vuestra línea. De esta manera teneis P2P sin saturar vuestra conexión, y luego no viene el hermano a deciros: "¡Internet no va! </ejemplo_hipotético>. Dejando de lado los casos hipoteticos, el siguiente artículo nos explica como asociar un identificador de usuario (UID) a una conexión de internet. De esta manera todas las aplicaciones ejecutadas por el usuario con ese UID saldran por dicha conexión. Algo que puede ser realmente útil. Tenemos dos conexiones a internet, una por eth0 y otra por eth1. Queremos que todo el mundo use la eth0 excepto el usuario con UID 1000 que usará la eth1 para salir a internet
ubuntu/debian: apt-get install iptables iproute
cat /etc/iproute2/rt_tables
ip rule add fwmark 1 table conexion1
ip route add default via 10.0.0.1 dev eth0 table conexion1
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source=192.168.1.254
iptables -t mangle -A OUTPUT -m owner --uid-owner 1000 -j MARK --set-mark 2
iptables -t mangle -A OUTPUT -p tcp -m multiport --ports ! 8080,5902 -m owner --uid-owner 1000 -j MARK --set-mark 2
links2 whatismyip.org Gracias a Carlos por la aportación;-) |
|||
