web-dev-qa-db-ja.com

/ procからインターフェースのIPV4アドレスを取得する方法

ネットワークインターフェイスのMACアドレスを取得する方法と同様に、/procからネットワークインターフェイスのIPアドレスを取得するためのクリーンでシンプルな方法はありますか?
理想的には、cat /proc/<foo>/{interface_name}と入力してIPv4アドレスを取得します。

cat以外は実行したくない。

27
razeh

/procディレクトリのIPv4アドレスは、転送情報ベーステーブルの/proc/net/fib_trieにもあります。

テーブルは単なるcatを実行するとかなりわかりやすく、最初にMain:、次にLocal:

cat /proc/net/fib_trie

または、ネットワーク、IPアドレス、ネットマスクを確認するには:

cat /proc/net/fib_trie | grep "|--"   | egrep -v "0.0.0.0| 127."
       |-- 193.136.1.0
       |-- 193.136.1.2
    |-- 193.136.1.255
       |-- 193.136.1.0
       |-- 193.136.1.2
    |-- 193.136.1.255       
28
Rui F Ribeiro
$ awk '/32 Host/ { print f } {f=$2}' <<< "$(</proc/net/fib_trie)"
1
God