Linux SSH Routing – How to Route SSH to Host Through Interface

iplinuxnetworkingroutessh

Is it possible to route all outgoing requests for SSH (port 22) to mydynamicdns.afraid.org via wlan0 instead of eth0 when both are connected?

Since my IP is dynamic, I would like to use a name instead of IP.

Best Answer

Yes, you could mark all packets matches such policy, and control the route like this,

# Set mark for out going packets
iptables -t mangle -A OUTPUT -d mydynamicdns.afraid.org -j MARK --set-mark 1

# Route all packets with mark 1 through wlan0
ip rule add fwmark 1 table 1
ip route add XXX table 1 dev wlan0

P.S The rule would not work if DNS resolution fails

Related Question