Řešení 1:
Použijte ip route
pro tohle. Například:
ip route show to match 198.252.206.16
Řešení 2:
Kratší možnost:
ip route get 172.29.42.94
Řešení 3:
Ano, jak navrhuje Michael Hampton, použijte ip route
. Pokud chcete pouze rozhraní, použijte toto
ip -o route get $ip | perl -nle 'if ( /dev\s+(\S+)/ ) {print $1}'
Například:
# ip=8.8.8.8
# iface=$( ip -o route get $ip | perl -nle 'if ( /dev\s+(\S+)/ ) {print $1}' )
# echo $iface
eth1