ループバックデバイスとは何ですか?


138

ループバックローカルホストとは何ですか?

それらはなぜ存在し、何のために使用され、どのように使用しますか?


1の2つの別個の質問ではありませんか?
アンワル

回答:


180

ループバックデバイスは、特別な、ある仮想 ネットワークインタフェースコンピュータが自分自身との通信に使用しています。主に診断とトラブルシューティング、およびローカルマシンで実行されているサーバーへの接続に使用されます。

ループバックの目的

ネットワークインターフェイスが切断されている場合-たとえば、イーサネットポートのプラグが抜かれている場合、Wi-Fiがオフになっている場合、アクセスポイントに関連付けられていない場合- そのインターフェイスでの通信はできず、コンピューターとそれ自体の間の通信もできません。ループバックインターフェイスは実際のハードウェアを表すものではありませんが、コンピューター上で実行されているアプリケーションが常に同じマシン上のサーバーに接続できるように存在します。

これは、トラブルシューティングにとって重要です(ミラーを調べることと比較できます)。ループバックデバイスは、純粋に診断ツールとして説明される場合があります。ただし、必要なリソースを提供するサーバーが自分のマシンで実行されている場合にも役立ちます。

たとえば、Webサーバーを実行している場合、すべてのWebドキュメントがあり、それらをファイルごとに調べることができます。ブラウザーにファイルをロードすることもできますが、サーバー側のアクティブコンテンツでは、誰かが普通にアクセスしたときのようには機能しません。

そのため、他のユーザーと同じサイトを体験したい場合、通常は自分のサーバーに接続するのが最良のコースです。ループバックインターフェイスはそれを容易にします。

ループバックのアドレス

以下のためのIPv4、ループバックインターフェイスは、すべての割り当てられたIPアドレスを中に127.0.0.0/8 アドレスブロック。つまり、127.0.0.1を通じて127.255.255.254 すべてのコンピュータを表します。ただし、ほとんどの場合、使用する必要があるのは1つのIPアドレスのみです127.0.0.1。このIPには、ホスト名localhostマップされています。

したがって、としてログインするためにbob経由でSSH自分のマシン上で実行されているSSHサーバに、あなたが使用します。

ssh bob@localhost

他のネットワークアダプターと同様に、ループバックデバイスはの出力に表示されますifconfig。その名前はloです。

ek@Del:~$ ifconfig lo
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:50121 errors:0 dropped:0 overruns:0 frame:0
          TX packets:50121 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4381349 (4.3 MB)  TX bytes:4381349 (4.3 MB)

例:CUPS

localhostUbuntuでの一般的な生産(つまり、診断だけでなく)の使用は、高度なプリンター構成を実行することです。Webブラウザーで、次の場所に移動します。

http://localhost:631

CUPSはポート631でWebサーバーを実行します。これは、実行しているGUIに関係なく(またはGUIをまったく実行していない場合でも)、印刷の構成に使用できます。

WebブラウザーでのCUPSを示すスクリーンショット

に接続しようとするとhttp://127.0.0.1:631、これも機能します。ただし、に接続しようとするとhttp://127.0.0.2、接続されません。すべての127.*.*.*アドレスはループバックインターフェイスでコンピューターを識別しますが、サーバープログラムは特定のIPアドレスにのみバインドすることを決定できます。

Windowsとの顕著な違い

Windowsのバックグラウンドから来た場合loopback、それ自体が同義語であると期待するかもしれませんlocalhost(したがって、pingを実行したりloopback、サーバーに接続しloopbackたりできるなど)。この動作はWindowsに特有です。

「ループバック」の他の意味

ループバックの一般的な概念は、メッセージまたはシグナルが開始された場所に戻る(またはループする)メカニズムです。

そのため、Ubuntuでループバックを使用する方法は他にもいくつかありますが、ネットワーキングのループバックデバイスと混同しないでください。

ループマウント

Ubuntuでディスクイメージをマウントするには、次を実行できます。

sudo mount -o loop image.iso /media/label

これは通常、ループバックデバイスではなくループデバイスと呼ばれますが、ループバックファイルインターフェイスという用語が使用されることもあります。

これは、ネットワークのループバックデバイスとは関係ありません。

Pulseaudioおよびその他のサウンドシステムは、ライン入力をライン出力に「接続」するメカニズムを提供し、オーディオ入力がスピーカー/ヘッドフォンにエコーバックされるようにします。Pulseaudioのループバックモジュールはこれを容易にします。

ここでloopbackという用語を使用するの正しいですが、ループマウントのように、これはネットワーキングのループバックデバイスとも関係がありません。(ループマウントとも関係ありません。)

参考文献


6
127.0.0.0/8が127.0.0.0から127.255.255.255ではなく127.0.0.1から127.255.255.254にマッピングされるのはなぜですか?(これがハイジャックとして認識される場合はごめんなさい。)
JellicleCat

5
彼は、使用可能なホストアドレスのみに言及し、ネットワークおよびブロードキャストアドレスは除外しました。あなたはそれが127.0.0.0-127.255.255.255であるべきであると言って正しいですが、最初と最後には他の目的があります。
ガブリエルサムフィラ

1
@Eliah、localhost指している必要があり127.0.0.1ますか?または、たとえば別のループバックアドレスを指すこともでき 127.0.0.2ますか?
Pacerier

@GabrielSamfira、だからなぜSSHを使用して(たとえばを実行してssh 127.0.0.0)これら2つのIPアドレスに接続しようとすると、「接続が拒否されました」ではなく「ネットワークに到達できません」と表示されます。
MAChitgarha

3
@MAChitgarhaサブネットの最初のIPアドレスはネットワーク識別アドレスであり、最後のIPアドレスはブロードキャストアドレスです。これらのどちらもデフォルトでホストに割り当てることはできません。ブロードキャストアドレスは、ネットワーク内のすべてのホストをアドレス指定するために使用され、ネットワークアドレスは、ネットワーク自体を識別するために使用されます。参照:en.wikipedia.org/wiki/IP_address
ガブリエルサムフィラ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.