Tengo dos interfaces: eth0 y wlan0 en una computadora portátil.
Posibles casos de uso:
- eth0 me otorga acceso a Internet, y wlan0 está actualmente conectado a un enrutador que no tiene conectividad a Internet. Para fines de desarrollo, necesito conectarme al wlan0 por defecto, pero usar eth0 para navegar
- eth0 y wlan0 están conectados a Internet. Para una aplicación de torrents, eth0 debe usarse para la velocidad, pero para la portabilidad del portátil, SSH debe tener una conexión sobre wlan0
- eth0 es una conexión por cable, wlan0 es inalámbrica. Los datos sensibles deben transferirse a través de eth0, pero otro tráfico también puede pasar por wlan0.
¿Hay alguna forma de obligar a las aplicaciones (como nc.traditional
o firefox
) a usar una determinada interfaz de red? Un contenedor como también example-wrapper eth0 program
está bien si existe dicho programa. Sería bueno si pudiera configurarse dentro de Firefox (en tiempo de ejecución). Me gustaría evitar las soluciones de IPTables si es posible.
networking
firefox
Lekensteyn
fuente
fuente
Respuestas:
Lo que está buscando es una cuña LS_PRELOAD, consulte la entrada del blog de Daniel Lange para obtener una explicación detallada y un código de ejemplo.
fuente
Puede utilizar un enfoque más complejo de marcado de conexiones y política de ruta.
Funcionará bien si tiene un usuario que ejecuta un software y una antera.
De esta manera, puede marcar las conexiones de un usuario y usar una tabla de enrutamiento específica para él, mientras que todos los demás usarán la predeterminada.
El documento básico para entenderlo todo está en: http://www.lartc.org/lartc.html.
También puede ver un ejemplo de dos conexiones aquí: /unix/58635/iptables- set-mark-route-diferent-ports-through-different-interfaces
Puede usar el módulo iptables "propietario" que marcará las conexiones para permitir la política de enrutamiento.
fuente
LD_PRELOAD
parece el camino a seguir (no para programas maliciosos / por razones de seguridad), ¿tal vez alguien podría elaborar la publicación de Bob Lebins?Aquí hay una solución de muestra. Utiliza el servidor SOCKS, configurado en la máquina actual para enrutar las conexiones. Cada aplicación debe configurarse para usar cada servidor.
fuente
También puede usar una máquina de estación de trabajo VMware para compartir diferentes interfaces de red que hago mucho para descargar desde una interfaz y dejar la otra para mi Netflix.
Es necesario configurar ethX y wlanX en VMware, pero una vez que lo haya configurado, estará listo para descargar o navegar.
Es muy suave También puede usar un firewall para unir interfaces que también funciona muy bien.
fuente