Skip to main content
  1. Posts/

Using Tunnel in Libvirt

·2 mins·
libvirt libvirt kvm
Table of Contents

Ada beberapa tunnel yang dapat Anda gunakan pada interface VM di libvirt untuk kebutuhan komunikasi baik antar VM baik di mesin host yang sama atau antar mesin host.

Multicast tunnel
#

Jaringan ini membuat antar VM dapat terhubung dan berkomunikasi pada multicast group yang sama baik pada mesin host yang sama atau antar host.

Perhatikan pada source address yang digunakan harus dari blok alamat multicast.

Domain XML

<interface type="mcast">
  <source address="224.0.1.1" port="5558"/>
  <model type="virtio"/>
</interface>

TCP tunnel
#

TCP tunnel untuk konfigurasinya membutuhkan satu VM sebagai server lalu untuk semua VM lainnya dapat dikonfigurasi sebagai client. Semua lalu lintas jaringan akan dirutekan antar VM melalui server.

Domain XML VM-1

<interface type="server">
  <mac address="52:54:00:4c:f8:fd"/>
  <source address="10.10.100.1" port="5558"/>
  <model type="virtio"/>
</interface>

Domain XML VM-2

<interface type="client">
  <mac address="52:54:00:4c:f8:fd"/>
  <source address="10.10.100.1" port="5558"/>
  <model type="virtio"/>
</interface>

UDP unicast tunnel
#

UDP unicast tunnel menyediakan jaringan virtual yang memungkinkan koneksi antara instans QEMU menggunakan infrastruktur UDP QEMU. Untuk source address adalah alamat sebagai endpoint pengiriman paket UDP. Sedangkan local address adalah alamat untuk menentukan darimana paket UDP berasal.

Jadi untuk source ini bisa dikatakan source port VM sedangkan local adalah destination port karena akan dipasang sebagai source pada VM lain agar dapat terhubung.

Domain XML VM-1

<interface type="udp">
  <source address="127.0.0.1" port="11115">
    <local address="127.0.0.1" port="11116"/>
  </source>
  <model type="virtio"/>
</interface>

Domain XML VM-2

<interface type="udp">
  <source address="127.0.0.1" port="11116">
    <local address="127.0.0.1" port="11115"/>
  </source>
  <model type="virtio"/>
</interface>

Vhost-user tunnel
#

Dengan menggunakan vhost-user, Anda dapat membuat jaringan virtual untuk memungkinkan komunikasi antar mesin virtual (VM) melalui unix socket.

Domain XML VM-1

  <interface type='vhostuser'>
    <mac address='52:54:00:3b:83:1a'/>
    <source type='unix' path='/tmp/vhost1.sock' mode='server'/>
    <model type='virtio'/>
  </interface>

Domain XML VM-2

  <interface type='vhostuser'>
    <mac address='52:54:00:3b:83:1b'/>
    <source type='unix' path='/tmp/vhost2.sock' mode='client'>
      <reconnect enabled='yes' timeout='10'/>
    </source>
    <model type='virtio'/>
    <driver queues='5'/>
  </interface>

Related

Quality of Service di Libvirt
·1 min
libvirt libvirt kvm
Direct Attachment Interface in Libvirt
·2 mins
libvirt libvirt kvm
Create Virtual Networks in Libvirt
·5 mins
libvirt libvirt kvm
Install KVM and Virt-Manager
·3 mins
libvirt libvirt ubuntu kvm
Install WebVirtCloud
·2 mins
libvirt libvirt ubuntu kvm
Enable Nested Virtualization pada KVM
·1 min
libvirt kvm libvirt