Запуск QEMU-хоста в GNS3

Сегодня понадобилось собрать для тестирования MPLS вот такую лабу. Для работы со сложными топологиями очень удобна программа GNS3, которая является графической надстройкой над dynamips/dynagen и QEMU. В первую очередь она пригодится для подготовки к экзаменам Cisco, т.к. PacketTracer умеет далеко не все. Мне было необходимо запустить несколько экземпляров RouterOS, соединить их, настроить маршрутизацию и MPLS.

Но при создании QEMU-хоста возникла проблема. Если просто создать хост и запустить, то все хорошо, консоль работает, телнет коннектится, но стоит только добавить линки с другими узлами (а это можно делать только в выключенном состоянии, т.к. GNS3 пока не умеет hot-link), то QEMU-хост больше не стартует. Опытным путем удалось установить, что дело в qemu-kvm, который в Ubuntu собран без поддержки udp. Было принято решение собрать свой пакет с нужной фунциональностью.

На форуме GNS есть множество патчей под разные версии, но мне было лень править их под последнюю, которая есть в репозиторях Ubuntu. Поэтому я скачал патчи из репозитория Gentoo (сюрприз-сюрприз, тут все работает из коробки :) ). Из архива мне понадобился только 0029-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch

mkdir qemu-kvm
cd qemu-kvm
sudo apt-get build-dep qemu-kvm
apt-get source qemu-kvm
wget -c http://dev.gentoo.org/~lu_zero/distfiles/qemu-1.0-patches.tar.xz
tar xvJf qemu-1.0-patches.tar.xz
cd qemu-kvm-1.0+noroms/
patch -p1 < ../patches/0029-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch
dpkg-buildpackage -b -uc -nc -j4
sudo dpkg -i ../qemu_1.0+noroms-0ubuntu13_amd64.deb

После этих действий QEMU-хосты можно соединять и они будут нормально стартовать и работать.
P.S.: вроде как в QEMU версии 1.1 обещают включить эту фунциональность в апстрим.