У меня есть простая установка виртуальной машины Vagrant Ubuntu с использованием Virtual Box, работающая на Mac.
Я использую частную сеть, настроенную со статическим частным IP-адресом, например:
Vagrant.configure("2") do |config|
config.vm.network :private_network, ip: "10.11.12.13"
end
Это работает нормально, за исключением случаев, когда я переключаюсь между Wi-Fi и проводной сетью. Когда я это делаю, мне кажется, что я больше не могу подключиться к виртуальной машине со статическим IP-адресом. Я попытался остановить и перезапустить виртуальную машину и даже уничтожить и воссоздать виртуальную машину, но безрезультатно.
Есть ли способ сбросить сетевое соединение, чтобы частный 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
ssh в вашу бродячую виртуальную машину и выполните следующую команду
sudo /etc/init.d/network restart