GNU/Linux >> LINUX-Kenntnisse >  >> Linux

QEMU, wie man das Host-Netzwerk anpingt?

QEMU unterstützt ICMP auf dem SLIRP-Backend. Es ist notwendig, so genannte Ping-Sockets (PF_INET, SOCK_DGRAM, PROT_ICMP) für Benutzer im Kernel zuzulassen.

Es ist einfach

sysctl -w net.ipv4.ping_group_range='0 2147483647'

Siehe auch http://lwn.net/Articles/422330/


Laut QEMU-Wiki unterstützt QEMU kein ICMP auf dem SLIRP-Backend.

Benutzernetzwerk (SLIRP)

Dies ist das standardmäßige Netzwerk-Backend und im Allgemeinen am einfachsten zu verwenden. Es erfordert keine Root-/Administratorrechte. Es hat die folgenden Einschränkungen:

  • Es gibt viel Overhead, daher ist die Leistung schlecht
  • ICMP-Verkehr funktioniert nicht (also können Sie Ping nicht innerhalb eines Gastes verwenden)
  • der Gast ist nicht direkt vom Host oder dem externen Netzwerk aus erreichbar

Für ICMP-Arbeiten müssen Sie TAP, VDE oder Socket verwenden.

Weitere Informationen:QEMU Wiki - Networking und ua der QEMU-Networking-Bereich von Wikibooks

Empfohlen auch:Leitfaden für Fortgeschrittene zum Umgang mit VLANs


Der einfachste und effektivste Weg, den ich für mich herausgefunden habe, war dieser.

Zusammenfassend auf dem Host:

tunctl -u <username>

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/conf/wlan0/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/tap0/proxy_arp

ip link set tap0 up
route add -host 192.168.0.20 dev tap0   <-- to be changed by you.

und für den Gast führen Sie es einfach mit:

aus
kvm -hda ~/fedora.qcow2 -net nic -net tap,ifname=tap0,script=no -usb

oder

qemu -hda ~/fedora.qcow2 -net nic -net tap,ifname=tap0,script=no -usb 

Sie müssen nur einen tap konfigurieren Gerät, das Ihrem Benutzer gehört, aktivieren Sie arp proxying und konfigurieren Sie eine route zwischen Ihrem Gastgeber und Gast.

Der Autor (und ich) haben das verwendet, um das Problem der Überbrückung zu einem wlan0 zu lösen Gerät, das vom Linux-Kernel nicht unterstützt wird. Aber es funktioniert auch mit einer kabelgebundenen Verbindung. Im arp Konfiguration, ändern Sie einfach wlan0 bis eth0 .

Die Gast-IP-Adresse muss von Ihnen als DHCP festgelegt werden funktioniert nicht.

Und Sie können Ihren Host bereits anpingen.


Linux
  1. Windows – Freigegebener Ordner zwischen Qemu Windows Guest und Linux Host?

  2. So greifen Sie vom Host auf den Netzwerk-Namespace des Docker-Containers zu

  3. Wie kann ich andere Container in einem Docker-Netzwerk über ihren Hostnamen anpingen?

  4. Wie pinge ich hinter einem Proxy?

  5. Netzwerk:Zielhost nicht erreichbar

Gewusst wie:FreeBSD-Netzwerkverwaltung

So starten Sie das Netzwerk unter Ubuntu 22.04 neu

So richten Sie VirtualBox Guest Additions und Network ein

Wie vernetzt man Ubuntu und Windows 10?

Wie emuliert man den Raspberry Pi 2 auf QEMU?

Wie kann die angezeigte Bildschirmauflösung auf QEMU / KVM erhöht werden?