O roteamento regular funciona apenas em termos de endereços IP e não se preocupa com quais dados (incluindo TCP ou UDP) são transferidos.
Pelo menos no Linux, você pode usar o roteamento de políticas para isso:
-
Adicione uma regra de firewall para marcar determinados pacotes:
iptables -t mangle -A PREROUTING -p tcp --dport 22 -j MARK --set-mark 1
-
Crie uma nova tabela de roteamento com o gateway desejado:
ip route add default via 192.168.0.1 dev wlan0 table 42
-
Adicione uma regra de política para usar a nova tabela de roteamento para pacotes marcados:
ip rule add fwmark 1 table 42
No Windows, você precisará de uma abordagem diferente, por exemplo, dizendo ao programa para usar uma interface específica. Alguns programas têm a opção "vincular endereço", como% s -b
:
ssh -b 192.168.0.42 root@myserver
(Eu não sei o quão bem funciona com várias interfaces , no entanto, tenho a sensação de que não.)
Por fim, você pode adicionar uma rota de host (via Wi-Fi) a um servidor específico.
Isso pode ser estendido para permitir o tunelamento SSH através desse servidor para todas as suas outras conexões.