LoginSignup
2
0

More than 5 years have passed since last update.

Vagrantでポートフォワードを設定しても、railsのアプリケーションが見れなかった話

Posted at

個人の戒めとしてメモっておく

Vagrantfile

  config.vm.network :forwarded_port, guest: 4567, host: 4567, auto_correct: true, id: "http"
  config.vm.network :private_network, ip: "192.168.33.11"

問題なし。

仮想(Vagrant)側の確認

とりあえず、rails 5.0.0のアプリを起動

./bin/rails s -b 0.0.0.0 -p 4567
  • ポートフォワーディングでやっている4567ポートで動かしている
  • bindも0.0.0.0でやっている

問題ない。

netstatでちゃんとLISTENできているか確認

netstat -tanp | grep LISTEN

を実行すると

tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1304/sshd
tcp        0      0 0.0.0.0:4567                0.0.0.0:*                   LISTEN      3827/puma 3.6.2 (tc
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1391/master
tcp        0      0 :::22                       :::*                        LISTEN      1304/sshd
tcp        0      0 ::1:25                      :::*                        LISTEN      1391/master

4567port開いてる。問題ない。

ホスト(Mac)側の確認

こちらでもportが開いてるか確認

lsof -i -P | grep "LISTEN"
VirtualBo 29393 hogehoge   33u  IPv4 0x4094c6847ecc57b      0t0  TCP *:4567 (LISTEN)
VirtualBo 29393 hogehoge   35u  IPv4 0x4094c684755cc83      0t0  TCP localhost:2222 (LISTEN)

開いている。問題ない。

telnetを使って接続確認

telnet localhost 4567

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

入れる。つながっている。

別のターミナル立ち上げて、tcpdumpを使って、反応が見れるか確認。

sudo tcpdump -i all port 4567

んで、telnet接続中に以下を記入。

GET / HTTP/1.0

tcpdump反応せず。

何が問題なんだ?

  • ポートフォワーディングはできている
  • 設定ファイルも問題ない
  • ゲスト側にリクエストが到達していない?

解決

service iptables stop

1日詰まった挙句、Firewallでした。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0