[解決済み] 0.0.0.0、127.0.0.1、localhostの違いは何ですか?
質問
を使っています。
Jekyll
と
Vagrant
をmacにインストールしました。私が見つけたのは
Jekyll server
にバインドされます。
0.0.0.0:4000
ではなく
127.0.0.1:4000
. また
gem server
は、デフォルトでこのアドレスにバインドされます。それでも
http://localhost:port
. しかし
Jekyll
,
は、デフォルトの設定(例:0.0.0.0:4000)では、インターネットに接続する必要があるようです。を実行することができません。
Jekyll server
インターネットがない場合
小さなバグなのでしょうか?
また、私は
Vagrant
. をインストールしているので、Vagrantfileでポートフォワーディング(8080 => 4000)を設定しました。
Jekyll
で
Vagrant
の仮想マシンで、Macintoshでテストしてみました。デフォルトの設定(0.0.0.0:4000)であれば、動作しています。サファリから
http://localhost:8080
. しかし、インターネットがない場合、0.0.0.0:4000にバインドすることができません。私は
jekyll server -H 127.0.0.1
にサービスをバインドするために
127.0.0.1:4000
を経由してアクセスすることはできません。
http://localhost:8080
.
誰でもいい 0.0.0.0, 127.0.0.1, localhostの違いを教えてください。 ? また、どなたか なぜその違いがこの問題を引き起こすのかを説明してください。 ?
解決方法は?
127.0.0.1
は通常、quot;loopback"またはlocal-onlyインターフェースに割り当てられたIPアドレスです。 これは、同じホスト内でのみ通信可能な偽のネットワーク・アダプタです。 これは、ネットワーク対応アプリケーションが同じホスト上のクライアントにのみサービスを提供したい場合によく使用されます。 でリッスンしているプロセスは
127.0.0.1
は、そのソケットでローカル接続のみを受信します。
は、通常は
127.0.0.1
IPアドレスです。 これは通常
/etc/hosts
(の下のどこかにあるhosts"という名前のWindowsに相当するもの)。
%WINDIR%
). 他のホスト名と同様に使用することができます - "ping localhost"で、それがどのように
127.0.0.1
.
0.0.0.0
にはいくつかの意味がありますが、この文脈では、サーバが
0.0.0.0
というのは、「利用可能なすべてのネットワーク・インターフェイスをリッスンする」という意味です。 ループバックアダプタのIPアドレスは
127.0.0.1
サーバプロセスから見ると、マシン上の他のネットワークアダプタと同じように見えるので、サーバが
0.0.0.0
はそのインターフェイスでの接続も受け付けます。
これでIP側の質問には答えられたと思います。 私はJekyllまたはVagrantに精通していないですが、私はあなたのポートフォワーディングを推測している
8080 => 4000
が何らかの形で特定のネットワークアダプタにバインドされているため、ローカルで
127.0.0.1
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン