透過主機名稱和連接埠轉送連接到 Vagrant VM 時逾時

透過主機名稱和連接埠轉送連接到 Vagrant VM 時逾時

我正在嘗試獲取已分發給我的 Vagrant VM 設定(因此我自己沒有配置它)。我已經成功安裝了虛擬機vagrant up,但是當我嘗試使用瀏覽器存取主機名時,出現逾時。我也在我的主機檔案中設定了主機名稱。

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 的連接埠(在主機上)(而且你不應該以 root 身分執行 Vagrant)。我假設您從中收到一些錯誤/警告訊息,但也許只是auto_correct綁定到一些非特權連接埠。

由於您已經private_network為機器指定了 IP 位址,因此您甚至不需要任何連接埠轉送。直接連接應該可以。

對於超時我能想到的至少有以下幾個原因:

  • 訪客或主機上的防火牆
  • HTTP 代理程式配置不排除“mysite.local”或“192.168.33.28”
  • Web 伺服器重新導向http://mysite.local無法存取的網域的 URL
  • 192.168.33.28 被另一個虛擬機器使用或與主機上的其他網路重疊

相關內容