Mengapa dua mesin virtual saya mendapatkan alamat IP yang sama?


31

Saya memiliki dua mesin virtual yang berjalan pada host Linux (Fedora 16). Saya mengatur kedua adaptor sebagaimana terlampir pada NAT. Ketika saya mem-bootnya, keduanya memiliki gateway default 10.0.2.2. Mereka juga sama-sama memiliki alamat IP yang sama (10.0.2.15). Keduanya berada pada adaptor yang sama (adaptor 1). Saya tidak tahu mengapa mereka mendapatkan alamat IP yang sama, dan seharusnya tidak menjadi gateway default 10.0.2.1karena alamat subnet 10.0.2.0dan netmask adalah 255.255.255.0. Adakah sesuatu yang saya lewatkan, pernahkah ini terjadi pada siapa pun sebelumnya? Bagaimana cara membuat VirtualBox DHCP berfungsi dengan baik?


2
Itu tidak perlu benar, adalah mungkin untuk membuat jaringan NAT virtual "benar" di mana banyak VM harus diberi alamat IP yang berbeda berdasarkan alamat MAC tervirtualisasi, dan VM dapat melihat satu sama lain di belakang jaringan NAT, pada dasarnya hampir seluruh subnet di belakang antarmuka NAT. Tergantung pada pilihan Anda dalam konfigurasi adaptor jaringan, jika "NAT" dipilih, NAT adalah hubungan host / vm satu, jika "jaringan NAT" dipilih, maka itu adalah hubungan host / subnet di mana masing-masing VM di jaringan virtual harus memiliki alamat IP yang berbeda.

Saya menjawab pertanyaan serupa di sini
Mian Asbat Ahmad

Jawaban:


22

VirtualBox DHCP berfungsi dengan baik.

Tidak ada yang salah dengan memiliki semua mesin Anda mendapatkan alamat yang sama dalam konfigurasi NAT. Semua VM diisolasi satu sama lain sehingga tidak ada risiko konflik. Mereka juga tidak menggunakan adaptor yang sama. Setiap VM memiliki perangkat keras tervirtualisasi termasuk NIC.

Gateway default juga tidak harus 10.0.2.1. Meskipun itu adalah praktik umum untuk memilikinya di alamat IP yang lebih rendah, itu bisa berupa IP apa pun dalam kisaran subnet.

Juga, tidak ada layanan dhcp "nyata", semuanya hardcoded dalam kode VirtualBox, meskipun jika Anda tidak senang dengan alamat IP default, Anda dapat memperbaiki mesin NAT .


Hai @ jlliagre, apakah ini perilaku yang benar-benar diharapkan? Seperti yang saya pahami, jika semua VM diberi alamat IP yang sama, mereka tidak akan dapat menggunakan antarmuka jaringan ini untuk berkomunikasi, bukan? Jika demikian, Anda menyatakan bahwa untuk sekelompok VM, jika masing-masing dari mereka hanya memiliki adaptor NAT tunggal, secara default mereka tidak dapat berkomunikasi.
Hanya pelajar

1
@OgrishMan Ya, ini perilaku yang diharapkan. Itu salah satu alasan utama NAT. Ini memungkinkan banyak mesin untuk menggunakan alamat IP lokal yang sama. Mereka tidak dapat berkomunikasi secara langsung, seperti halnya laptop saya memiliki 192.168.1.4 karena alamat IP tidak dapat berkomunikasi dengan perangkat Anda, yang mungkin menggunakan alamat IP yang sama. Alasan utama mengapa mereka tidak dapat berkomunikasi adalah karena mereka berada di LAN yang berbeda pula. Mesin yang hanya menggunakan antarmuka NAT dapat berkomunikasi bersama hanya melalui gateway pihak ketiga eksternal, atau menggunakan pemetaan port terbalik di tingkat host.
jlliagre

Terima kasih atas penjelasannya! Saya pikir saya jelas sekarang.
Hanya pelajar

7

Di panel kontrol VirtualBox, buka File -> Preferences -> Network

Pilih tab Jaringan NAT, buat "NatNetwork" baru dengan mengklik tombol + di samping dan tekan OK.

Sekarang pilih setiap VM pergi ke Pengaturan -> Jaringan

Pada pilihan Terlampir ke: pilih Jaringan NAT dan pilih "NatNetwork" dan tekan OK.

Mulai ulang semua VM.

Sekarang VM memiliki alamat jaringan yang berbeda.


1
Saya menemukan saya masih mendapatkan alamat IP yang sama menggunakan pendekatan ini!
Kacang jersey

6

Mesin virtual Anda akan mendapatkan alamat IP yang sama dari layanan DHCP apa pun asalkan mereka memiliki alamat MAC Ethernet yang sama (alamat perangkat keras, unik seperti sidik jari, yang ditetapkan oleh pabrik perangkat keras perangkat jaringan Anda).

Karena Anda menjalankan mesin virtual, mereka memiliki perangkat keras virtual dan karenanya mereka "memalsukan" alamat MAC. Anda harus memastikan tidak ada dua mesin yang memiliki alamat perangkat keras Ethernet yang sama.

Anda dapat mengatur alamat MAC Ethernet mesin virtual Anda di VirtualBox di bagian jaringan perangkat keras (terlihat seperti ini: 3c: 08: 51: 05: 24: 8a)

Anda dapat memeriksanya di VM Anda yang sedang berjalan:

sudo ifconfig

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
    ether 3c:08:51:05:24:8a 
    media: autoselect (none)
    status: inactive

2
Server dhcp NAT yang tertanam dengan VirtualBox bukan yang asli. Secara khusus tidak peduli tentang alamat MAC. Bagaimanapun, beberapa VM mungkin memiliki alamat MAC yang sama, itu tidak masalah karena jaringan virtual sepenuhnya terisolasi.
jlliagre

2

Mereka akan mendapatkan gateway default dari server dhcp - jadi apa pun yang diatur di sana. Anda perlu melihat server dhcp untuk melihat apa yang disampaikannya (umumnya hanya mengaturnya di konfigurasi server untuk menjadi apa pun yang Anda inginkan)

Berkenaan dengan dua adapter yang memiliki alamat yang sama, kemungkinan besar ini adalah konfigurasi yang Anda atur di Virtualbox. Jika mereka adalah klon maka Anda mungkin perlu secara eksplisit memberikan satu alamat MAC baru.

Periksa konfigurasi jaringan untuk masing-masing dan lihat apakah mereka berpikir sama.

Jika berbeda, Anda dapat sementara mengatur IP tetap untuk masing-masing di server dhcp (ditugaskan oleh alamat MAC)

Lihat bagian ini dari manual VirtualBox untuk informasi lebih lanjut.


1
Tautan yang Anda poskan tidak berlaku untuk NAT.
jlliagre

1

Saya memiliki masalah yang sama. Menugaskan Adaptor2 ke OS tamu kedua. Alamat Mac dan Ip unik diberikan untuk para tamu.

masukkan deskripsi gambar di sini


0

Dua pengaturan perlu diubah.

1) Di sisi kotak VM - Konsol perangkat lunak klien VMware mengubah pengaturan jaringan (yaitu) menambahkan nat baru pada pengaturan jaringan. 2) Di sisi mesin VM - Perbarui alamat Mac untuk setiap VM.


-1

buka pengaturan jaringan untuk setiap vm, klik lanjutan> klik tombol segarkan di samping addr mac. Dapatkan yang berbeda di keduanya dan Anda siap


jawaban yang diremehkan
elsadek
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.