Anda dapat mengakses port pada mesin host melalui gateway default di dalam OS tamu. (Yang biasanya memiliki IP 10.0.2.2
.)
Misalnya, jika Anda memiliki server web yang berjalan pada port 8000 di mesin host Anda ...
echo 'Hello, guest!' > hello
python -m SimpleHTTPServer 8000
Anda dapat mengaksesnya dari dalam VM Vagrant di 10.0.2.2:8000
(asalkan 10.0.2.2
ip gateway default tamu):
vagrant ssh
curl http://10.0.2.2:8000/hello # Outputs: Hello, guest!
Untuk menemukan IP gateway default di dalam OS tamu, jalankan netstat -rn
(atau ipconfig
pada tamu Windows) dan cari baris dengan IP tujuan 0.0.0.0
(atau bidang berlabel "Gateway Default" di Windows):
$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.33.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
Anda dapat mengekstrak IP ini secara terprogram dengan netstat -rn | grep "^0.0.0.0 " | tr -s ' ' | cut -d " " -f2
.
Sumber: Cara terhubung dengan host PostgreSQL dari mesin virtualbox gelandangan ; Terhubung ke mesin host dari OS guest VirtualBox?