Hallo,
ich möchte gerne meine QEMU VMs an mein "echtes" Netzwerk anschließen mit bridge-utils. Nun gibt es viele HOWTOs wie man das machen kann. Leider komme ich mit jedem HOWTO immer nur zu dem Ergebnis: === 8< === [drindt@heron ~]$ qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.18-2-versatile -initrd initrd.img-2.6.18-2-versatile -hda hda.img -append "root=/dev/sda1" -net nic,vlan=0 -net tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup warning: could not configure /dev/net/tun: no virtual network emulation Could not initialize device 'tap' === >8 ===
die Rechnte von /dev/net/tun habe ich von Hand angepasset. Selinux und Firewall habe ich temporär deaktiviert um mehr herauszufinden. STRACE war auch nicht sehr erfolgreich: === 8< === open("/dev/net/tun", O_RDWR|O_LARGEFILE) = 4 ioctl(4, TUNSETIFF, 0xbfe3e920) = -1 EPERM (Operation not permitted) === >8 ===
hat jemand das Ganze zum laufen?
On Monday 22 January 2007 17:06, Daniel Rindt wrote:
=== 8< === open("/dev/net/tun", O_RDWR|O_LARGEFILE) = 4 ioctl(4, TUNSETIFF, 0xbfe3e920) = -1 EPERM (Operation not permitted) === >8 ===
hat jemand das Ganze zum laufen?
Afaik kann man im aktuellen Linux Kernel als User kein tap Device erstellen, auch wenn man auf /dev/net/tun zugreifen kann, entweder mußt Du qemu als root starten (unschön) oder Du nimmst tunctl aus den usermodelinux utilities, z.B. von http://www.user-mode-linux.org/cvs/*checkout*/tools/tunctl/tunctl.c?rev=1.4 und erstellst damit als root ein tap Device für Deinen Benutzer, z.B.
Kompiliereen mit "make tunctl"
# ./tunctl -u daniel
und benutzt das dann für qemu (ifname=tap0 evt. anpassen). So hat es bei mir geklappt, im Endeffekt steht in tunctl.c iirc ziemlich der gleiche Code drin, den sonst qemu ausführt, um das Interface zu erstellen.
Grüße, Till
de-users@lists.fedoraproject.org