I have been trying to find out something like that in Internet and after couple of days looking I decided to make it myself. The configurations I am going the share are based on the topology below:
All this is Olive11.1R1.14 with recommended configuration of quad core CPU and at 8G ram and fast hard drive/SSD? I am running that on FreeBSD 8.2/64x. All images are in separate folders called r1; r2; r3 etc. I believe the configuration example below should be enough for everyone who wants to run Olive to extend my config with more routers.
Installation is straightforward
cd /usr/ports/emulators/qemu ; make; make install
QEMU Configuration
qemu -m 512 -no-acpi -hda r1/Olive11.1R1.14.img -nographic -daemonize -serial telnet::2001,server,nowait -localtime -net nic,vlan=11,macaddr=00:01:00:60:01:01,model=e1000 -net tap,vlan=11,ifname=tap0 -net nic,vlan=12,macaddr=00:01:10:60:01:02,model=e1000 -net tap,vlan=12,ifname=tap1 -net nic,vlan=13,macaddr=00:01:00:60:11:03,model=e1000 -net tap,vlan=13,ifname=tap2 -net nic,vlan=14,macaddr=00:01:00:70:01:04,model=e1000 -net tap,vlan=14,ifname=tap3
qemu -m 512 -no-acpi -hda r2/Olive11.1R2.14.img -nographic -daemonize -serial telnet::2002,server,nowait -localtime -net nic,vlan=21,macaddr=00:01:03:61:01:01,model=e1000 -net tap,vlan=21,ifname=tap4 -net nic,vlan=22,macaddr=00:01:20:60:01:02,model=e1000 -net tap,vlan=22,ifname=tap5 -net nic,vlan=23,macaddr=00:01:00:60:21:03,model=e1000 -net tap,vlan=23,ifname=tap6 -net nic,vlan=24,macaddr=00:01:00:71:01:04,model=e1000 -net tap,vlan=24,ifname=tap7
qemu -m 512 -no-acpi -hda r3/Olive11.1R3.14.img -nographic -daemonize -serial telnet::2003,server,nowait -localtime -net nic,vlan=31,macaddr=00:aa:00:62:01:01,model=e1000 -net tap,vlan=31,ifname=tap8 -net nic,vlan=32,macaddr=00:aa:30:60:01:02,model=e1000 -net tap,vlan=32,ifname=tap9 -net nic,vlan=33,macaddr=00:aa:00:60:31:03,model=e1000 -net tap,vlan=33,ifname=tap10 -net nic,vlan=34,macaddr=00:aa:00:72:01:04,model=e1000 -net tap,vlan=34,ifname=tap11 -net nic,vlan=35,macaddr=00:ba:31:60:01:02,model=e1000 -net tap,vlan=35,ifname=tap12 -net nic,vlan=36,macaddr=10:aa:36:60:01:02,model=e1000 -net tap,vlan=36,ifname=tap13
qemu -m 512 -no-acpi -hda r4/Olive11.1R4.14.img -nographic -daemonize -serial telnet::2004,server,nowait -localtime -net nic,vlan=41,macaddr=00:aa:00:63:01:01,model=e1000 -net tap,vlan=41,ifname=tap14 -net nic,vlan=42,macaddr=00:aa:11:60:01:02,model=e1000 -net tap,vlan=42,ifname=tap15 -net nic,vlan=43,macaddr=00:aa:00:60:41:03,model=e1000 -net tap,vlan=43,ifname=tap16 -net nic,vlan=44,macaddr=00:aa:00:73:01:04,model=e1000 -net tap,vlan=44,ifname=tap17 -net nic,vlan=45,macaddr=00:ba:32:60:01:02,model=e1000 -net tap,vlan=45,ifname=tap18 -net nic,vlan=46,macaddr=10:aa:37:60:01:02,model=e1000 -net tap,vlan=46,ifname=tap19
qemu -m 512 -no-acpi -hda r5/Olive11.1R5.14.img -nographic -daemonize -serial telnet::2005,server,nowait -localtime -net nic,vlan=51,macaddr=00:aa:00:64:01:01,model=e1000 -net tap,vlan=51,ifname=tap20 -net nic,vlan=52,macaddr=00:aa:12:60:01:02,model=e1000 -net tap,vlan=52,ifname=tap21 -net nic,vlan=53,macaddr=00:aa:00:60:51:03,model=e1000 -net tap,vlan=53,ifname=tap22 -net nic,vlan=54,macaddr=00:aa:00:74:01:04,model=e1000 -net tap,vlan=54,ifname=tap23 -net nic,vlan=55,macaddr=00:ba:33:60:01:02,model=e1000 -net tap,vlan=55,ifname=tap24 -net nic,vlan=56,macaddr=10:aa:38:60:01:02,model=e1000 -net tap,vlan=56,ifname=tap25
qemu -m 512 -no-acpi -hda r6/Olive11.1R6.14.img -nographic -daemonize -serial telnet::2006,server,nowait -localtime -net nic,vlan=61,macaddr=00:aa:00:65:01:01,model=e1000 -net tap,vlan=61,ifname=tap26 -net nic,vlan=62,macaddr=00:aa:13:60:01:02,model=e1000 -net tap,vlan=62,ifname=tap27 -net nic,vlan=63,macaddr=00:aa:00:60:61:03,model=e1000 -net tap,vlan=63,ifname=tap28 -net nic,vlan=64,macaddr=00:aa:00:75:01:04,model=e1000 -net tap,vlan=64,ifname=tap29 -net nic,vlan=65,macaddr=00:ba:34:60:01:02,model=e1000 -net tap,vlan=65,ifname=tap30 -net nic,vlan=66,macaddr=10:aa:39:60:01:02,model=e1000 -net tap,vlan=66,ifname=tap31
qemu -m 512 -no-acpi -hda r7/Olive11.1R7.14.img -nographic -daemonize -serial telnet::2007,server,nowait -localtime -net nic,vlan=71,macaddr=00:aa:00:66:01:01,model=e1000 -net tap,vlan=71,ifname=tap32 -net nic,vlan=33,macaddr=00:aa:14:60:01:02,model=e1000 -net tap,vlan=33,ifname=tap33 -net nic,vlan=73,macaddr=00:aa:00:60:71:03,model=e1000 -net tap,vlan=73,ifname=tap34 -net nic,vlan=74,macaddr=00:aa:00:76:01:04,model=e1000 -net tap,vlan=74,ifname=tap35 -net nic,vlan=75,macaddr=00:ba:35:60:01:02,model=e1000 -net tap,vlan=75,ifname=tap36 -net nic,vlan=76,macaddr=10:aa:40:60:01:02,model=e1000 -net tap,vlan=76,ifname=tap37
All this is Olive11.1R1.14 with recommended configuration of quad core CPU and at 8G ram and fast hard drive/SSD? I am running that on FreeBSD 8.2/64x. All images are in separate folders called r1; r2; r3 etc. I believe the configuration example below should be enough for everyone who wants to run Olive to extend my config with more routers.
Installation is straightforward
cd /usr/ports/emulators/qemu ; make; make install
QEMU Configuration
qemu -m 512 -no-acpi -hda r1/Olive11.1R1.14.img -nographic -daemonize -serial telnet::2001,server,nowait -localtime -net nic,vlan=11,macaddr=00:01:00:60:01:01,model=e1000 -net tap,vlan=11,ifname=tap0 -net nic,vlan=12,macaddr=00:01:10:60:01:02,model=e1000 -net tap,vlan=12,ifname=tap1 -net nic,vlan=13,macaddr=00:01:00:60:11:03,model=e1000 -net tap,vlan=13,ifname=tap2 -net nic,vlan=14,macaddr=00:01:00:70:01:04,model=e1000 -net tap,vlan=14,ifname=tap3
qemu -m 512 -no-acpi -hda r2/Olive11.1R2.14.img -nographic -daemonize -serial telnet::2002,server,nowait -localtime -net nic,vlan=21,macaddr=00:01:03:61:01:01,model=e1000 -net tap,vlan=21,ifname=tap4 -net nic,vlan=22,macaddr=00:01:20:60:01:02,model=e1000 -net tap,vlan=22,ifname=tap5 -net nic,vlan=23,macaddr=00:01:00:60:21:03,model=e1000 -net tap,vlan=23,ifname=tap6 -net nic,vlan=24,macaddr=00:01:00:71:01:04,model=e1000 -net tap,vlan=24,ifname=tap7
qemu -m 512 -no-acpi -hda r3/Olive11.1R3.14.img -nographic -daemonize -serial telnet::2003,server,nowait -localtime -net nic,vlan=31,macaddr=00:aa:00:62:01:01,model=e1000 -net tap,vlan=31,ifname=tap8 -net nic,vlan=32,macaddr=00:aa:30:60:01:02,model=e1000 -net tap,vlan=32,ifname=tap9 -net nic,vlan=33,macaddr=00:aa:00:60:31:03,model=e1000 -net tap,vlan=33,ifname=tap10 -net nic,vlan=34,macaddr=00:aa:00:72:01:04,model=e1000 -net tap,vlan=34,ifname=tap11 -net nic,vlan=35,macaddr=00:ba:31:60:01:02,model=e1000 -net tap,vlan=35,ifname=tap12 -net nic,vlan=36,macaddr=10:aa:36:60:01:02,model=e1000 -net tap,vlan=36,ifname=tap13
qemu -m 512 -no-acpi -hda r4/Olive11.1R4.14.img -nographic -daemonize -serial telnet::2004,server,nowait -localtime -net nic,vlan=41,macaddr=00:aa:00:63:01:01,model=e1000 -net tap,vlan=41,ifname=tap14 -net nic,vlan=42,macaddr=00:aa:11:60:01:02,model=e1000 -net tap,vlan=42,ifname=tap15 -net nic,vlan=43,macaddr=00:aa:00:60:41:03,model=e1000 -net tap,vlan=43,ifname=tap16 -net nic,vlan=44,macaddr=00:aa:00:73:01:04,model=e1000 -net tap,vlan=44,ifname=tap17 -net nic,vlan=45,macaddr=00:ba:32:60:01:02,model=e1000 -net tap,vlan=45,ifname=tap18 -net nic,vlan=46,macaddr=10:aa:37:60:01:02,model=e1000 -net tap,vlan=46,ifname=tap19
qemu -m 512 -no-acpi -hda r5/Olive11.1R5.14.img -nographic -daemonize -serial telnet::2005,server,nowait -localtime -net nic,vlan=51,macaddr=00:aa:00:64:01:01,model=e1000 -net tap,vlan=51,ifname=tap20 -net nic,vlan=52,macaddr=00:aa:12:60:01:02,model=e1000 -net tap,vlan=52,ifname=tap21 -net nic,vlan=53,macaddr=00:aa:00:60:51:03,model=e1000 -net tap,vlan=53,ifname=tap22 -net nic,vlan=54,macaddr=00:aa:00:74:01:04,model=e1000 -net tap,vlan=54,ifname=tap23 -net nic,vlan=55,macaddr=00:ba:33:60:01:02,model=e1000 -net tap,vlan=55,ifname=tap24 -net nic,vlan=56,macaddr=10:aa:38:60:01:02,model=e1000 -net tap,vlan=56,ifname=tap25
qemu -m 512 -no-acpi -hda r6/Olive11.1R6.14.img -nographic -daemonize -serial telnet::2006,server,nowait -localtime -net nic,vlan=61,macaddr=00:aa:00:65:01:01,model=e1000 -net tap,vlan=61,ifname=tap26 -net nic,vlan=62,macaddr=00:aa:13:60:01:02,model=e1000 -net tap,vlan=62,ifname=tap27 -net nic,vlan=63,macaddr=00:aa:00:60:61:03,model=e1000 -net tap,vlan=63,ifname=tap28 -net nic,vlan=64,macaddr=00:aa:00:75:01:04,model=e1000 -net tap,vlan=64,ifname=tap29 -net nic,vlan=65,macaddr=00:ba:34:60:01:02,model=e1000 -net tap,vlan=65,ifname=tap30 -net nic,vlan=66,macaddr=10:aa:39:60:01:02,model=e1000 -net tap,vlan=66,ifname=tap31
qemu -m 512 -no-acpi -hda r7/Olive11.1R7.14.img -nographic -daemonize -serial telnet::2007,server,nowait -localtime -net nic,vlan=71,macaddr=00:aa:00:66:01:01,model=e1000 -net tap,vlan=71,ifname=tap32 -net nic,vlan=33,macaddr=00:aa:14:60:01:02,model=e1000 -net tap,vlan=33,ifname=tap33 -net nic,vlan=73,macaddr=00:aa:00:60:71:03,model=e1000 -net tap,vlan=73,ifname=tap34 -net nic,vlan=74,macaddr=00:aa:00:76:01:04,model=e1000 -net tap,vlan=74,ifname=tap35 -net nic,vlan=75,macaddr=00:ba:35:60:01:02,model=e1000 -net tap,vlan=75,ifname=tap36 -net nic,vlan=76,macaddr=10:aa:40:60:01:02,model=e1000 -net tap,vlan=76,ifname=tap37
BRIDGING CONFIG
[root@naa /usr/olive]# cat link.sh
printf "delete the bridge interfaces...\n"
ifconfig bridge0 destroy
ifconfig bridge1 destroy
ifconfig bridge2 destroy
ifconfig bridge3 destroy
ifconfig bridge4 destroy
ifconfig bridge5 destroy
ifconfig bridge6 destroy
ifconfig bridge7 destroy
ifconfig bridge8 destroy
ifconfig bridge9 destroy
ifconfig bridge10 destroy
ifconfig bridge11 destroy
printf "creating the bridge interfaces..\n"
ifconfig bridge0 create
ifconfig bridge1 create
ifconfig bridge2 create
ifconfig bridge3 create
ifconfig bridge4 create
ifconfig bridge5 create
ifconfig bridge6 create
ifconfig bridge7 create
ifconfig bridge8 create
ifconfig bridge9 create
ifconfig bridge10 create
ifconfig bridge11 create
printf "bring up all interfaces..\n"
ifconfig bridge0 up
ifconfig bridge1 up
ifconfig bridge2 up
ifconfig bridge3 up
ifconfig bridge4 up
ifconfig bridge5 up
ifconfig bridge6 up
ifconfig bridge7 up
ifconfig bridge8 up
ifconfig bridge9 up
ifconfig bridge10 up
ifconfig bridge11 up
printf "adding the tap interfaces to the bridges..\n"
ifconfig bridge0 addm tap0 addm tap4
ifconfig bridge1 addm tap1 addm tap8
ifconfig bridge2 addm tap2 addm tap14
ifconfig bridge3 addm tap5 addm tap9
ifconfig bridge4 addm tap6 addm tap15
ifconfig bridge5 addm tap10 addm tap16
ifconfig bridge6 addm tap11 addm tap20
ifconfig bridge7 addm tap12 addm tap26
ifconfig bridge8 addm tap17 addm tap21
ifconfig bridge9 addm tap18 addm tap32
ifconfig bridge10 addm tap22 addm tap27
ifconfig bridge11 addm tap23 addm tap33
printf "done.\n"
[root@naa /usr/olive]#
[ #top - almost empty routers with just ospf between all of them]
* During the boot all these processes are taking 100% of each CPU.
21981 root 2 44 0 802M 712M ucond 0 5:58 2.05% qemu
21970 root 1 44 0 802M 712M select 3 5:48 1.95% qemu
22007 root 1 44 0 802M 712M select 2 6:10 1.17% qemu
22054 root 1 66 0 802M 712M select 2 6:41 1.07% qemu
21992 root 1 44 0 802M 712M select 3 5:50 0.68% qemu
22039 root 1 45 0 802M 712M select 3 6:31 0.59% qemu
22024 root 1 45 0 802M 712M select 1 6:26 0.29% qemu
root@jr1> show ospf neighbor
Address Interface State ID Pri Dead
10.10.12.2 em0.0 Full 10.10.12.2 128 36
10.10.13.3 em1.0 Full 10.10.13.3 128 38
10.10.14.4 em2.0 Full 10.10.14.4 128 34
root@jr1>
root@jr2> show ospf neighbor
Address Interface State ID Pri Dead
10.10.12.1 em0.0 Full 10.10.12.1 128 39
10.10.23.3 em1.0 Full 10.10.13.3 128 33
10.10.24.4 em2.0 Full 10.10.14.4 128 35
root@jr2>
root@jr3> show ospf neighbor
Address Interface State ID Pri Dead
10.10.13.1 em0.0 Full 10.10.12.1 128 35
10.10.23.2 em1.0 Full 10.10.12.2 128 39
10.10.34.4 em2.0 Full 10.10.14.4 128 38
10.10.36.6 em4.0 Full 10.10.36.6 128 34
root@jr3>
root@jr4> show ospf neighbor
Address Interface State ID Pri Dead
10.10.14.1 em0.0 Full 10.10.12.1 128 33
10.10.24.2 em1.0 Full 10.10.12.2 128 35
10.10.34.3 em2.0 Full 10.10.13.3 128 39
10.10.45.5 em3.0 Full 10.10.35.5 128 39
10.10.47.7 em4.0 Full 10.10.47.7 128 33
root@jr4>
root@jr5> show ospf neighbor
Address Interface State ID Pri Dead
10.10.45.4 em1.0 Full 10.10.14.4 128 28
10.10.56.6 em2.0 Full 10.10.36.6 128 33
10.10.57.7 em3.0 Full 10.10.47.7 128 34
root@jr5>
root@jr6> show ospf neighbor
Address Interface State ID Pri Dead
10.10.36.3 em0.0 Full 10.10.13.3 128 38
10.10.56.5 em1.0 Full 10.10.35.5 128 38
root@jr6>
root@jr7> show ospf neighbor
Address Interface State ID Pri Dead
10.10.47.4 em0.0 Full 10.10.14.4 128 34
10.10.57.5 em1.0 Full 10.10.35.5 128 34
root@jr7>