インフラ系SEの技術メモ

雑なエンジニアが低信頼性のメモを書いています。参考程度にとどめてください。

(意外と知らない) 0.0.0.0と127.0.0.1の違い

とあるサービスの公開ポートを見ていた時に

# docker-compose ps
          Name              Command   State                         Ports
------------------------------------------------------------------------------------------------
dockerjitsimeet_jicofo_1    /init     Up
dockerjitsimeet_jvb_1       /init     Up      0.0.0.0:10000->10000/udp, 127.0.0.1:8080->8080/tcp
dockerjitsimeet_prosody_1   /init     Up      5222/tcp, 5280/tcp, 5347/tcp
dockerjitsimeet_web_1       /init     Up      0.0.0.0:8443->443/tcp, 0.0.0.0:8000->80/tcp

空いているポート番号の前についているIPアドレスってなんだっけ・・?と。

結論:外部用から内部用か

0.0.0.0で空いているポートは外部のサーバからつつくことができるようです。
逆に127.0.0.1は内部用のアドレスなので外部からはつつけない・・・というわけ。

確かに内部で空いていると言われているポートめがけてlocalhostでつなぎにいくと

# ssh localhost -v -p 8080
...
debug1: Connecting to localhost [127.0.0.1] port 8080.
debug1: Connection established.
...

通信が通りました。そして外部サーバからはダメでした。