ネットワークインターフェイスのマスクを取得する方法を知りたいです。使い方は簡単ですが、ツールifconfig
を使用する必要がありますが、私が望むものは表示されません。ip
ip addr show
以下は出力例ですip addr
。
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
また、対応するbrdフィールドは何ですか?
答え1
inはネットワークマスク
/8
です。127.0.0.1/8
brd
「放送」の略です。IPのオンラインマニュアルページ
ボーナスのヒント -ip -o addr show
出力ラインを取得するには、出力ラインからデータを抽出する方が少し簡単です。
答え2
CIDR表記法(/ 8など)のサブネットマスクは、サブネットマスクに使用されるビットを表します。
255.255.255.0の「古い」方式は、それぞれ8ビットの4バイトを表示します。ループバックアドレス127.0.0.1の典型的なサブネットマスクは255.0.0.0です。これは、1バイト(8ビット)がすべてサブネットマスクとして使用されることを意味します。 127.0.0.1/8は/ 8で書かれています。
一般的に使用される別のサブネットは 192.168.0.0 です。デフォルトのサブネットマスクは255.255.255.0です。ご覧のとおり、サブネットマスクは3バイトを使用し、各バイトは8ビットで構成されています。この3バイト×8ビットは24です。これらのネットワークは192.168.0.0/24で書かれています。 192.168.0.1/24などのアドレスが表示されている場合は、サブネットマスクが24ビットを使用していることがわかります。