インターネットに接続されているプラ​​イマリインターフェイスのIPアドレスを表示するには?

インターネットに接続されているプラ​​イマリインターフェイスのIPアドレスを表示するには?

プライマリインターフェイスで構成された内部IPアドレスを出力するスクリプトを生成する必要があります。

ベストアンサー1

ここには素晴らしい答えがたくさんありますが、一般的なアプローチを追加したいと思いました。

最も簡単な解決策は、パブリックインターネットアドレスへのルートを取得することです。

$ ip route get 1.1.1.1 | grep -oP 'src \K\S+'
192.168.0.20

別の回避策は、デフォルトゲートウェイをインポートし、そのゲートウェイと通信するために使用されるIPアドレスを取得することです。

$ ip route get $(ip route show 0.0.0.0/0 | grep -oP 'via \K\S+') | grep -oP 'src \K\S+'
192.168.0.20

おすすめ記事