ネットワークインターフェイスのMACアドレスを取得する方法と同様に、/proc
からネットワークインターフェイスのIPアドレスを取得するためのクリーンでシンプルな方法はありますか?
理想的には、cat /proc/<foo>/{interface_name}
と入力してIPv4アドレスを取得します。
cat
以外は実行したくない。
/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
$ awk '/32 Host/ { print f } {f=$2}' <<< "$(</proc/net/fib_trie)"