Como você encontra a interface atual da rede de internet?

1

Como encontro a interface de rede que está conectada à Internet?

Essa máquina normalmente pode ser conectada via {eth0,eth1,usb0,wlan0} . O melhor que consegui pensar é:

sudo route | grep default | awk '{print $NF}'

Atualização : minha solução favorita é:

 $(for i in 'ip r'; do echo $i; done | grep -A 1 dev | tail -n1)
    
por hendry 26.11.2011 / 12:35

2 respostas

2

eu acho que será melhor usar o iproute2 em vez de rotas antigas e mal-funcionais.

ip r | sed -n '/^de/s/.*dev //p'
    
por 26.11.2011 / 14:09
1

route -n | awk '$1 ~ /0.0.0.0/ {print $NF}' lhe dará uma interface com o gateway padrão, que é provavelmente a interface através da qual você está acessando a Internet.

    
por 26.11.2011 / 13:13