Skip to main content

JNCx Lab Topology

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


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> 



Popular posts from this blog

IOS on Unix (IOU)

source http://evilrouters.net/2011/01/18/cisco-iou-faq/ What is IOU? From the Cisco Engineering Education web site (a long time ago): IOS on Unix (IOU) is a fully working version of IOS that runs as a user mode UNIX (Solaris) process. IOU is built as a native Solaris image and run just like any other program. IOU supports all platform independent protocols and features. What operating systems does IOU run on? It is my understanding that, initially, IOU was Solaris (SPARC) only. Nowadays, however, there are also builds for OS X and Linux. Similar to dynamips, IOU allows you to build out a network topology on a computer, without the need for physical routers. This is useful for validating designs, proof-of-concept testing, and certification self-study. Is my system compatible with IOU? You will need to be running the operating system that your IOU image were built for, obviously. Other than that, there are no special requirements to run IOU. It is not very CPU- or memory-intensive, unlik...

Impressed with Poly brand for conference headphones

I previously used my Sony XM4 headphones for calls and initially found them versatile for multiple purposes. However, as my meetings extended to several hours, I noticed they became less comfortable. To address this, I upgraded to wireless headphones from Poly, which offer significantly improved comfort. While I don’t plan to use them for music listening, my initial impression is very positive.

Flapping LDP/RSVP on Olive

I had a strange problem where the LDP and RSVP was flapping on JunOS/Olive and I think I managed to fix it by changing the driver from e1000 to i82559er and lo0.0 with 127.0.0.1.  I don't want to spend more time investigating it but if someone have similar problem at least this comment could be a good start. root@jr2>  *** MPLS *** May 21 14:27:21.472443 Session 4.4.4.4 hold timer expired in Operational state May 21 14:27:21.473451 Connection 4.4.4.4 state Open -> Closed May 21 14:27:21.473838 Session 4.4.4.4 GR state Operational -> Nonexistent May 21 14:27:21.473923 Session 4.4.4.4 state Operational -> Closing May 21 14:27:21.474054 LDP session 4.4.4.4 is down, reason: hold time expired May 21 14:27:21.474364 RPD_LDP_SESSIONDOWN: LDP session 4.4.4.4 is down, reason: hold time expired May 21 14:27:21.475567 Session 4.4.4.4 state Closing -> Nonexistent May 21 14:27:21.476180 CHANGE   317024 /52          nhid ...