WSL2でip aした結果の調査(1: lo)
1: loの部分の出力結果
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
各項目詳細
1行目
- インターフェイス名
- loはLoopbackの略。
- コンピュータが自分自身と通信するために使われる仮想インターフェイス
- 主にトラブルシューティング用途。
- localhostなどコンピュータ内でローカルに立てられたサーバーへのアクセスもこのインターフェイス経由となる
- loはLoopbackの略。
- インターフェイスフラグ
- LOOPBACK:ループバック状態
- UP:ネットワークインターフェイスが有効状態
- LOWER_UP:デバイスにケーブルが接続されている状態
- そのあと
- mtu 65536:一回の転送で最大65536 Bytesまで送れる。
- qdisc noqueue:クラス、スケジューラーを持たないキューイング規則が設定されている(キューを使わない)。仮想インターフェイスはデフォルトでこのnoqueueの設定になる。Loopbackの場合は、通信が不可能なことを基本的に想定しなくて良いため、パケットをキューに入れる必要がない(ということだと思う)。
参考:http://linux-tc-notes.sourceforge.net/tc/doc/sch_noqueue.txt - state UNKNOWN:動作状態は不明。Loopbackのデバイスドライバーは動作状態をサポートしていないらしい。ソースコードは未確認。
参考:https://unix.stackexchange.com/questions/180256/state-of-network-loopback - group default:defaultのインターフェイスグループに属する。
- qlen 1000:キューイング時、一度に1000パケット入力する、というデフォルト値が設定されているが、上記のようにそもそもキューは使わないという設定なので意味がないと思われる。
2行目
- MACアドレス、および
brd
の後のブロードキャストMACアドレスはどちらも発行されていない - loopbackインターフェイスは、データリンク層で他のデバイスと接続されることはないため、MACアドレスを発行する必要がない
3, 4行目
3行目
- IPv4のアドレスは
127.0.0.1
で、上位8ビットがネットワークアドレス(ループバックアドレス) scope host
となっているので、このアドレスはホストPC上で有効となる(他のPCが127.0.0.1
にアクセスしてもこのPCにはたどり着かない)scope host
の後のlo
はインターフェイス名で、一つのインターフェイスに複数のIPアドレスを割り当てることができるIPエイリアスにLinuxが対応していた時の名残らしい
(現在はIPエイリアスなしで一つのインターフェイスに複数のIPアドレスを割り当てることができるため、IPエイリアスがほぼ不要だが、下位互換性のために残されているとか)
参考:https://unix.stackexchange.com/questions/685922/the-inet-inet6-line-of-ip-a-output
4行目
valid_lft
はvalid lifetimeの略で、IPアドレスの有効期間を示す。このインターフェイスにはforever
が設定されているので有効期間は無限。preferred_lft
はpreferred lifetimeの略で、ソースのIPアドレスの有効期間を示す(IPv6のみ)。このインターフェイスにはforever
が設定されているので有効期間は無限。
5,6行目
5行目
- IPv6のアドレスが::1で、128がネットワークアドレス(ループバックアドレス)
scope host
となっているので、このアドレスはホストPC上で有効となる(他のPCが127.0.0.1
にアクセスしてもこのPCにはたどり着かない)
6行目
- 4行目と同様
ディスカッション
コメント一覧
まだ、コメントがありません