Richten Sie das Gastnetzwerk in KVM für die Interaktion mit der Außenwelt ein (google.com).


10

Ich versuche, das Netzwerk-Setup auf meinem Computer besser zu verstehen.

Host-Computer-Setup

  1. Ich habe eine drahtlose Schnittstelle ( wlan0 ) auf meinem Host-Computer, deren IP-Adresse lautet192.168.1.9 .
  2. Das Standard-Gateway dieses Hosts ist der Router, der über meinen ISP, dessen IP-Adresse lautet, nach außen geht 192.168.1.1.
  3. Der Befehl route -n auf meinem Hostcomputer gibt mir die Ausgabe zurück als:

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0
    169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 wlan0
    192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 wlan0
    192.168.1.160   0.0.0.0         255.255.255.224 U     0      0        0 virbr2
    

Gastmaschinen-Setup

Jetzt richte ich ein Gastbetriebssystem in KVM wie folgt ein.

  1. Die KVM befindet sich in einem Teilnetzwerk mit den Details als 192.168.1.160/27.
  2. Der DHCP-Start ist 192.168.1.176und das DHCP-Ende ist 192.168.1.190.
  3. Ich habe auch den folgenden Befehl ausgeführt, damit meine KVM-Konfiguration funktioniert.

    arp -i wlan0 -Ds 192.168.1.9 wlan0 pub
    

Vom Gastbetriebssystem aus sehe ich, dass meine IP-Adresse lautet 192.168.1.179. Mein route -nBefehl auf dem Gastcomputer gibt mir die Ausgabe zurück als:

kernel IP routing table
Destination     Gateway         Genmask
0.0.0.0        192.168.1.161    0.0.0.0
192.168.1.160  0.0.0.0          255.255.255.224

Wie kann ich das Gastbetriebssystem dazu bringen, mit der Außenwelt zu interagieren?

BEARBEITEN

Dies ist die Ausgabe von virsh net-list --all.

ramesh@ramesh-pc:~$ virsh net-list --all
 Name                 State      Autostart     Persistent
----------------------------------------------------------
 arpbr0               inactive   yes           yes
 default              active     yes           yes
 proxyArp             active     yes           yes

Können Sie Ihr Setup mit virsh wie hier beschrieben überprüfen: wiki.libvirt.org/page/… . Auch die Box muss dies zulassen : net.ipv4.ip_forward = 1 .
slm

@ SLM, danke. Ich habe die Ausgabe zur Frage hinzugefügt.
Ramesh

Wie ist der Status von ipv4.ip_forward?
slm

Auch wenn Sie sich Ihr Setup mit virt-manager ansehen
slm

Ich habe die /etc/sysctl.confDatei geändert , um den Status von ipv4.ip_forward auf 1 zu ändern.
Ramesh

Antworten:


6

Ich möchte mich bei user slm dafür bedanken, dass er mich beim Aufbau des Gastnetzwerks in der KVM in die richtige Richtung geführt hat . Ich werde die Screenshots zur Antwort hinzufügen, damit sie informativer ist.

Ich gehe davon aus, dass das virt-managerPaket installiert ist und auch der Host-Computer mit den erforderlichen Paketen eingerichtet ist, damit KVM funktioniert.


Vorbereiten des Netzwerks für die Interaktion zwischen Gast und Host


Der Hauptschritt in der KVM ist das Einrichten des Netzwerks. Wenn die Maschine nicht im Netzwerk verfügbar ist, hat sie keinen Zweck, sei es physisch oder virtuell .

Geben Sie virt-managerdas Terminal ein. Die Konsole wird wie folgt angezeigt.

Erstes Virtual Manager-Konsolenfenster

Klicken Sie auf Bearbeiten -> Verbindungsdetails. Ein neuer Bildschirm wird wie folgt angezeigt.

Nach dem Klicken auf die Schaltfläche Bearbeiten

Klicken Sie auf die Registerkarte Virtuelle Netzwerke und von dort auf die Schaltfläche + , um den KVM- Gästen ein neues Netzwerk hinzuzufügen .

Erstellen eines neuen virtuellen Netzwerks

Klicken Sie auf Weiterleiten und dann wird der folgende Bildschirm angezeigt. Die IPV4-Adressen, die wir hier auswählen, liegen nun ganz bei uns und wir könnten diesen Schritt optimieren, um ihn an unsere tatsächlichen Anforderungen anzupassen.

Auswählen eines IPv4-Adressraums

Nachdem wir im obigen Bildschirm auf Weiterleiten geklickt haben, wird der folgende Bildschirm angezeigt. In diesem Schritt wird im Wesentlichen der für uns verfügbare Adressraum angegeben.

DHCP-Adressen verfügbar

Wählen Sie in diesem Schritt die Weiterleitung an ein physisches Netzwerk und die Netzwerkschnittstelle des Hosts, um den Gästen die Interaktion mit der Außenwelt zu erleichtern.

Wählen Sie NAT mit dem physischen Hostgerät

Nach dem obigen Schritt sind wir fast fertig und es wird nur der folgende Bildschirm angezeigt, der eine Art Überprüfung aller Details darstellt, die wir bisher ausgewählt haben.

Letzter Schritt


Hinzufügen dieses neuen Geräts zu unserem Gastbetriebssystem


virt-managerKlicken Sie im Startbildschirm von auf Openund es wird ein Bildschirm wie unten angezeigt.

Erster Schritt

Klicken Sie im obigen Bildschirm auf das i , um einen weiteren Bildschirm wie unten zu öffnen.

zweiter Schritt

Klicken Sie auf Hardware hinzufügen und wählen Sie Netzwerk . Im Netzwerk - Registerkarte, wählen Sie das Host - Gerät als unser neu geschaffenen Netzwerk im vorherigen Schritt und klicken Sie auf Fertig stellen, wie im folgenden Bildschirm angezeigt.

Endgültige Konfiguration


Testen im Gastbetriebssystem


Stellen Sie nun innerhalb des Gastbetriebssystems sicher, dass Sie auf pingdem Hostcomputer und außerhalb des Netzwerks wie Google arbeiten können . Wenn der Ping erfolgreich ist, haben wir unser Netzwerk erfolgreich im Gastbetriebssystem eingerichtet.


Verweise


Das Referenzmaterial zum Einrichten des Gastnetzwerks


0

Richten Sie statische Routen in Ihrem Router ein (192.168.1.1).

# ip route add 192.168.1.160/27 via 192.168.1.9 dev < wlan iface>

oder über webui.

Fügen Sie iptablesauf Ihrem Host Weiterleitungsrouten vom Router zum 192.168.1.160/27und umgekehrt hinzu (obwohl libvirtdiese Regeln meiner Meinung nach bereits vorhanden sind).


Danke für die Antwort. Leider hat diese Lösung nicht funktioniert.
Ramesh

ist Ihr KVM Gast NATed oder weitergeleitet an den Host?
mVincent

Die KVM wird an den Host weitergeleitet.
Ramesh
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.