VDEQ(1)
π VDEQ β the manual page, but make it a group chat π
okay bestie, welcome to VDEQ(1), from the General Commands Manual. sit down, grab a boba, we're gonna make QEMU/KVM talk to a VDE network and it's gonna be iconic. β¨
πΈ NAME πΈ
vdeq β a Virtual Distributed Ethernet wrapper for QEMU/KVM virtual machines π¦
β¨ SYNOPSIS β¨
like, the whole vibe in one block:
vdeq qemu [ --mod octalmode ] QEMU_OPTIONS -net
vde[,vlan=n][,sock=socketpath][,port=n] QEMU_OPTIONS
vdeq kvm [ --mod octalmode ] KVM_OPTIONS -net
vde[,vlan=n][,sock=socketpath][,port=n] KVM_OPTIONS
vde{qemu_name} [ --mod octalmode ] QEMU_OPTIONS -net
vde[,vlan=n][,sock=socketpath][,port=n] QEMU_OPTIONS
π OLD SYNOPSIS π
yes she has a vintage era, we don't talk about it but we DO respect it:
vdeq qemu [ --mod octalmode ] [ -sock socketpath [ ,socketpath [ ,... ]
] ] [ qemu_args ]
vde{qemu_name} [ -sock socketpath [ ,socketpath [ ,... ] ] ] [
qemu_args ]
π DESCRIPTION π
so vdeq is a wrapper β a lil handler, a middleman, a main character β that starts up a QEMU/KVM virtual machine already connected to a VDE network. π«Ά It does this by using the qemu/kvm -tun-fd parameter to set up the connection with a vde_switch.
this command right here:
vdeq qemu -b c -hda=sampledisk
starts a qemu machine that boots from the sampledisk image and has a ne2000 ethernet interface connected to the standard vde_switch. and this one:
vdeq kvm -b c -hda=sampledisk
starts a kvm machine that boots from the sampledisk image and has a ne2000 ethernet interface connected to the standard vde_switch. same energy, different engine. π₯
not me telling you that you can ALSO make symbolic links to the vdeq executable so your command is cuter and shorter. π
If the link has a name that begins with vde, the remaining part of the name is taken as the qemu command. For example if vdeq is linked to vdeqemu:
vdeqemu -b c -hda=sampledisk
starts qemu as above. And if vdeq is linked to vdekvm:
vdekvm -b c -hda=sampledisk
starts kvm with the same parameters. literally the same thing but the name ate. π
okay so the new syntax is consistent with the new Qemu 0.8.0 network parameters. Using vdeq it's possible to specify a vde interface in the same way as user, tap or socket interfaces. the sock= parameter can be used to use a specific socket. π§
bestie, important: please note that what qemu names asvlanis not related to the 802.1q VLAN managed by thevde_switch. don't get it twisted. π
port= can be used to specify the port of the switch, otherwise the first allocatable port is assigned. and the following command runs a qemu VM with two ethernet interfaces connected to the standard switch and to the switch with local socket "/tmp/my.ctl", port 10, respectively:
vde qemu -net nic,vlan=0 -net nic,vlan=1 -net vde,vlan=0 -net
vde,vlan=1,sock=/tmp/my.ctl,port=10
vdeqemu -net nic,vlan=0 -net nic,vlan=1 -net vde,vlan=0 -net
vde,vlan=1,sock=/tmp/my.ctl,port=10
and the following command runs a kvm VM with two ethernet interfaces connected to the standard switch and to the switch with local socket "/tmp/my.ctl", port 10, respectively:
vde kvm -net nic,vlan=0 -net nic,vlan=1 -net vde,vlan=0 -net
vde,vlan=1,sock=/tmp/my.ctl,port=10
vdekvm -net nic,vlan=0 -net nic,vlan=1 -net vde,vlan=0 -net
vde,vlan=1,sock=/tmp/my.ctl,port=10
and for the vintage girlies: the old syntax can be used with Qemu 0.8.0, but all the vde interfaces are assigned to vlan 0. π
vdeq qemu -sock /tmp/vde.ctl,/tmp/my.ctl -b c -hda=sampledisk
vdeqemu -sock /tmp/vde.ctl,/tmp/my.ctl -b c -hda=sampledisk
both start qemu with one ethernet interface connected both to the standard switch and to the switch with local socket "/tmp/my.ctl". fr fr. π
π OPTIONS π
the whole menu, no skips, no crumbs:
--mod octalmodeβ specify the mode for comm socket. π-sock socketpathβ specify the UNIX socket to be used by local programs for joining the VDE. The default value is"/tmp/vde.ctl". It is also possible to indicate severalsocketpath(comma separated, no blanks): in this case several interfaces are defined. The firstsocketpathis connected to the firstne2kinterface and so on. π¦-h,-help,--helpβ print a Usage help. that's it, that's the whole thing, she's helpful and humble. π
β NOTE β
Qemu has changed its syntax for networking (cvs Nov.15 2005). As a temporary solution use vdeoq and vdeoqemu instead of vdeq and vdeqemu if you are running a qemu with the old syntax. π
By default qemu uses the same MAC address for every virtual machine, so if you plan to use several instances of qemu be sure to explicitly set a different MAC address for each virtual machine.
β οΈ While generating your address beware to not use broadcast/multicast reserved MACs, ethernet rules say: the multicast bit is the low-order bit of the first byte, which is "the first bit on the wire". For example34:12:de:ad:be:efis an unicast address,35:12:de:ad:be:efis a multicast address (see ETHERNET MULTICAST ADDRESSES section inhttp://www.iana.org/assignments/ethernet-numbersfor more informations). do NOT skip this part bestie, the network will simply not slay. π
π NOTICE π
Virtual Distributed Ethernet is not related in any way with www.vde.com ("Verband der Elektrotechnik, Elektronik und Informationstechnik" i.e. the German "Association for Electrical, Electronic & Information Technologies"). nope, not the same VDE, different girlies entirely. π
π SEE ALSO π
vde_switch(1), vde_plug(1), vde_plug2tap(1), dpipe(1).
π AUTHOR π
VDE is a project by Renzo Davoli <renzo@cs.unibo.it> πΈ
okay that's the whole page, you're basically a network engineer now, no cap. this was Virtual Distributed Ethernet, dated December 6, 2006, from VDEQ(1) β mwah, go forth and connect. π
β¨π«Ά
π¦ where this page comes from
- alpine 3.24: vde2-doc 2.3.3-r7 Β· GPL
- arch rolling: vde2 2.3.3-10 Β· GPL-2.0-or-later AND LGPL-2.1-or-later
- nixos 26.05: vde2 2.3.3
- nixpkgs unstable: vde2 2.3.3
- opensuse-leap 16.0: vde2 2.3.2+svn587-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: vde2 2.3.2+svn587-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: vde2 2.3.2+svn587-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: vde2 2.3.2+svn587-160000.2.2 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms