Rota programa específico para NIC específica

0

Eu tenho duas conexões de internet, Uma conexão de internet tem latência muito alta, tem flutuação na conexão (há uma árvore entre torre e Wifi CPE, então o sinal sobe e desce) mas é bom para baixar como conexão nunca vai para o 0. Outra é a conexão de telefone fixo, eles têm um strong limite de download.

Então, o que eu quero é usar wlan0 para alguns programas específicos como, steam & amp; download etc. basicamente programa que consome muitos dados.

E eu quero usar o wlan1 para navegar & amp; outras coisas, menos dados.

Resumindo, quero rotear programas específicos através de NIC específica, não tenho um intervalo específico de IPs.

Eu posso conectar os dois através de wifi como eu tenho um adaptador wi-fi extra (wlan0, wlan1), como outra opção eu posso conectar um com ethernet (wlan0, eth0)

    
por Madhurendra Sachan 02.01.2015 / 02:42

2 respostas

1

Pode ser possível que o seu processo tenha algo a que iptables possa ser comparado, como um grupo específico. Por exemplo, dado um grupo to-wifi , você poderia ter regras iptables assim:

iptables -A FORWARD --in-interface wlan0 -j ACCEPT
iptables -t nat -A OUTPUT -m owner --gid-owner to-wifi --out-interface wlan0 -j MASQUERADE  

(e com o encaminhamento ativado: sysctl -w net.ipv4.conf.all.forwarding=1 .)

Então, se você correr, por exemplo, o Steam assim:

sg to-wifi steam

Qualquer tráfego desse processo do Steam (+ qualquer processo filho) será encaminhado a partir da interface pela qual ele está indo até a interface sem fio.

Eu nunca tentei redirecionamento de interface para interface, mas usei iptables para redirecionar todo o tráfego TCP do Steam para um proxy, fazendo a correspondência com grupos, então essas regras podem não ser suficientes por si só.

Isso pode ser feito criando grupos para cada interface e adicionando-se a eles. Por exemplo, usando os comandos addgroup e adduser :

sudo addgroup to-wifi
sudo adduser $USER to-wifi
sudo addgroup for-eth0
sudo adduser $USER for-eth0

Você precisa fazer o login novamente para que as novas associações do grupo entrem em vigor.

Relacionados:

por muru 02.01.2015 / 03:32
0

Tanto quanto sei, não há como fazer isso.

Isso pode ser feito com as regras do iptables nos destinos específicos de ports + que eles usam para fazer suas conexões, mas não estou ciente de uma maneira local de fazê-lo.

    
por K. Darien Freeheart 02.01.2015 / 03:11