Itu mungkin - setidaknya, dalam kasus umum, di mana jaringan gaya-NAT dikonfigurasikan untuk tamu. Karena VMWare menyediakan NAT-ing, itu harus bisa memberi tahu kami, untuk apa alamat NAT-ing saat ini. Sesuatu seperti vmrun list
seharusnya mengeluarkan informasi ini. Itu tidak cacat ...
Tetapi, bagaimanapun juga, ini adalah bagaimana orang dapat mengetahuinya. Pertama, jalankan ifconfig
di Mac Anda (mungkin, ipconfig
akan melakukan hal yang sama pada Windows, tapi saya belum mengujinya). Ini akan mencantumkan semua antarmuka jaringan pada mesin - baik fisik maupun virtual. Cari vmnet-yang. Di Mac saya ini menghasilkan:
% ifconfig | grep -A2 ^vmnet
vmnet1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:01
inet 192.168.82.1 netmask 0xffffff00 broadcast 192.168.82.255
vmnet8: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:08
inet 192.168.123.1 netmask 0xffffff00 broadcast 192.168.123.255
Jadi, IP tamu saya ada di salah satu dari dua jaringan pribadi VM ini: 192.168.82.0/24 atau 192.168.123.0/24. Di host Anda mungkin hanya ada satu, beruntung, atau lebih dari dua - kami perlu memeriksa semuanya. Ini adalah skrip tcsh yang sangat sederhana, yang dimasukkan langsung pada command-line, yang melakukannya untuk saya. Ia mencoba untuk melakukan ping setiap alamat di semua jaringan pribadi kelas-C yang dikelola oleh vmnet dan berakhir, ketika ping berhasil. The -W 500
pilihan memberitahu ping menunggu hanya setengah detik untuk respon (bisa, mungkin, menggunakan bahkan kurang), dan -c 1
mengatakan itu untuk mengirim tepat satu paket:
% set i=2
% while ( $i < 255 )
while? ping -W 500 -c 1 192.168.82.$i && break
while? ping -W 500 -c 1 192.168.123.$i && break
while? @ i++
while? end
Skrip kecil di atas berjalan untuk beberapa waktu yang mencantumkan semua upaya gagal untuk mencapai alamat yang tidak ada:
PING 192.168.82.2 (192.168.82.2): 56 data bytes
--- 192.168.82.2 ping statistics ---
1 packets transmitted, 0 packets received, 100.0% packet loss
PING 192.168.123.2 (192.168.123.2): 56 data bytes
...
Sampai akhirnya berhasil dan selesai:
64 bytes from 192.168.123.130: icmp_seq=0 ttl=64 time=0.307 ms
--- 192.168.123.130 ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
Voa, saya bisa ssh ke tamu saya:
% ssh 192.168.123.130
Password:
Sekarang, saya hanya punya satu tamu berjalan - jadi alamat IP pertama untuk menanggapi ping adalah yang benar. Jika Anda menjalankan beberapa tamu sekaligus, Anda mungkin perlu menggunakan perintah ping yang sama atau serupa untuk membuat daftar semua alamat IP pribadi yang valid dan kemudian mencoba semuanya sampai Anda masuk ke tamu yang benar ...
(Dan, mungkin, .130 adalah tebakan yang bagus untuk alamat berbasis NAT. Tapi saya tidak bisa mengatakan dengan pasti.)