ループバックアドレスとは
ループバックアドレスは、送ったIPパケットをネットワークへ出さず、同じ端末の内部へ戻すために予約されたIPアドレスです。英語ではloopback address(ループバック・アドレス)と呼びます。
ループバックアドレスは、送ったIPパケットをネットワークへ出さず、同じ端末の内部へ戻すために予約されたIPアドレスです。
通信はLANケーブル、Wi-Fi、ルーターへ進みません。送信元と宛先が同じ端末の中にあるため、アプリ同士の通信や、その端末で動くサービスの確認に使えます。

IPv4とIPv6では、予約された値が違う
- IPv4
- IPv4では
127.0.0.0/8の範囲全体がループバック用です。最もよく使われる値は127.0.0.1ですが、それだけがループバックというわけではありません。 - IPv6
- IPv6では一つのアドレス
::1/128がループバックです。短く::1と表記します。
これらのアドレスを宛先にしたパケットは、外部のネットワークへ送ってはいけません。別のパソコンから127.0.0.1へ接続しても、相手のパソコンではなく、接続を試した自分自身を指します。
localhostは名前、ループバックはアドレス
localhostは、この端末自身を表すために特別扱いされるホスト名です。名前解決によって、IPv4の127.0.0.1やIPv6の::1が返されます。環境やアプリによって、どちらを先に使うかは異なります。
したがって、localhostと127.0.0.1は同じ文字列ではありません。前者は名前、後者はIPv4アドレスです。名前解決を含めて試したいのか、IPv4だけを指定したいのかで使い分けます。
成功した場所までしか確認できない
- 1アプリ
接続要求を作る
- 2OSのIP処理
端末内部で戻す
- 3LAN・Wi-Fi
ループバックでは通らない
- 4ルーター・外部
別の検査が必要
サービスをどこから受け付けるかにも関係する
サーバー機能をループバックアドレスだけで待ち受けると、同じ端末のアプリからは接続できますが、LAN上の別端末からは接続できません。開発中の管理画面やデータベースなどを、端末外へ不用意に公開しないために使われます。
一方、実際のネットワークアダプターに付いたアドレスで待ち受ければ、設定とファイアウォールの範囲内で他の端末からも到達できます。「サービスが動いているか」と「他の端末から届くか」は別の検査です。
仕様の確認資料:RFC 1122「Requirements for Internet Hosts」、RFC 4291「IPv6 Addressing Architecture」、RFC 6761「Special-Use Domain Names」