技術ノート 特徴 127.0.0.1 と 0.0.0.0 の違いは何ですか?

127.0.0.1 と 0.0.0.0 の違いは何ですか?

127.0.0.1 と 0.0.0.0 の違いは何ですか?

私たちのほとんどは、「127.0.0.1 と 0.0.0.0」について聞いたことはあっても、あまり考えたことがないでしょう。しかし、両方が実際に同じ場所を指しているように見える場合、この 2 つの実際の違いは何でしょうか?今日のスーパーユーザー Q&A の投稿は、混乱した読者のために問題を解決するのに役立ちます。

127.0.0.1 と 0.0.0.0 の違いは何ですか?

今日の質疑応答セッションは、コミュニティ主導の Q&A Web サイトのグループである Stack Exchange の下位部門である SuperUser のご好意で提供されました。

127.0.0.1 と 0.0.0.0 の違いは何ですか?

写真提供: Kate Gardiner (Flickr)

質問

127.0.0.1 と 0.0.0.0 の違いは何ですか?

スーパーユーザーの読者 Sagnik Sarkar は、127.0.0.1 と 0.0.0.0 の違いを知りたいと考えています。

127.0.0.1 と 0.0.0.0 の違いは何ですか?

127.0.0.1 は localhost を指しており、0.0.0.0 も同様に指すことを理解しています (間違っている場合は修正してください)。では、127.0.0.1 と 0.0.0.0 の違いは何でしょうか?

127.0.0.1 と 0.0.0.0 の違いは何ですか?

127.0.0.1 と 0.0.0.0 の違いは何ですか?

答え

SuperUser の寄稿者 DavidPostill が次のように答えてくれました。

127.0.0.1 と 0.0.0.0 の違いは何ですか?

  • 127.0.0.1 はループバック アドレス (ローカルホストとも呼ばれます) です。
  • 0.0.0.0 は、無効、不明、または適用不可能なターゲット (「特定のアドレスなし」プレースホルダー) を指定するために使用されるルーティング不可能なメタアドレスです。

ルート エントリのコンテキストでは、通常、デフォルト ルートを意味します。

サーバーのコンテキストでは、0.0.0.0 はローカル マシン上のすべての IPv4 アドレスを意味します。ホストに 2 つの IP アドレス (192.168.1.1 と 10.1.2.1) があり、ホスト上で実行されているサーバーが 0.0.0.0 でリッスンしている場合、そのサーバーはそれらの両方の IP で到達可能になります。

IP アドレス 127.0.0.1 とは何ですか?

127.0.0.1 は、ローカルホストとも呼ばれるループバック インターネット プロトコル (IP) アドレスです。このアドレスは、エンドユーザーが使用しているのと同じマシンまたはコンピュータへの IP 接続を確立するために使用されます。

IPv6 アドレス指定をサポートするコンピュータに対しても、::1 の意味合いを使用して同じ規則が定義されます。アドレス 127.0.0.1 を使用して接続を確立するのが最も一般的な方法です。ただし、127…* の範囲内の任意の IP アドレスを使用しても、同じか同様の方法で機能します。ループバック構造は、ネットワーク接続可能なコンピュータまたはデバイスに、マシン上の IP スタックを検証または確立する機能を提供します。

出典: 127.0.0.1 — その用途と重要性は何ですか?

特別なアドレス

クラス A ネットワーク番号 127 にはループバック機能が割り当てられます。つまり、上位レベルのプロトコルによってネットワーク 127 アドレスに送信されたデータグラムは、ホスト内でループバックする必要があります。ネットワーク 127 アドレスに送信されたデータグラムは、ネットワーク上のどこにでも表示されるべきではありません。

出典: ネットワーク番号

クラス A 全体の場合、最後の 3 オクテットのその他の任意の値には何の意味があるのでしょうか?

ループバック範囲の目的は、ホスト上の TCP/IP プロトコル実装をテストすることです。下位層は短絡されているため、ループバック アドレスに送信すると、下位層で問題が顕在化する可能性がなく、上位層 (IP 以降) を効果的にテストできます。 127.0.0.1 は、テスト目的で最もよく使用されるアドレスです。

ソース: 予約済み IP、ループバック、プライベート アドレス

詳細については、Ask Ubuntu の質問「 ループバック デバイスとは何ですか? 使用方法は?」 を参照してください。

IPアドレス0.0.0.0とは何ですか?

0.0.0.0 は有効なアドレス構文です。したがって、従来のドット付き 10 進表記の IP アドレスが予期される場合はどこでも有効なものとして解析されるはずです。解析され、実行可能な数値形式に変換されると、その値によって次に何が起こるかが決まります。

すべてゼロの値には特別な意味があります。したがって、これは有効ですが、特定の状況では適切ではない可能性がある (したがって無効として扱われる) 意味を持ちます。これは基本的に「特定のアドレスなし」プレースホルダーです。ネットワーク接続のアドレス バインドなどの場合、その結果、適切なインターフェイス アドレスが接続に割り当てられることがあります。これを使用してインターフェイスを構成している場合は、代わりにインターフェイスからアドレスを削除できます。 「特定のアドレスなし」が実際に何を行うかは、使用状況によって異なります。

ルート エントリのコンテキストでは、通常、デフォルト ルートを意味します。これは、比較するビットを選択するアドレス マスクの増加の結果として発生します。マスク 0.0.0.0 ではビットが選択されないため、比較は常に成功します。そのため、このようなルートが設定されている場合は、パケットが送信される場所が常に存在します (有効な宛先が設定されている場合)。

場合によっては、単に「0」でも機能し、同じ効果が得られます。しかし、これは保証されません。 0.0.0.0 形式は、「特定のアドレスなし」 (IPv6 では ::0 または単に ::) を表す標準的な方法です。

出典: IP アドレス 0.0.0.0 の意味は何ですか?

インターネット プロトコル バージョン 4 では、アドレス 0.0.0.0 は、無効、不明、または適用できないターゲットを指定するために使用されるルーティング不可能なメタアドレスです。本来は無効なデータに特別な意味を与えるには、インバンド シグナリングを適用します。

サーバーのコンテキストでは、0.0.0.0 はローカル マシン上のすべての IPv4 アドレスを意味します。ホストに 2 つの IP アドレス (192.168.1.1 と 10.1.2.1) があり、ホスト上で実行されているサーバーが 0.0.0.0 をリッスンしている場合、それらの両方の IP で到達可能になります (注: この特定のテキストは、一部として上記から繰り返されています)全体的な答え)。

ルーティングのコンテキストでは、0.0.0.0 は通常、デフォルト ルート、つまりローカル ネットワーク上のどこかではなく、インターネットの「残りの部分」につながるルートを意味します。

用途には以下が含まれます:

  • ホストがまだアドレスを割り当てられていないときに、ホストが自分のものであると主張するアドレス。 DHCP 使用時に最初の DHCPDISCOVER パケットを送信するときなど。
  • ホストの IP スタックがこれをサポートしている場合に、DHCP 経由のアドレス要求が失敗したときにホストが自分自身に割り当てるアドレス。この使用法は、最新のオペレーティング システムでは APIPA メカニズムに置き換えられています。
  • 任意の IPv4 ホストを指定する方法。デフォルトルートを指定する場合にこのように使用されます。
  • ターゲットが利用できないことを明示的に指定する方法。出典: 127.0.0.1 – その用途と重要性?
  • 任意の IPv4 アドレスを指定する方法。これは、サーバーを構成するとき (つまり、待機ソケットをバインドするとき) にこのように使用されます。これは、TCP プログラマには INADDR_ANY として知られています。 [bind(2) はインターフェイスではなくアドレスにバインドします。]

IPv6 では、すべてゼロのアドレスは次のように記述されます::

出典: 0.0.0.0 [ウィキペディア]

DHCP 検出/要求

クライアントが初めて起動するとき、クライアントは初期化状態にあるとみなされ、ユーザー データグラム プロトコル (UDP) ポート 67 (BootP サーバー) を介してローカル物理サブネットに DHCPDISCOVER メッセージを送信します。クライアントは自身が属するサブネットを知る方法がないため、DHCPDISCOVER は、送信元 IP アドレスが 0.0.0.0 の全サブネット ブロードキャスト (宛先 IP アドレス 255.255.255.255) です。クライアントには設定された IP アドレスがないため、送信元 IP アドレスは 0.0.0.0 です。

DHCP サーバーがこのローカル サブネット上に存在し、正しく構成され動作している場合、DHCP サーバーはブロードキャストを受信し、DHCPOFFER メッセージで応答します。 DHCP サーバーがローカル サブネット上に存在しない場合、DHCPDISCOVER メッセージを DHCP サーバーを含むサブネットに転送するには、このローカル サブネット上に DHCP/BootP リレー エージェントが存在する必要があります。

このリレー エージェントは、専用ホスト (Microsoft Windows Server など) またはルーター (インターフェイス レベルの IP ヘルパー ステートメントで構成された Cisco ルーターなど) のいずれかになります。

クライアントは DHCPOFFER を受信すると、DHCPREQUEST メッセージで応答し、DHCPOFFER 内のパラメータを受け入れる意図を示し、要求状態に移行します。クライアントは、元の DHCPDISCOVER メッセージを受信した各 DHCP サーバーから 1 つずつ、複数の DHCPOFFER メッセージを受信することがあります。クライアントは 1 つの DHCPOFFER を選択し、その DHCP サーバーにのみ応答し、他のすべての DHCPOFFER メッセージを暗黙的に拒否します。クライアントは、[サーバー識別子] オプション フィールドに DHCP サーバーの IP アドレスを入力することで、選択されたサーバーを識別します。

DHCPREQUEST はブロードキャストでもあるため、DHCPOFFER を送信したすべての DHCP サーバーは DHCPREQUEST を確認し、それぞれの DHCPOFFER が受け入れられたか拒否されたかを認識します。クライアントが必要とする追加の構成オプションは、DHCPREQUEST メッセージのオプション フィールドに含まれます。クライアントに IP アドレスが提供されている場合でも、送信元 IP アドレス 0.0.0.0 を使用して DHCPREQUEST メッセージを送信します。現時点では、クライアントは、その IP アドレスを使用できるかどうかの確認をまだ受け取っていません。

クライアントと DHCP サーバーが同じサブネット上に存在する DHCP アドレスを取得するクライアントのクライアント/サーバー会話:

出典: Catalyst スイッチまたはエンタープライズ ネットワークにおける DHCP の理解とトラブルシューティング

デフォルトルート

このドキュメントでは、デフォルト ルートまたは最後の手段のゲートウェイを構成する方法について説明します。次の IP コマンドが使用されます。

  • ipデフォルトゲートウェイ
  • ip デフォルトネットワーク
  • ipルート0.0.0.0 0.0.0.0

IP ルート 0.0.0.0 0.0.0.0

ネットワーク 0.0.0.0 0.0.0.0 へのスタティック ルートを作成することは、ルーター上でラスト リゾート ゲートウェイを設定するもう 1 つの方法です。 ipdefault-network コマンドと同様、0.0.0.0 へのスタティック ルートの使用はルーティング プロトコルに依存しません。ただし、ルーター上で IP ルーティングが有効になっている必要があります。

注: IGRP は 0.0.0.0 へのルートを認識しません。したがって、ip Route 0.0.0.0 0.0.0.0 コマンドを使用して作成されたデフォルト ルートを伝播することはできません。 ipdefault-network コマンドを使用して、IGRP にデフォルト ルートを伝播させます。

出典: IP コマンドを使用したラスト リゾート ゲートウェイの構成


説明に何か追加することはありますか?コメントでは音を消してください。他のテクノロジーに精通した Stack Exchange ユーザーからの回答をさらに読みたいですか? ここで完全なディスカッション スレッドを確認してください

「 127.0.0.1 と 0.0.0.0 の違いは何ですか?」に関するベスト動画選定!

【ネットワーク基礎講座1】IPアドレス概要 / スイッチ / ルーター / LANとWAN / FW【3:25】
【初心者向けIT勉強会】0.0.0.0とは?