Saya pada dasarnya ingin mengakses komputer host saya dari tamu di VirtualBox. Apakah ada alamat IP yang diberikan untuk host saya yang dapat saya gunakan dari tamu? Apakah ada langkah-langkah tambahan yang diperlukan untuk mengatur ini? Saya ingin mengakses layanan Apache, FTP, dan SSH host saya.
networking
virtualbox
virtualization
Naftuli Kay
sumber
sumber
Jawaban:
Jawaban ini adalah tentang pengaturan OS tamu di VirtualBox; Anda hanya perlu menggunakan alamat gateway jaringan pada OS tamu untuk terhubung ke OS host dari OS tamu.
Di pengaturan Vagrant default, Anda harus dapat mencapai host Anda melalui gateway default.
Pada tamu berbasis Windows, Anda dapat dengan mudah menentukan alamat IP ini dengan menjalankan perintah:
Itu harus membuang sesuatu seperti ini:
Dalam contoh ini, tamu dapat mencapai mesin host
10.0.2.2
.Pada tamu berbasis Unix / Linux, gunakan perintah:
Itu harus membuang sesuatu seperti ini:
Dalam contoh ini, tamu dapat mencapai mesin host
192.168.1.1
.sumber
10.0.2.2
, dan nmap dari IP itu gagal. 192.168.33.1 tampaknya merupakan IP yang tepat. (Aku punyaconfig.vm.network :hostonly, "192.168.33.52"
di konfigurasi saya.)netstat -rn
pada CentOS 7.2, Docker 1.11 menampilkan172.17
alamat sebagai gateway saya, tetapi IP itu tidak cocok dengan host saya. Ternyata itu10.0.2.2
berhasil.Mengakses server web komputer host dari tamu itu mudah. Ini dapat dilakukan dengan mudah menggunakan dua metode. Pertama lakukan hal berikut
Jika nilainya NAT , lakukan berikut ini
Gateway default ketika Anda mengatur kotak Virtual umumnya
10.0.2.2
sebagai nilai default. Jika Anda belum mengubah apa pun, ini akan berhasil. Tetapi jika Anda telah mengubahnya dan mesin tamu yang Anda jalankan adalah windows jalankan perintah berikut dan temukan gateway defaultipconfig /all
Jika Anda menggunakan Linux, Unix atau Mac OS, jalankan perintah berikut untuk mendapatkannya
netstat -rn | grep 'default' | awk '{print $2}'
Buka browser web dan ketik gateway default ini dan tekan enter. Server web dapat diakses.
ipconfig
dan dapatkan alamat ipifconfig | grep 'inet'
dan dapatkan alamat ipsumber
Cara lain untuk melakukan ini adalah dengan menggunakan jenis "virtual" jaringan virtual. Itu memberi Anda antarmuka di OS tamu dengan alamat pada subnet lokal yang berbeda dari subnet "dunia luar" yang digunakan mesin host Anda. Untuk membuat ini berhasil, Anda harus memastikan beberapa hal:
Setelah Anda melakukan ini, Anda harus dapat "melihat" host dari VM melalui nama yang Anda kodekan ke file host.
Sebagai contoh, pada host Ubuntu 11.04 saya, saya mendapatkan antarmuka virtual "vboxnet0" pada 192.168.56.1. Adaptor dalam mesin datang dengan sesuatu seperti 192.168.56.101. Saya tidak perlu pergi di untuk VMs saya, tapi saya kira itu akan menjadi mungkin melalui perubahan simetris untuk file host host. saya menambahkan
ke file host OS tamu, dan mereka dapat (misalnya) melihat server web mesin host saya di
Anda tentu saja dapat memiliki adaptor bridging dan hanya host yang diatur.
sumber
Anda dapat membuat folder bersama di VirtualBox. Ini secara otomatis akan membuat 'jaringan berbagi' dalam Kotak Virtual untuk mengakses folder di OS Host Anda.
Berikut langkah demi langkah yang layak di OS tamu Windows XP:
sumber
echo "GET /\r\n\r\n" | nc 192.168.100.100 80
(mengirim permintaan HTTP GET ke mesin host saya dari tamu.)Berikut adalah solusi lain untuk masalah ini dengan menggunakan antarmuka jaringan tambahan dan mengatur lalu lintas yang diperuntukkan bagi tuan rumah untuk dirutekan melalui antarmuka tambahan.
sumber