![ローカルホストアドレス127.0.0.1と127.0.1.1の違いは何ですか](https://rvso.com/image/1087113/%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E3%83%9B%E3%82%B9%E3%83%88%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9127.0.0.1%E3%81%A8127.0.1.1%E3%81%AE%E9%81%95%E3%81%84%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B.png)
私はUbuntuの使い方を勉強しているところですが、DNSを設定しようとしたときに、localhost、ループバックインターフェイスと呼ばれるものを扱う必要がありました。これらの違いと、アドレス127.0.0.1と127.0.1.1の意味、127.0.0.1をいつ使用し、127.0.1.1をいつ使用すればよいのかを誰か説明してもらえますか?
答え1
マシンが起動すると、DNS を参照する前に、ホスト名と IP アドレスのマッピングを知る必要があります。このマッピングはファイルに保存されます/etc/hosts
。ネーム サーバーがない場合、システム上のネットワーク プログラムはこのファイルを参照して、ホスト名に対応する IP アドレスを決定します。
ループバック デバイスは、コンピュータが自分自身と通信するために使用する特別な仮想ネットワーク インターフェイスです。主に診断とトラブルシューティング、およびローカル マシンで実行されているサーバーへの接続に使用されます。
ループバックはインターフェースでありlo
、IP アドレスはデフォルトで 127.0.0.1 です。
127.0.0.1 localhost
Debian、Ubuntu では、ネットワークがない場合に備えて、host_name の IP アドレスをマッピングするために 127.0.1.1 を定義することを選択します。
host_name は で定義されたホスト名と一致します/etc/hostname
。
永続的な IP アドレスを持つシステムの場合は、127.0.1.1 の代わりにその永続的な IP アドレスを使用する必要があります。
127.0.1.1 host_name
答え2
特に何かを意味するわけではありません (127.0.0.0/8 ブロック内の別の IP にすぎません)。
ホスト名のIPとして使用される理由は、Debian リファレンスマニュアル。
引用:
一部のソフトウェア (GNOME など) では、システム ホスト名が正規の完全修飾ドメイン名を持つ IP アドレスに解決可能であることが想定されています。システム ホスト名とドメイン名はまったく異なるものなので、これはまったく不適切ですが、これが現状です。このソフトウェアをサポートするには、システム ホスト名が解決可能であることを確認する必要があります。ほとんどの場合、これは /etc/hosts に IP アドレスとシステム ホスト名を含む行を追加することで行われます。システムに永続的な IP アドレスがある場合は、それを使用します。そうでない場合は、アドレス 127.0.1.1 を使用します。
答え3
次のスクリーン キャプチャは興味深いストーリーを伝えています。
事実上、これは127.0.0.1
真のループバック アドレスであることを示しています。したがって、127.0.1.1
基本的な IP ネットワーキング以外の理由で存在します。
@Videonauth が述べたように、この127.0.1.1
行は、扱いにくいソフトウェアを満足させるための松葉杖、つまり修正として存在します。
私の見解では、ループバック エントリはほぼ常に にあるはずです/etc/hosts
。ホスト名をデフォルトの から変更する場合は、 行ではなく 行localhost
のホスト名を変更します。127.0.1.1
127.0.0.1
ホスト名を変更し、マシンに静的 IP を割り当てる場合は、127.0.1.1 行のホスト名と IP フィールドの両方を変更します。
つまり、127.0.0.1
記録はそのままにしておいてください。
答え4
127.0.0.1 はループバック アドレスで、一般に と呼ばれlocalhost
、ローカルの hosts ファイルによって解決される名前です。このファイルは OS によって異なる場所にありますが、ほとんどの Linux ディストリビューションでは にあります/etc/hosts
。このアドレスは常に要求を行ったコンピュータを参照するため、127.0.0.1 はいわゆる「実際の」アドレスではありません。各デバイスには独自の がありますlocalhost
。一方、127.0.1.1 は特定のソフトウェアによって同じ意味に使用されます。ある意味ではエイリアスですが、実際にはそうではありません。マシンが内部的に使用するループバック アドレスは 127.0.0.1 である必要があるため、hosts ファイルでそのアドレスを変更しないでください。