User Tools

Site Tools


doc:appunti:linux:sa:qemu_kvm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:linux:sa:qemu_kvm [2020/04/10 12:01] – [Configurazione rete in modalità bridge] niccolodoc:appunti:linux:sa:qemu_kvm [2020/04/10 14:34] – [Immagine disco raw o qcow2] niccolo
Line 17: Line 17:
  
 È la configurazione necessaria per mettere la macchina **host e guest sulla stessa rete locale**. In pratica si configura una interfaccia **br0** che avrà l'indirizzo IP della macchina host. Tale interfaccia sarà messa in bridge con la porta fisica **eth0** e con la porta virtuale **tap0**, che a sua volta corrisponde all'interfaccia **eth0** della macchina guest. È la configurazione necessaria per mettere la macchina **host e guest sulla stessa rete locale**. In pratica si configura una interfaccia **br0** che avrà l'indirizzo IP della macchina host. Tale interfaccia sarà messa in bridge con la porta fisica **eth0** e con la porta virtuale **tap0**, che a sua volta corrisponde all'interfaccia **eth0** della macchina guest.
 +
 +Vediamo come si configura il file **/etc/network/interfaces** di una macchina Debian.
  
 <file> <file>
Line 48: Line 50:
         down /sbin/ifconfig br2 up || true         down /sbin/ifconfig br2 up || true
 </file> </file>
 +
 +Potrebbe tornare utile un **bridge senza alcuna scheda Ethernet connessa**, ad esempio per attivare una interfaccia di rete in una macchina virtuale, ma senza dover occupare per forza una porta Ethernet. Ecco come attivare **br10** senza impegnare porte fisiche:
 +
 +<file>
 +auto br10
 +iface br10 inet manual
 +        bridge_ports none
 +        bridge_stp off
 +        bridge_waitport 0
 +        bridge_maxwait 10
 +        up   /sbin/ifconfig br10 up   || true
 +        down /sbin/ifconfig br10 down || true
 +</file>
 +
 +Ecco la sintassi **da riga di comando** per fare configurazioni analoghe:
 +
 +<code>
 +brctl addbr br2
 +brctl addif br2 eth2
 +ifconfig br2 up
 +
 +ifconfig br2 down
 +brctl delif br2 eth2
 +brctl delbr br2
 +</code>
 ===== Creazione di una macchina virtuale ===== ===== Creazione di una macchina virtuale =====
  
Line 146: Line 173:
  
 L'immagine di un disco virtuale si crea con **qemu-img**. È possibile utilizzare il formato **raw** (predefinito, facilmente portabile su altri emulatori) oppure il formato **qcow2** (predefinito di QEMU, più versatile per crittografia, compressione, ecc.) utilizzando l'opzione **-f qcow2** di qemu-img. L'immagine di un disco virtuale si crea con **qemu-img**. È possibile utilizzare il formato **raw** (predefinito, facilmente portabile su altri emulatori) oppure il formato **qcow2** (predefinito di QEMU, più versatile per crittografia, compressione, ecc.) utilizzando l'opzione **-f qcow2** di qemu-img.
 +
 +Per scoprire il formato di un file immagine dovrebbe essere sufficiente il comando **file**, a prescindere dall'estensione:
 +
 +<code>
 +file disk_hda.img
 +disk_hda.img: QEMU QCOW Image (v2), 10737418240 bytes
 +
 +file disk_hdb.img
 +disk_hdb.img: DOS/MBR boot sector; ...
 +</code>
  
 Il file XML di configurazione differisce nei due casi:  Il file XML di configurazione differisce nei due casi: 
Line 189: Line 226:
  
 Il tipo **ne2k_pci** offre alla macchina guest una Ethernet PCI compatibile NE2000, per la precisione una **Realtek RTL-8029(AS)**. L'ID PCI in realtà è **1af4:1100**, sempre afferente al vendor QEMU. Il tipo **ne2k_pci** offre alla macchina guest una Ethernet PCI compatibile NE2000, per la precisione una **Realtek RTL-8029(AS)**. L'ID PCI in realtà è **1af4:1100**, sempre afferente al vendor QEMU.
 +
 +Per avere **due o più schede** Ethernet è sufficiente aggiungere altre sezioni **%%<interface>%%**. Ovviamente si impostano mac address e device tap diversi. Anche il bridge connesso è bene che sia diverso (per evitare i //bridge loop//), eventualmente usando un bridge fittizio, senza alcuna interfaccia Ethernet connessa (vedi sopra).
 +
 +===== Console VNC =====
 +
 +Nella sezione **%%<devices>%%** del file di configurazione:
 +
 +<code xml>
 +<graphics type='vnc' port='5908' passwd='MySecret' keymap='it'>
 +  <listen type='address' address='181.121.173.202'/>
 +</graphics>
 +</code>
 +
 +Nella configurazione si imposta la porta TCP in ascolto, la password e la mappatura della tastiera. Con address uguale a **0.0.0.0** si fa il bind su tutte le interfacce, non è possibile specificare due o più indirizzi di bind. Ovviamente se si imposta la password in chiaro, è opportuno proteggere il file almeno con **mode 0640**.
 +
 ===== Troubleshooting ===== ===== Troubleshooting =====
  
doc/appunti/linux/sa/qemu_kvm.txt · Last modified: 2022/11/09 10:14 by niccolo