imposta tap0 usando virt-manager per il bridge wireless


8

Dopo 3 giorni ho finalmente ospiti kvm che lavorano in rete via wireless (link sotto - grazie!):

La mia rete è 192.168.1.0/24

sull'host:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo tunctl -t tap0
sudo ip link set tap0 up
sudo ip addr add 192.168.1.25/24 dev tap0
sudo route add -host 192.168.1.30 dev tap0
sudo parprouted wlan0 tap0

sull'ospite:

auto eth0
iface eth0 inet static
  address 192.168.1.30
  netmask 255.255.255.0
  network 192.168.1.0
  broadcast 192.168.1.255
  gateway 192.168.1.25

e avvia l'ospite:

sudo kvm /path/to/guest.img -net nic,macaddr=DE:AD:BE:EF:90:26 -net tap,ifname=tap0,script=no

Funziona benissimo e posso eseguire il ping della rete locale e di Internet avanti e indietro tra l'ospite.

Ma come posso aggiungere queste impostazioni alla configurazione XML dell'ospite in modo da poter avviare l'ospite tramite virt-manager con le stesse impostazioni nic?

ref:

Risposte:


1

prova a seguire questo: libwirtwiki - guest tap

e correggi /etc/libvirt/qemu/example.xml

<interface type='ethernet'>
  <mac address='26:c7:a9:96:a7:7a'/>
  <target dev='tap0'/>
  <model type='virtio'/>
  <script path='no'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>

nel mio caso funziona


0

Penso che tu stia cercando di configurare una rete a ponte in modo circolare creando dispositivi di tocco, ecc. In Linux puoi creare un dispositivo a ponte virtuale per un'interfaccia fisica usando semplici modifiche alla configurazione. Una volta fatto, le VM KVM possono essere configurate per utilizzare questo dispositivo a ponte virtuale per connettersi alla normale LAN come se fossero direttamente connesse ad esso. Dà l'illusione che tutte le macchine virtuali e la macchina base / host siano tutte direttamente connesse alla LAN.

Se è quello che vuoi, modifica la tua / etc / sysconfig / network-scripts / ifcfg-eth0 (supponendo che eth0 sia il dispositivo di rete host con IP nella rete 192.168.1.0/24 nel tuo caso) per avere linee

DEVICE=eth0
TYPE=Ethernet
BRIDGE=br0

tra le altre linee di configurazione. Copia ifcfg-eth0 in ifcfg-br0 dove ifcfg-br0 dovrebbe differire da ifcfg-eth0 nelle righe sotto menzionate

DEVICE=br0
TYPE=Bridge

Ora, quando si utilizza il "riavvio della rete di servizio", sarà necessario collegare in rete le interfacce br0 e eth0 e il proprio IP LAN nell'intervallo 192.168.1.0/24 sembrerebbe essere assegnato a br0. Ora tutto ciò che devi fare è modificare le impostazioni della VM e chiedergli di connettersi utilizzando la rete br0.


grazie Saurabh, ma questa soluzione è perché le interfacce wireless non supportano il bridging normale, come faresti con un'interfaccia et0 cablata.
DaveO,

Oops! Colpa mia. Non sapevo che il bridging non funziona per le interfacce wireless come per i cablati.
Saurabh Barjatiya,

Invece di colmare. È inoltre possibile configurare una rete wireless completa con il proprio DHCP e utilizzare un intervallo IP privato non utilizzato. Quindi per connettere questa rete wireless all'esterno è possibile utilizzare NAT di origine / destinazione sulla macchina che dispone sia di connessione wireless che cablata. Se le VM wireless non dispongono di server, lo farebbe solo PAT di origine. Se è necessario connettersi alle VM wireless dal resto della rete, la combinazione NAT di origine e destinazione dovrebbe fare.
Saurabh Barjatiya,

0

Cosa c'è di sbagliato nell'uso di macvtap ? Questo è completamente indolore e non richiede alcuna ulteriore configurazione sull'host.

selezione macvtap in virt-manager


3
Macvlan / macvtap è ottimo per le interfacce cablate ma sembra non funzionare su interfacce wireless, in base alla mia esperienza e esperienza di lettura online.
lgaggini,

2
@lgaggini Non è possibile collegarsi a interfacce wireless perché l'AP rifiuterà gli indirizzi MAC delle macchine virtuali. In tal caso, fai solo qualcos'altro.
Michael Hampton,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.