Article

Pier Carlo Chiodi

GNS3 Topology: MPLS VPN and Traffic Engineering

Written by pierky from http://pierky.tel/ on January 23rd, 2009 | 28 Comments

Another great lab from Pierky! Thanks!!

Routers P1, P2, P3 and P4 are in the core, just running OSPF in area 0. Each router has Loopback 0 with address 10.0.1.x (where x is the router number - P1 = 10.0.1.1).

Provider-edge routers PE1, PE2, PE3 and PE4 run OSPF in area 0 too; they have Loopback 0 with address 10.0.2.x.
Each PE routers has iBGP with P3, that is the route-reflector for AS 100.

All P and PE routers run LDP and are enabled for MPLS traffic-engineering.

Both Customer1 and Customer2 have 3 sites: 1 HQ and 2 branch offices. HQs have a /25 subnet, branch offices a /26.
Customer1 needs a full-mesh logical topology, with each site connecting directly to others sites.
Customer2 needs a hub-and-spoke topology, where each branch office sends traffic through the HQ to reach the other site.

Some clouds connected to Virtual PC Simulator are used to replace CE routers in order to lower system resources needed to run the topology. The VPCS config file is in the package (startup.vpc); you can find VPCS here: http://wiki.freecode.com.cn

A MPLS Traffic Engineering (TE) tunnel is configured (but administratively down) between PE1 and PE3; it has an explicit path through P1 and P2.

PE1#sh mpls traffic-eng tunnels tu1

Name: PE1_t1                              (Tunnel1) Destination: 10.0.2.3
Status:
Admin: admin-down Oper: down   Path: not valid   Signalling: Down
path option 1, type explicit 1

Config Parameters:
Bandwidth: 500      kbps (Global)  Priority: 7  7   Affinity: 0×0/0xFFFF
Metric Type: TE (default)
AutoRoute:  enabled   LockDown: disabled  Loadshare: 500      bw-based
auto-bw: disabled

Shortest Unconstrained Path Info:
Path Weight: 30 (TE)
Explicit Route: 10.0.0.8 10.0.0.9 10.0.0.2 10.0.0.3
10.0.0.17 10.0.0.16 10.0.2.3
History:
Tunnel:
Time since created: 4 minutes, 6 seconds

As said, the tunnel is administratively down, so traffic from PE1 to PE3 is equal-cost routed via P1 and P4:

PE1#sh ip route 10.0.2.3
Routing entry for 10.0.2.3/32
Known via “ospf 1″, distance 110, metric 31, type intra area
Last update from 10.0.0.11 on Ethernet0/1, 00:03:42 ago
Routing Descriptor Blocks:
10.0.0.11, from 10.0.2.3, 00:03:42 ago, via Ethernet0/1
Route metric is 31, traffic share count is 1
* 10.0.0.9, from 10.0.2.3, 00:03:42 ago, via Ethernet0/0
Route metric is 31, traffic share count is 1

This is the path from VPCS1 to VPCS2 when the tunnel is down:

VPCS 1 >tracert 192.168.1.194
traceroute to 192.168.1.194, 12 hops max
1   192.168.1.129   204.000 ms  266.000 ms  93.000 ms
2   10.0.0.11   719.000 ms  609.000 ms  531.000 ms
3   10.0.0.6   437.000 ms  438.000 ms  500.000 ms
4   192.168.1.193   828.000 ms  828.000 ms  453.000 ms
5   192.168.1.194   500.000 ms  532.000 ms  469.000 ms

Lets open the tunnel:

PE1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
PE1(config)#int Tu
PE1(config)#int Tunnel 1
PE1(config-if)#no
PE1(config-if)#no shu
PE1(config-if)#no shutdown
PE1(config-if)#
PE1#
*Mar  1 00:05:07.335: %SYS-5-CONFIG_I: Configured from console by console
PE1#
*Mar  1 00:05:07.623: %LINK-3-UPDOWN: Interface Tunnel1, changed state to up
PE1#
*Mar  1 00:05:09.383: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up
PE1#

Config Parameters:
Bandwidth: 500      kbps (Global)  Priority: 7  7   Affinity: 0×0/0xFFFF
Metric Type: TE (default)
AutoRoute:  enabled   LockDown: disabled  Loadshare: 500      bw-based
auto-bw: disabled

PE1#sh mpls traffic-eng tunnels tu1

InLabel  :  -
OutLabel : Ethernet0/0, 31
RSVP Signalling Info:
Src 10.0.2.1, Dst 10.0.2.3, Tun_Id 1, Tun_Instance 1
RSVP Path Info:
My Address: 10.0.0.8
Explicit Route: 10.0.0.9 10.0.0.2 10.0.0.3 10.0.0.17
10.0.0.16 10.0.2.3
Record Route:  NONE
Tspec: ave rate=500 kbits, burst=1000 bytes, peak rate=500 kbits
RSVP Resv Info:
Record Route:  NONE
Fspec: ave rate=500 kbits, burst=1000 bytes, peak rate=500 kbits
Shortest Unconstrained Path Info:
Path Weight: 30 (TE)
Explicit Route: 10.0.0.8 10.0.0.9 10.0.0.2 10.0.0.3
10.0.0.17 10.0.0.16 10.0.2.3
History:
Tunnel:
Time since created: 5 minutes, 18 seconds
Time since path change: 25 seconds
Current LSP:
Uptime: 25 seconds

Name: PE1_t1                              (Tunnel1) Destination: 10.0.2.3
Status:
Admin: up         Oper: up     Path: valid       Signalling: connected

path option 1, type explicit 1 (Basis for Setup, path weight 30)

That’s the new route to PE3:

PE1#sh ip route 10.0.2.3
Routing entry for 10.0.2.3/32
Known via “ospf 1″, distance 110, metric 31, type intra area
Routing Descriptor Blocks:
* directly connected, via Tunnel1
Route metric is 31, traffic share count is 1

The whole OSPF area 0 knows a tunnel is up with some allocated bandwidth; this is what PE2 knows:

PE2#show mpls traffic-eng topology
My_System_id: 10.0.2.2, Globl Link Generation 36
Signalling error holddown: 10 sec

IGP Id: 10.0.1.1, MPLS TE Id:10.0.1.1 Router Node
link[0 ]:DR Intf Address: 10.0.0.3, gen:36
frag_id 0, Intf Address:10.0.0.2
TE metric:10, IGP metric:10, attribute_flags:0×0
physical_bw: 10000 (kbps), max_reservable_bw_global: 5000 (kbps)
max_reservable_bw_sub: 0 (kbps)

Global Pool       Sub Pool
Total Allocated   Reservable        Reservable
BW (kbps)         BW (kbps)         BW (kbps)
—————   ———–       ———-
bw[0]:            0             5000                0
bw[1]:            0             5000                0
bw[2]:            0             5000                0
bw[3]:            0             5000                0
bw[4]:            0             5000                0
bw[5]:            0             5000                0
bw[6]:            0             5000                0
bw[7]:          500             4500                0

And this is the new VPCS1 to VPCS2 path:

VPCS 1 >tracert 192.168.1.194
traceroute to 192.168.1.194, 12 hops max
1   192.168.1.129   172.000 ms  171.000 ms  78.000 ms
2   10.0.0.9   609.000 ms  594.000 ms  641.000 ms
3   10.0.0.3   547.000 ms  641.000 ms  672.000 ms
4   192.168.1.193   594.000 ms  484.000 ms  485.000 ms
5   192.168.1.194   563.000 ms  500.000 ms  641.000 ms

Of course, the return traffic still flows through the usual path; you have to turn on the PE3 Tu1 tunnel interface to force the return traffic on the same path.

Routers Used: 3640

IOS: c3640-jk9s-mz.124-16

Feature of Topology: MPLS, Traffic Engineering, PE-CE routing, VRF, RSVP, LDP

Topology:

VPN:

VRF:

Download: GNS3-Labs:: MPLS VPN and Traffic Engineering

32,325 views

Tags: , , , , , , , , ,

28 Responses to “GNS3 Topology: MPLS VPN and Traffic Engineering”

  1. Fernando Fernando

    Hi

    When I run the file GNS 3 0.6 V2 License I have this errors..
    Can I help me?.

    Thanks
    Fernando

    Dynagen management console for Dynamips (adapted for GNS3)
    Copyright (c) 2008 GNS3 Project

    => ———Traceback lines (saved in exception.log)———-
    Traceback (most recent call last):

    File “GNS3\Workspace.pyo”, line 773, in __action_OpenFile

    File “GNS3\Workspace.pyo”, line 791, in openFile

    File “GNS3\Workspace.pyo”, line 619, in load_netfile

    File “GNS3\NETFile.pyo”, line 532, in import_net_file

    File “GNS3\NETFile.pyo”, line 228, in configure_node

    File “GNS3\NETFile.pyo”, line 193, in record_image

    File “GNS3\Config\Objects.pyo”, line 59, in __setattr__

    AttributeError: value of `chassis’ must be of type:

    ———————————————————–

    =>

  2. Pier Carlo Chiodi pierky

    Sorry man, I don’t have a clue about these errors.
    I can just suggest you to open the .net file with a text editor and check that all paths are correct.
    Maybe you can have more luck on GNS3 Forum: http://www.gns3.net/
    Bye

  3. Oliver Oliver

    Pier Carlo, I am running this lab, I set up a correct idlepc and I am using a Core2Duo with 2Gb of memory. Despite this when all the routers are running the cpu is always at 100%. Is this by design or does it work in a different way for you? thanks,

  4. Pier Carlo Chiodi pierky

    Hi Oliver, this lab uses a lot of routers, so many resources are required.
    I can run the lab with your same hardware, even if with high CPU and mem utilizations.
    I can suggest you to set the idlepc to other values and try again. Try to run a router, enter in “enable” mode, then calc the idlepc; doing so you have to login in all router and put them in enable.

  5. Security-Planet.de Security-Planet.de

    Training Implementing Cisco MPLS…

    Besucher des Kurses Implementing Cisco MPLS, die nach dem Training noch mehr üben möchten, können das problemlos mit Dynamips/GNS3 machen. Die “Fleißarbeit” dazu habe ich schon einmal gemacht und die .net-Datei, sowie die Startkonfigura…

  6. enrico enrico

    3.0.6 is not working properly,instead i advice to use 3.0.5 . i even could not install SDM onto router with 3.0.6, but when shifted to 3.0.5,it worked.

  7. GNS3 Lab: MPLS VPN and Traffic Engineering « Pierky’s Blog GNS3 Lab: MPLS VPN and Traffic Engineering « Pierky’s Blog

    [...] Open this lab on GNS3-Labs.com [...]

  8. Andrei Stefan Andrei Stefan

    Hello everyone,

    I am having a small problem concernig this topology.If i try to run VPC before I start gns ,the dynamips server will fail to start.If i try to run gns first,then vpc won;t start.I should mention i’m using 3.06.Do you have any ideas for me?

    Thank in advance

  9. Pier Carlo Chiodi pierky

    Hi Andrei,

    I’ve built this lab with 3.06, so I don’t think this is the problem.

    Can you post the error you get when you start GNS3 after VPC?

    I don’t have a clue about this issue; I’m just thinking about a port conflict. You should check “[[Cloud]]” connections (.net file) and VPC lport and rport (startup.vpc) are OK: for example

    .net:

    connections = PE1:e0/3:NIO_udp:DYNAMIPS_LISTENING_PORT:127.0.0.1:VPC_LISTENING_PORT

    startup.vpc:

    conf lport VPC_LISTENING_PORT
    conf rport DYNAMIPS_LISTENING_PORT

    I hope you can solve this problem!

    Bye

  10. mofar mofar

    Hi all,

    I’m using 3.06. I got error “Could not connect to dynamips server 127.0.0.1:7200″. I try replace 127.0.0.1 to localhost, then it work.

    Problem when I start the vpc. Replace back localhost to 127.0.0.1. Get back the can’t connect to dynamips server error.

    Please help, tq.

  11. Pier Carlo Chiodi pierky

    Hi Mofar,

    you can try to replace [127.0.0.1:7200] with [localhost:7200] and leave Clouds connections with 127.0.0.1 (PE3:e0/3:NIO_udp:5006:127.0.0.1:5007)

    I hope this will work,

    bye

  12. mofar mofar

    Hi Pierky, thanks for your prompt response. I try like that but got this error: Can’t connect to the hypervisor on port 7200.

  13. n2s_technology n2s_technology

    Hi pierky .
    i want to download ios c3640-jk9s-mz.124-16 .can you help me ?
    thanks

  14. Pier Carlo Chiodi pierky

    Hi n2s, try this: http://www.blindhog.net/gns3-how-to-find-pix-images-pix-serial-numbers-and-ios-images-using-google/

    Bye

  15. ANGEL CANARIO ANGEL CANARIO

    i have all the cisco images.

    angel

  16. LBSources LBSources

    @Angel Sharing IOS images is NOT allowed.

  17. Spyros Spyros

    Hi guys,

    the new CCIE R&S requires the follwoing equipment;

    1841 series routers - IOS 12.4(T) – Advanced Enterprise Services (IOS)
    3825 series routers - IOS 12.4(T) – Advanced Enterprise Services (IOS)

    Is it any way that the above routers will be added min GNS3?

    Is it any plan on that?

    Thanks,
    Spyros

  18. Pier Carlo Chiodi pierky

    Hi Spyros, all I can suggest you is to stay tuned on http://www.ipflow.utc.fr/index.php/Cisco_7200_Simulator

    Actually it seems no 1841/3825 are in the todo list… Anyway, are you sure you can’t use other (supported) routers to practice for your CCIE exam? I really don’t know anything about this exam, but maybe you can have same features on other routers with a proper IOS image.

    Bye,

    Pierky

  19. JIbu Ninan Kurian JIbu Ninan Kurian

    Hi Guys
    i am new in VPN i have one Question about VPN Design. i need to connect 15 Branch to HQ over MPLS VPN. main point is all branch users get ip address from HQ DHCP server (Same VLANs,Same IP Subnets) is it possible or no ?

  20. Pier Carlo Chiodi pierky

    Hi, maybe you could take a look at http://www.cisco.com/en/US/docs/ios/12_2t/12_2t8/feature/guide/ftdhmpls.html

    Anyway I’m a bit confused about your design. Do you have same subnet on every branch? Is it a L2 VPN?

  21. Jibu Ninan Kurian Jibu Ninan Kurian

    Hi,
    we dont have any existing VPN connection. now we are palnning to connect our branches throw IP-VPN (MPLS). each branch have maximum 10 to 15 users. ISP will provide IP-VPN connection to each branch, we have DHCP Server in HQ i need each branch user pc get IP address from HQ DHCP server is it possible ?

  22. Pier Carlo Chiodi pierky

    Yes, you can use your HQ DHCP Server by adding the “ip helper-address XXXX” line on the LAN-facing interface of your CE router.

  23. Jibu Ninan Kurian Jibu Ninan Kurian

    Hi
    i have another question switch port (uplink to CE router) is trunk mode or L3 port which one i can use

  24. Halil ERDUR Halil ERDUR

    Hi pierky ;

    thasnk for your sharing ..

    but it can not work..i get “Could not connect to dynamips server 127.0.0.1:7200″. and i din not understand your explanation..coul you please give me some extra info about the solution..

    thanks a lot

  25. Halil ERDUR Halil ERDUR

    autostart = False
    [localhost:7200]

    changed first 2 line as above …it works fine..thanks

  26. Jose Zafra Jose Zafra

    I having problem with configuration file when I download the labs, Please reply back using my email account at jazafra@yahoo.com

    Thanks,

    Jose

  27. ansar ansar

    hai to day i worked in gns3 simulator i can bring the system and connect to the router but i cant assign the ip in that system any body pls reply me

  28. sona sona

    no matter every thing is ok ansar just in each router u must configure by using r.c on each cnsole then continue the configuration prosuder

Leave a Reply



Subscribe To GNS3-Labs

Subscribe to GNS3 Labs :: Cisco Router Simulator Network Topologies


Show Love!

If you would like to donate for the time it takes to do all of this, feel free to use the link below. Thank you in advance for any contribution you make :)

Categories