ポート転送を使用してホスト名経由で Vagrant VM に接続するとタイムアウトになる

ポート転送を使用してホスト名経由で Vagrant VM に接続するとタイムアウトになる

配布された Vagrant VM セットアップを取得しようとしています (そのため、自分では構成していません)。 VM をvagrant up正常にインストールしましたが、ブラウザーを使用してホスト名を入力しようとすると、タイムアウトが発生します。 hosts ファイルにもホスト名を設定しました。

Vagrantfile の設定:

# Networking
config.vm.network :private_network, ip: "192.168.33.28"
config.vm.network :forwarded_port, guest: 80, host: 80, auto_correct: true
config.vm.network :forwarded_port, guest: 443, host: 443, auto_correct: true
config.vm.hostname = "mysite.local"

私のホストファイル内の行:

192.168.33.28   mysite.local secure.mysite.local

ブラウズしようとするとhttp://mysite.localタイムアウトになります。

Vagrantfile の設定を次のように変更してみました:

config.vm.network :forwarded_port, guest: 80, host: 8080, auto_correct: true

そして実行しますvagrant reload。その後、まだタイムアウトが発生しますhttp://mysite.local:8080が、成功応答が返されます。http://localhost:8080

ありがとう!

答え1

まず、root/sudo なしでは (ホスト上の) 1024 未満のポートにバインドすることはできません (また、Vagrant を root として実行しないでください)。これにより、何らかのエラー/警告メッセージが表示されると思いますが、おそらく、auto_correct非特権ポートにバインドしているだけでしょう。

private_networkまた、マシンの IP アドレスをすでに指定しているので、ポート転送も必要ありません。直接接続が機能するはずです。

タイムアウトについては、少なくとも次の理由が考えられます。

  • ゲストまたはホスト上のファイアウォール
  • 「mysite.local」または「192.168.33.28」を除外しない HTTP プロキシ構成
  • ウェブサーバーのリダイレクトhttp://mysite.localアクセスできないドメインへの URL
  • 192.168.33.28 は別の VM によって使用されているか、ホスト上の他のネットワークと重複しています

関連情報