
Estoy configurando mi primera máquina virtual y estoy usando puentes para acceder a mi red. Es una máquina virtual con Windows7 en Ubuntu 14.10. Leí que cambiar a 'Modelo de dispositivo = VirtIO' en la definición de VM mejorará el rendimiento de Ethernet. Cuando lo cambio a VirtIO desde rtl8139, pierdo la conectividad Ethernet en la VM. ¿Alguna sugerencia?
Notas al margen: soy nuevo en el mundo de Linux, como puede indicar esta pregunta. De hecho, preferiría conectar la máquina virtual a mi adaptador inalámbrico (que he desactivado), pero muchas de las cosas que he leído dicen que no se puede conectar un adaptador inalámbrico.
Gracias por cualquier consejo.
Mi máquina virtual win7 fue creada/definida mediante el uso de la herramienta GUI que viene con KVM. Si coloco el cursor sobre el ícono, dice "Administrador de máquinas virtuales". Ya tengo un puente configurado. Funciona para una conexión por cable y si el tipo de modelo en el parámetro del archivo /etc/libvirt/qemu/win7.xml es rtl8139. Si uso Virtual Machine Manager o el editor de texto nano para cambiarlo a virtIO, pierdo las conexiones LAN para el host de Ubuntu y la VM win7. A continuación se muestra el resultado de ifconfig:
br0 Link encap:Ethernet HWaddr 08:62:66:28:84:88
inet addr:192.168.1.75 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 2602:304:cd91:e710:bd86:dd51:d7dd:bc0a/64 Scope:Global
inet6 addr: fe80::a62:66ff:fe28:8488/64 Scope:Link
inet6 addr: 2602:304:cd91:e710:a62:66ff:fe28:8488/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1094 errors:0 dropped:0 overruns:0 frame:0
TX packets:151 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:79513 (79.5 KB) TX bytes:18098 (18.0 KB)
eth0 Link encap:Ethernet HWaddr 08:62:66:28:84:88
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1483 errors:0 dropped:0 overruns:0 frame:0
TX packets:151 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:248992 (248.9 KB) TX bytes:19177 (19.1 KB)
Interrupt:20 Memory:dff00000-dff20000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:217 errors:0 dropped:0 overruns:0 frame:0
TX packets:217 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:55759 (55.7 KB) TX bytes:55759 (55.7 KB)
virbr0 Link encap:Ethernet HWaddr 3a:13:59:8b:2e:07
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
El host de Ubuntu y la máquina virtual Win7 obtienen su dirección IP de DHCP. Mi sección de 'interfaces' es idéntica a la tuya, excepto por la MAC y el tipo de modelo. Te di información incorrecta en mi última respuesta. Solo estoy usando nano para ver el texto en el archivo win7.xml. No lo estoy usando para editar el archivo. Estoy usando la GUI de Virtual Machine Manager para cambiar el tipo de modelo entre rtl8139 y virtIO. Una vez que hago un cambio, confirmo que el archivo win7.xml muestra el valor del nuevo tipo de modelo usando nano para abrir el archivo y verlo.
Lo siento, pero tengo dificultades para pegar el archivo xml en la ventana de edición. cuando lo hago, puedo ver el archivo completo en la ventana de edición, pero solo aparecen dos líneas en la edición guardada. Creo que tal vez esté intentando interpretar el archivo y eliminando los caracteres especiales. No encuentro instrucciones sobre cómo pegar un archivo completo. ¿Hay alguna manera de adjuntar el archivo? Por cierto, gracias de nuevo por tu ayuda con este problema.
Respuesta1
Tenga en cuenta que, para un invitado de Windows, es posible que necesite instalar controladores especiales para que virtio funcione correctamente. Por favor vea estas referencias:
http://wiki.libvirt.org/page/Virtio
http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
https://launchpad.net/kvm-guest-drivers-windows/+descargar
Lo siguiente es de una de mis máquinas virtuales. Su dirección mac y sus líneas de dirección serán/podrían ser diferentes:
<interface type='bridge'>
<mac address='52:54:00:c1:f1:b8'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
¿Estás diciendo que eso no te funciona? ¿Cómo obtiene la subred 192.168.1.0 sus direcciones IP? ¿Vía dhcp o estático?
Para contextualizar, a continuación se muestra el archivo .xml completo:
<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
virsh edit desk_tt
or other application using the libvirt API.
-->
<domain type='kvm'>
<name>desk_tt</name>
<uuid>4235912f-1d46-8866-22ba-c91bfe2a86b7</uuid>
<memory unit='KiB'>8388608</memory>
<currentMemory unit='KiB'>8388608</currentMemory>
<vcpu placement='static'>4</vcpu>
<os>
<type arch='x86_64' machine='pc-i440fx-1.7'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/kvm-spice</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/media/newhd/desk_tt.img'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
<disk type='block' device='cdrom'>
<driver name='qemu' type='raw'/>
<target dev='hdc' bus='ide'/>
<readonly/>
<address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>
<controller type='ide' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
<controller type='usb' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'/>
<interface type='bridge'>
<mac address='52:54:00:c1:f1:b8'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='vmvga' vram='16384' heads='1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<memballoon model='virtio'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</memballoon>
</devices>
</domain>