One Hat Cyber Team
Your IP :
216.73.216.115
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
doc
/
qemu-kvm
/
system
/
devices
/
View File Name :
net.html
<!DOCTYPE html> <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Network emulation — QEMU qemu-kvm-6.2.0-53.module+el8.10.0+2055+8eb7870b.4 documentation</title> <link rel="shortcut icon" href="../../_static/qemu_32x32.png"/> <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" /> <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" /> <link rel="index" title="Index" href="../../genindex.html" /> <link rel="search" title="Search" href="../../search.html" /> <link rel="next" title="NVMe Emulation" href="nvme.html" /> <link rel="prev" title="Inter-VM Shared Memory device" href="ivshmem.html" /> <script src="../../_static/js/modernizr.min.js"></script> </head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search"> <a href="../../index.html" class="icon icon-home"> QEMU <img src="../../_static/qemu_128x128.png" class="logo" alt="Logo"/> </a> <div class="version"> 6.2.0 </div> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div> <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> <p class="caption"><span class="caption-text">Contents:</span></p> <ul class="current"> <li class="toctree-l1"><a class="reference internal" href="../../about/index.html">About QEMU</a></li> <li class="toctree-l1 current"><a class="reference internal" href="../index.html">System Emulation</a><ul class="current"> <li class="toctree-l2"><a class="reference internal" href="../quickstart.html">Quick Start</a></li> <li class="toctree-l2"><a class="reference internal" href="../invocation.html">Invocation</a></li> <li class="toctree-l2 current"><a class="reference internal" href="../device-emulation.html">Device Emulation</a><ul class="current"> <li class="toctree-l3"><a class="reference internal" href="../device-emulation.html#common-terms">Common Terms</a></li> <li class="toctree-l3 current"><a class="reference internal" href="../device-emulation.html#emulated-devices">Emulated Devices</a><ul class="current"> <li class="toctree-l4"><a class="reference internal" href="ivshmem.html">Inter-VM Shared Memory device</a></li> <li class="toctree-l4 current"><a class="current reference internal" href="#">Network emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="nvme.html">NVMe Emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="usb.html">USB emulation</a></li> <li class="toctree-l4"><a class="reference internal" href="vhost-user.html">vhost-user back ends</a></li> <li class="toctree-l4"><a class="reference internal" href="virtio-pmem.html">virtio pmem</a></li> <li class="toctree-l4"><a class="reference internal" href="vhost-user-rng.html">QEMU vhost-user-rng - RNG emulation</a></li> </ul> </li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="../keys.html">Keys in the graphical frontends</a></li> <li class="toctree-l2"><a class="reference internal" href="../mux-chardev.html">Keys in the character backend multiplexer</a></li> <li class="toctree-l2"><a class="reference internal" href="../monitor.html">QEMU Monitor</a></li> <li class="toctree-l2"><a class="reference internal" href="../images.html">Disk Images</a></li> <li class="toctree-l2"><a class="reference internal" href="../virtio-net-failover.html">QEMU virtio-net standby (net_failover)</a></li> <li class="toctree-l2"><a class="reference internal" href="../linuxboot.html">Direct Linux Boot</a></li> <li class="toctree-l2"><a class="reference internal" href="../generic-loader.html">Generic Loader</a></li> <li class="toctree-l2"><a class="reference internal" href="../guest-loader.html">Guest Loader</a></li> <li class="toctree-l2"><a class="reference internal" href="../barrier.html">QEMU Barrier Client</a></li> <li class="toctree-l2"><a class="reference internal" href="../vnc-security.html">VNC security</a></li> <li class="toctree-l2"><a class="reference internal" href="../tls.html">TLS setup for network services</a></li> <li class="toctree-l2"><a class="reference internal" href="../secrets.html">Providing secret data to QEMU</a></li> <li class="toctree-l2"><a class="reference internal" href="../authz.html">Client authorization</a></li> <li class="toctree-l2"><a class="reference internal" href="../gdb.html">GDB usage</a></li> <li class="toctree-l2"><a class="reference internal" href="../managed-startup.html">Managed start up options</a></li> <li class="toctree-l2"><a class="reference internal" href="../bootindex.html">Managing device boot order with bootindex properties</a></li> <li class="toctree-l2"><a class="reference internal" href="../cpu-hotplug.html">Virtual CPU hotplug</a></li> <li class="toctree-l2"><a class="reference internal" href="../pr-manager.html">Persistent reservation managers</a></li> <li class="toctree-l2"><a class="reference internal" href="../targets.html">QEMU System Emulator Targets</a></li> <li class="toctree-l2"><a class="reference internal" href="../security.html">Security</a></li> <li class="toctree-l2"><a class="reference internal" href="../multi-process.html">Multi-process QEMU</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../../user/index.html">User Mode Emulation</a></li> <li class="toctree-l1"><a class="reference internal" href="../../tools/index.html">Tools</a></li> <li class="toctree-l1"><a class="reference internal" href="../../interop/index.html">System Emulation Management and Interoperability</a></li> <li class="toctree-l1"><a class="reference internal" href="../../specs/index.html">System Emulation Guest Hardware Specifications</a></li> <li class="toctree-l1"><a class="reference internal" href="../../devel/index.html">Developer Information</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> <nav class="wy-nav-top" aria-label="top navigation"> <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../../index.html">QEMU</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="breadcrumbs navigation"> <ul class="wy-breadcrumbs"> <li><a href="../../index.html">Docs</a> »</li> <li><a href="../index.html">System Emulation</a> »</li> <li><a href="../device-emulation.html">Device Emulation</a> »</li> <li>Network emulation</li> <li class="wy-breadcrumbs-aside"> <a href="https://gitlab.com/qemu-project/qemu/blob/master/docs/system/devices/net.rst" class="fa fa-gitlab"> Edit on GitLab</a> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <div class="section" id="network-emulation"> <span id="pcsys-005fnetwork"></span><h1>Network emulation<a class="headerlink" href="#network-emulation" title="Permalink to this headline">¶</a></h1> <p>QEMU can simulate several network cards (e.g. PCI or ISA cards on the PC target) and can connect them to a network backend on the host or an emulated hub. The various host network backends can either be used to connect the NIC of the guest to a real network (e.g. by using a TAP devices or the non-privileged user mode network stack), or to other guest instances running in another QEMU process (e.g. by using the socket host network backend).</p> <div class="section" id="using-tap-network-interfaces"> <h2>Using TAP network interfaces<a class="headerlink" href="#using-tap-network-interfaces" title="Permalink to this headline">¶</a></h2> <p>This is the standard way to connect QEMU to a real network. QEMU adds a virtual network device on your host (called <code class="docutils literal notranslate"><span class="pre">tapN</span></code>), and you can then configure it as if it was a real ethernet card.</p> <div class="section" id="linux-host"> <h3>Linux host<a class="headerlink" href="#linux-host" title="Permalink to this headline">¶</a></h3> <p>As an example, you can download the <code class="docutils literal notranslate"><span class="pre">linux-test-xxx.tar.gz</span></code> archive and copy the script <code class="docutils literal notranslate"><span class="pre">qemu-ifup</span></code> in <code class="docutils literal notranslate"><span class="pre">/etc</span></code> and configure properly <code class="docutils literal notranslate"><span class="pre">sudo</span></code> so that the command <code class="docutils literal notranslate"><span class="pre">ifconfig</span></code> contained in <code class="docutils literal notranslate"><span class="pre">qemu-ifup</span></code> can be executed as root. You must verify that your host kernel supports the TAP network interfaces: the device <code class="docutils literal notranslate"><span class="pre">/dev/net/tun</span></code> must be present.</p> <p>See <a class="reference internal" href="../invocation.html#sec-005finvocation"><span class="std std-ref">Invocation</span></a> to have examples of command lines using the TAP network interfaces.</p> </div> <div class="section" id="windows-host"> <h3>Windows host<a class="headerlink" href="#windows-host" title="Permalink to this headline">¶</a></h3> <p>There is a virtual ethernet driver for Windows 2000/XP systems, called TAP-Win32. But it is not included in standard QEMU for Windows, so you will need to get it separately. It is part of OpenVPN package, so download OpenVPN from : <a class="reference external" href="https://openvpn.net/">https://openvpn.net/</a>.</p> </div> </div> <div class="section" id="using-the-user-mode-network-stack"> <h2>Using the user mode network stack<a class="headerlink" href="#using-the-user-mode-network-stack" title="Permalink to this headline">¶</a></h2> <p>By using the option <code class="docutils literal notranslate"><span class="pre">-net</span> <span class="pre">user</span></code> (default configuration if no <code class="docutils literal notranslate"><span class="pre">-net</span></code> option is specified), QEMU uses a completely user mode network stack (you don’t need root privilege to use the virtual network). The virtual network configuration is the following:</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">guest</span> <span class="p">(</span><span class="mf">10.0</span><span class="o">.</span><span class="mf">2.15</span><span class="p">)</span> <span class="o"><------></span> <span class="n">Firewall</span><span class="o">/</span><span class="n">DHCP</span> <span class="n">server</span> <span class="o"><-----></span> <span class="n">Internet</span> <span class="o">|</span> <span class="p">(</span><span class="mf">10.0</span><span class="o">.</span><span class="mf">2.2</span><span class="p">)</span> <span class="o">|</span> <span class="o">----></span> <span class="n">DNS</span> <span class="n">server</span> <span class="p">(</span><span class="mf">10.0</span><span class="o">.</span><span class="mf">2.3</span><span class="p">)</span> <span class="o">|</span> <span class="o">----></span> <span class="n">SMB</span> <span class="n">server</span> <span class="p">(</span><span class="mf">10.0</span><span class="o">.</span><span class="mf">2.4</span><span class="p">)</span> </pre></div> </div> <p>The QEMU VM behaves as if it was behind a firewall which blocks all incoming connections. You can use a DHCP client to automatically configure the network in the QEMU VM. The DHCP server assign addresses to the hosts starting from 10.0.2.15.</p> <p>In order to check that the user mode network is working, you can ping the address 10.0.2.2 and verify that you got an address in the range 10.0.2.x from the QEMU virtual DHCP server.</p> <p>Note that ICMP traffic in general does not work with user mode networking. <code class="docutils literal notranslate"><span class="pre">ping</span></code>, aka. ICMP echo, to the local router (10.0.2.2) shall work, however. If you’re using QEMU on Linux >= 3.0, it can use unprivileged ICMP ping sockets to allow <code class="docutils literal notranslate"><span class="pre">ping</span></code> to the Internet. The host admin has to set the ping_group_range in order to grant access to those sockets. To allow ping for GID 100 (usually users group):</p> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">echo</span> <span class="mi">100</span> <span class="mi">100</span> <span class="o">></span> <span class="o">/</span><span class="n">proc</span><span class="o">/</span><span class="n">sys</span><span class="o">/</span><span class="n">net</span><span class="o">/</span><span class="n">ipv4</span><span class="o">/</span><span class="n">ping_group_range</span> </pre></div> </div> <p>When using the built-in TFTP server, the router is also the TFTP server.</p> <p>When using the <code class="docutils literal notranslate"><span class="pre">'-netdev</span> <span class="pre">user,hostfwd=...'</span></code> option, TCP or UDP connections can be redirected from the host to the guest. It allows for example to redirect X11, telnet or SSH connections.</p> </div> <div class="section" id="hubs"> <h2>Hubs<a class="headerlink" href="#hubs" title="Permalink to this headline">¶</a></h2> <p>QEMU can simulate several hubs. A hub can be thought of as a virtual connection between several network devices. These devices can be for example QEMU virtual ethernet cards or virtual Host ethernet devices (TAP devices). You can connect guest NICs or host network backends to such a hub using the <code class="docutils literal notranslate"><span class="pre">-netdev</span> <span class="pre">hubport</span></code> or <code class="docutils literal notranslate"><span class="pre">-nic</span> <span class="pre">hubport</span></code> options. The legacy <code class="docutils literal notranslate"><span class="pre">-net</span></code> option also connects the given device to the emulated hub with ID 0 (i.e. the default hub) unless you specify a netdev with <code class="docutils literal notranslate"><span class="pre">-net</span> <span class="pre">nic,netdev=xxx</span></code> here.</p> </div> <div class="section" id="connecting-emulated-networks-between-qemu-instances"> <h2>Connecting emulated networks between QEMU instances<a class="headerlink" href="#connecting-emulated-networks-between-qemu-instances" title="Permalink to this headline">¶</a></h2> <p>Using the <code class="docutils literal notranslate"><span class="pre">-netdev</span> <span class="pre">socket</span></code> (or <code class="docutils literal notranslate"><span class="pre">-nic</span> <span class="pre">socket</span></code> or <code class="docutils literal notranslate"><span class="pre">-net</span> <span class="pre">socket</span></code>) option, it is possible to create emulated networks that span several QEMU instances. See the description of the <code class="docutils literal notranslate"><span class="pre">-netdev</span> <span class="pre">socket</span></code> option in <a class="reference internal" href="../invocation.html#sec-005finvocation"><span class="std std-ref">Invocation</span></a> to have a basic example.</p> </div> </div> </div> </div> <footer> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <a href="nvme.html" class="btn btn-neutral float-right" title="NVMe Emulation" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a> <a href="ivshmem.html" class="btn btn-neutral" title="Inter-VM Shared Memory device" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a> </div> <hr/> <div role="contentinfo"> <p> © Copyright 2021, The QEMU Project Developers. </p> </div> Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. <!-- Empty para to force a blank line after "Built with Sphinx ..." --> <p></p> <p>This documentation is for QEMU version 6.2.0.</p> <p><a href="../../about/license.html">QEMU and this manual are released under the GNU General Public License, version 2.</a></p> </footer> </div> </div> </section> </div> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT:'../../', VERSION:'qemu-kvm-6.2.0-53.module+el8.10.0+2055+8eb7870b.4', LANGUAGE:'None', COLLAPSE_INDEX:false, FILE_SUFFIX:'.html', HAS_SOURCE: false, SOURCELINK_SUFFIX: '.txt' }; </script> <script type="text/javascript" src="../../_static/jquery.js"></script> <script type="text/javascript" src="../../_static/underscore.js"></script> <script type="text/javascript" src="../../_static/doctools.js"></script> <script type="text/javascript" src="../../_static/js/theme.js"></script> <script type="text/javascript"> jQuery(function () { SphinxRtdTheme.Navigation.enable(true); }); </script> </body> </html>