現在のインターネット ネットワーク インターフェイスを見つけるにはどうすればよいでしょうか?

現在のインターネット ネットワーク インターフェイスを見つけるにはどうすればよいでしょうか?

インターネットに接続されているネットワーク インターフェイスを見つけるにはどうすればよいですか?

このマシンは通常、 経由で接続できます{eth0,eth1,usb0,wlan0}。私が考えられる最善の方法は次のとおりです。

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

アップデート私の推奨する解決策は次のとおりです。

 $(for i in `ip r`; do echo $i; done | grep -A 1 dev | tail -n1)

答え1

古くて動作が悪いルートの代わりに iproute2 を使用する方が良いと思います。

ip r | sed -n '/^de/s/.*dev //p'

答え2

route -n | awk '$1 ~ /0.0.0.0/ {print $NF}'おそらくインターネットにアクセスするために経由するインターフェースであるデフォルト ゲートウェイとのインターフェースが提供されます。

関連情報