Saya menggunakan Open vSwitch untuk membuat jaringan yang diaktifkan antara mesin guest virtualBox, dan saya ingin agar host OS (Ubuntu 12.04) bergabung dengan jaringan ini dan mengkonfigurasinya sebagai gateway dari jaringan virtual ini:
Pertama, saya membuat vswitch dan saya menambahkan port untuk mengetuk perangkat (yang digunakan mesin virtual sebagai antarmuka penghubung):
ovs-vsctl add-br sw0
ovs-vsctl add-port sw0 tap0
Setelah itu, saya mengatur secara statis ip mesin virtual Lubuntu 12.04:
ifconfig eth0 192.168.1.3/24 up
route add -net 0.0.0.0/0 gw 192.168.1.1
Di sisi os host, saya juga mengatur alamat ip:
ifconfig sw0 192.168.1.1/24 up
Saat ini, saya dapat melakukan ping dari Lubunut ke Ubunutu. Saya ingin sekarang, di mesin host menggunakan IP masquerade untuk meneruskan lalu lintas dari jaringan 192.168.1.0/24 ke interace fisik saya (terhubung ke Internet):
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE
Jadi dari Lubuntu (mesin virtual), saya dapat melakukan ping antarmuka Ubuntu eth1, tetapi saya tidak dapat mencapai jaringan nyata (misalnya: gateway pada LAN nyata), saya telah mencoba:
nslookup google.com
dig @8.8.8.8 yahoo.com
dig @192.168.30.1 google.com
Topologi Jaringan
Internet (real gw) ------ Host OS -------- vswitch -------- VBox Guest 1
192.168.30.1 ip masquerade 192.168.1.0/24
|
------------ VBox Guest 2
sumber
Jawaban:
Jawabannya bukan milik saya, tapi ... Coba ikuti Open vSwitch di VirtualBox
Ada juga file teks singkat dari beberapa orang Fedora dengan subjek yang sama: libvirt dan OpenVSwitch dalam bentuk file teks ... tidak dapat menemukannya.
sesuai komentar, inilah ringkasan singkat:
(1) Buat antarmuka vnet0 dan br0 bridge:
(2) putar VM yang menggunakan antarmuka vnet0 (sebagai adaptor yang dijembatani)
(3) menghubungkan bridge br0 ke jaringan nyata:
sumber
Aktifkan forwarding pada saat reboot oleh un-komentar baris ini di /etc/sysctl.conf :
sumber