Mac-Osx

網路更改後找不到 Vagrant 私有 IP

  • July 11, 2017

我有一個使用 Virtual Box 的簡單 Vagrant Ubuntu 虛擬機設置,在 Mac 上執行。

我正在使用私有網路,配置有靜態私有 IP,如下所示:

Vagrant.configure("2") do |config|
   config.vm.network :private_network, ip: "10.11.12.13"
end

這工作正常,除了當我在 wifi 和我的有線網路之間來回切換時。當我這樣做時,我似乎無法再使用它的靜態 IP 地址連接到 VM。我嘗試過停止並重新啟動虛擬機,甚至銷毀並重新創建虛擬機,但均無濟於事。

有什麼方法可以重置網路連接,以便恢復私有 IP?我可以直接在 VirtualBox 中訪問它,或者其他什麼。我可以使它工作的唯一方法是立即重新啟動我的整個機器。

似乎可以通過執行以下命令在命令提示符下輕鬆重新啟動 VirtualBox 的網路適配器(在您的系統上會有所不同)

sudo ifconfig vboxnet1 down
sudo ifconfig vboxnet1 up

請注意,您必須替換vboxnet1為 VirtualBox 的任何虛擬網路適配器,您可以通過以下方式找到:

  • 啟動虛擬盒子
  • 選擇您正在執行的虛擬機
  • Network部分。您將看到一個適配器,其中包含vboxnet其名稱。這就是您要查找的適配器名稱。

您還可以通過ifconfig在終端中執行來查看可用的網路適配器:

ifconfig

如果您希望將其包含在一個簡單的 bash 腳本中,您可以使用以下內容:

restart_vbox_network_adapter.sh

ADAPTER=${1:-"vboxnet1"}

sudo ifconfig $ADAPTER down
sudo ifconfig $ADAPTER up

你會這樣稱呼它,再次為你的虛擬機使用正確的網路適配器:

restart_vbox_network_adapter.sh vboxnet2

引用自:https://serverfault.com/questions/637497