brew でインストールした jenkins が localhost では接続できないが 127.0.0.1 だと接続できるのはなぜ?

投稿者: Anonymous

brew でインストールした jenkins があります。

この jenkins は、(ブラウザから) localhost:8080 でアクセスしても接続できませんが、 127.0.0.1:8080 ではアクセスが可能です。

localhost は 127.0.0.1 に解決するはずなので、この挙動は何かおかしいと思っています。

質問

  • localhost で接続できないけれども、 127.0.0.1 からアクセスできるのは、どうしてなのでしょうか。

解決

IPv6が有効な環境であれば、localhost::1(IPv6のループバックアドレス)で解決される可能性があります。
そのため、JenkinsがIPv4のみ接続を待ちうけているならば、localhostでは接続できず、127.0.0.1だと接続できる、という事象が生じます。

このあたりを確認してはどうでしょうか?

追記

確認方法の一つとして、wireshark等、パケットキャプチャができる環境であれば、「lo0」(ループバックインターフェース)をキャプチャすると、「localhost:8080」にアクセスした際に「127.0.0.1」に向かっているか見えると思います。

OP追記

curl -v localhost:8080 の結果、 ::1 で解決されているようだ、と確認できました。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *