WSL2でip aした結果の調査(1: lo)

全体:WSL2でip aした結果の調査

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などコンピュータ内でローカルに立てられたサーバーへのアクセスもこのインターフェイス経由となる
  • インターフェイスフラグ
    • 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行目と同様