W Virtualbox mam kilka maszyn wirtualnych. Host jest laptopem Debiana, który często przełącza się między połączeniem przewodowym i bezprzewodowym. Za każdym razem, gdy korzystam z połączenia bezprzewodowego (lub przewodowego), muszę zmienić ustawienia Virtualbox każdej maszyny wirtualnej z eth0 na wlan0 (lub na odwrót), aby goście mogli połączyć się z siecią. Jak mogę ustawić ten przełącznik automatycznie?
linux
networking
virtualbox
virtual-machine
Matt Alexander
źródło
źródło
Odpowiedzi:
Można zmienić typ interfejsu sieci wirtualnej za pomocą polecenia:
Spowoduje to, że pierwszy wirtualny interfejs w tej maszynie wirtualnej zostanie połączony z eth0. Działa to jednak tylko wtedy, gdy gość jest uruchomiony . (Nie jestem pewien, kiedy dokładnie zaktualizuje trwałą konfigurację, ale niektóre testy wykazały, że polecenie nic nie robi, jeśli gość nie jest uruchomiony, ale jeśli tak, zmienia zarówno bezpośredni stan interfejsu, jak i aktualizuje konfigurację .)
Ale można go uruchomić, jeśli często go uruchamiasz, określając interfejs, z którym chcesz się połączyć. Możesz użyć mojego języka programowania NCD, aby zrobić to automatycznie. Poniższy program NCD będzie obserwował stan eth0 i wlan0 i wielokrotnie będzie wywoływał polecenie takie jak powyżej, aby upewnić się, że maszyna wirtualna jest połączona z odpowiednim interfejsem. (w szczególności ten, który ma flagę RUNNING; np. w przypadku interfejsów przewodowych oznacza to, że kabel jest podłączony)
Możesz użyć powyższego programu, uruchamiając (jako konto użytkownika, a nie root):
Pamiętaj, aby dostosować nazwy interfejsu w skrypcie i nazwę maszyny wirtualnej. Po sprawdzeniu, że działa, możesz skonfigurować środowisko pulpitu, aby automatycznie uruchamiało
badvpn-ncd
proces.źródło