Sunday, June 19, 2011

IPexpert IOU Topology

IOU has been leaked.  L2IOU has been leaked. It was only a matter of time before someone did this...  Might as well be me :)

Here's a NETMAP file that recreates the IPexpert CCIE R&S topology, and a wrapper script to start it. And as my special gift, a bash script to convert the config files provided by IPexpert to a format that (L2)IOU can work with.

I might do up some diagrams at some point, but for now you'll have to figure it out from these text files. 

Enjoy!

IPExpert NETMAP topology:

#
# NETMAP File for IPexpert/ProctorLabs Topology
#

# Switch to Switch
11:4/3 14:4/3
11:5/0 14:5/0
11:5/1 13:5/1
11:5/2 13:5/2
11:5/3 12:5/3
11:6/0 12:6/0
12:4/3 13:4/3
12:5/0 13:5/0
12:5/1 14:5/1
12:5/2 14:5/2
13:5/3 14:5/3
13:6/0 14:6/0

11:6/1 12:6/1

#Switch to Router
11:0/1 1:0/0
11:0/2 2:0/0
11:1/0 4:0/0
11:1/1 5:0/0
12:0/1 1:0/1
12:0/2 2:0/1
12:1/2 6:0/0
12:1/3 7:0/0
12:2/0 8:0/0
12:2/1 9:0/0
13:1/0 4:0/1
13:1/1 5:0/1
14:1/2 6:0/1
14:1/3 7:0/1
14:2/0 8:0/1
14:2/1 9:0/1

#BackBone Routers
11:2/3 21:0/0
12:3/0 22:0/0
12:3/1 23:0/0

# Frame Relay
2:1/0 99:0/0
4:1/0 99:0/1
5:1/0 99:0/2
6:1/0 99:0/3

# Serial Links
2:1/1 5:1/1
6:1/1 9:1/1
6:1/2 9:1/2
7:1/0 8:1/0
 Wrapper script to start all the devices

#!/bin/bash
#R1
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2001 -- -e 1 -s 1 1 &
sleep 1s
#R2
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2002 -- -e 1 -s 1 2 &
sleep 1s
#R4
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2004 -- -e 1 -s 1 4 &
sleep 1s
#R5
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2005 -- -e 1 -s 1 5 &
sleep 1s
#R6
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2006 -- -e 1 -s 1 6 &
sleep 1s
#R7
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2007 -- -e 1 -s 1 7 &
sleep 1s
#R8
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2008 -- -e 1 -s 1 8 &
sleep 1s
#R9
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2009 -- -e 1 -s 1 9 &
sleep 1s
#CAT1
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linuxl2-upk9-ms.M -p 2011 -- -e 7 -s 0 11 &
sleep 1s
#SW2
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linuxl2-upk9-ms.M -p 2012 -- -e 7 -s 0 12 &
sleep 1s
#SW3
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linuxl2-upk9-ms.M -p 2013 -- -e 6 -s 0 13 &
sleep 1s
#SW4
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linuxl2-upk9-ms.M -p 2014 -- -e 6 -s 0 14 &
sleep 1s
#BB1 frame switch
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2021 -- -e 1 -s 0 21 &
sleep 1s
#BB2
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2022 -- -e 1 -s 0 22 &
sleep 1s
#BB3
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2023 -- -e 1 -s 0 23 &
sleep 1s
# Frame Switch
~/ipex_iou/wrapper-linux -m ~/ipex_iou/i86bi_linux-adventerprisek9-ms -p 2099 -- -e 0 -s 1 99 &
sleep 1s
exit 0
And a bash script to convert the config files

#!/bin/bash

# Utility to convert IPexpert base config files to be (L2)IOU compatilbe
#
# Originally written by Jason D'Silva
#
# For any comments or bugs please send emails to brokennetwork@gmail.com
#
# This code is subject to the GPLv2 license. 


# Start with the usage information
if [ ${#} -eq 0 ]; then
  echo ""
  echo "Usage: ipx2iou "
  echo ""
  echo " can be either a single file, or a directory containing multiple files."
  echo ""
  echo "ipx2iou is designed to take the device config files provided by IPexpert and"
  echo "convert them to a format that IOU and L2IOU can use directly."
  echo ""

  exit 0

elif [ ${#} -gt 1 ]; then
  echo ""
  echo "Error: Too many arguments"
  echo ""

  exit 1

fi

mod_r_serial () # Function to modify router serial interfaces
{
  #if there's a leading leading directory remove it
  txt=${1#*/}

  if [ ${txt} = 'R2.txt' ] || [ ${txt} = 'R5.txt' ]; then

    sed 's/Serial0\/1\/0/Serial1\/0/' -i ${1}
    sed 's/Serial0\/2\/0/Serial1\/1/' -i ${1}

  elif [ ${txt} = 'R6.txt' ] || [ ${txt} = 'R9.txt' ]; then

    sed 's/Serial0\/1\/0/Serial1\/0/' -i ${1}
    sed 's/Serial0\/2\/0/Serial1\/1/' -i ${1}
    sed 's/Serial0\/2\/1/Serial1\/2/' -i ${1}

  elif [ ${txt} = 'R4.txt' ] || [ ${txt} = 'R7.txt' ] || [ ${txt} = 'R8.txt' ]; then

    sed 's/Serial0\/0\/0/Serial1\/0/' -i ${1}

  fi
}

mod_r_ether () # Function to modify router ethernet interfaces
{
  #if there's a leading leading directory remove it
  txt=${1#*/}

  if [ ${txt} = 'R2.txt' ]; then
    sed 's/GigabitEther/Ether/' -i ${1}
  else
    sed 's/FastEther/Ether/' -i ${1}
  fi
}

mod_s_ether () # Function to modify switch ethernet interfaces
{
  sed 's/FastEthernet0\/10/Ethernet2\/2/' -i ${1}
  sed 's/FastEthernet0\/11/Ethernet2\/3/' -i ${1}
  sed 's/FastEthernet0\/12/Ethernet3\/0/' -i ${1}
  sed 's/FastEthernet0\/13/Ethernet3\/1/' -i ${1}
  sed 's/FastEthernet0\/14/Ethernet3\/2/' -i ${1}
  sed 's/FastEthernet0\/15/Ethernet3\/3/' -i ${1}
  sed 's/FastEthernet0\/16/Ethernet4\/0/' -i ${1}
  sed 's/FastEthernet0\/17/Ethernet4\/1/' -i ${1}
  sed 's/FastEthernet0\/18/Ethernet4\/2/' -i ${1}
  sed 's/FastEthernet0\/19/Ethernet4\/3/' -i ${1}
  sed 's/FastEthernet0\/20/Ethernet5\/0/' -i ${1}
  sed 's/FastEthernet0\/21/Ethernet5\/1/' -i ${1}
  sed 's/FastEthernet0\/22/Ethernet5\/2/' -i ${1}
  sed 's/FastEthernet0\/23/Ethernet5\/3/' -i ${1}
  sed 's/FastEthernet0\/24/Ethernet6\/0/' -i ${1}
  sed 's/FastEthernet0\/0/Ethernet0\/0/' -i ${1}
  sed 's/FastEthernet0\/1/Ethernet0\/1/' -i ${1}
  sed 's/FastEthernet0\/2/Ethernet0\/2/' -i ${1}
  sed 's/FastEthernet0\/3/Ethernet0\/3/' -i ${1}
  sed 's/FastEthernet0\/4/Ethernet1\/0/' -i ${1}
  sed 's/FastEthernet0\/5/Ethernet1\/1/' -i ${1}
  sed 's/FastEthernet0\/6/Ethernet1\/2/' -i ${1}
  sed 's/FastEthernet0\/7/Ethernet1\/3/' -i ${1}
  sed 's/FastEthernet0\/8/Ethernet2\/0/' -i ${1}
  sed 's/FastEthernet0\/9/Ethernet2\/1/' -i ${1}
  sed 's/GigabitEthernet0\/1/Ethernet6\/1/' -i ${1}
  sed 's/GigabitEthernet0\/2/Ethernet6\/2/' -i ${1}
}

convert () # Main function to control what to apply to each config file
{
  #if there's a leading leading directory remove it
  txt=${1#*/}

  case ${txt} in

    R1.txt   ) mod_r_ether ${1}; echo "${txt} Done";;
    R2.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R4.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R5.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R6.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R7.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R8.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    R9.txt   ) mod_r_ether ${1}; mod_r_serial ${1}; echo "${txt} Done";;
    Cat1.txt ) mod_s_ether ${1}; echo "${txt} Done";;
    Cat2.txt ) mod_s_ether ${1}; echo "${txt} Done";;
    Cat3.txt ) mod_s_ether ${1}; echo "${txt} Done";;
    Cat4.txt ) mod_s_ether ${1}; echo "${txt} Done";;
    BB1.txt  ) echo "${txt} is already compatible.  Skipping...";;
    BB2.txt  ) echo "${txt} is already compatible.  Skipping...";;
    BB3.txt  ) echo "${txt} is already compatible.  Skipping...";;
    *        ) echo "${txt} is not a valid config file.  Skipping...";;

  esac
}

# Logic to differentiate between user input of directory or file
if [ -d ${1} ]; then

  echo "${1} is a directory."
  echo "ipx2iou will now convert all valid config files in $1"

  #If the user put the trailing / on the directory remove it.
  dir=${1%/}

  for file in $(ls -1 $1); do
    echo "Converting file ${dir}/${file}"
    convert ${dir}/${file}
  done

  exit 0

elif [ -f ${1} ]; then

  echo "${1} is a file."
  echo "ipx2iou will now convert ${1}..."

  convert ${1}

  exit 0
fi



***UPDATE***

I completely forgot to post up the frame switch config.

frame-relay switching
!
interface Serial0/0
 no ip address
 encapsulation frame-relay
 logging event subif-link-status
 logging event dlci-status-change
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 204 interface Serial0/1 402
 frame-relay route 205 interface Serial0/2 502
 frame-relay route 206 interface Serial0/3 602
 frame-relay route 214 interface Serial0/1 412
 frame-relay route 215 interface Serial0/2 512
 frame-relay route 216 interface Serial0/3 612
 frame-relay route 224 interface Serial0/1 422
 frame-relay route 225 interface Serial0/2 522
 frame-relay route 226 interface Serial0/3 622
!
interface Serial0/1
 no ip address
 encapsulation frame-relay
 logging event subif-link-status
 logging event dlci-status-change
 shutdown
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 402 interface Serial0/0 204
 frame-relay route 405 interface Serial0/2 504
 frame-relay route 406 interface Serial0/3 604
 frame-relay route 412 interface Serial0/0 214
 frame-relay route 415 interface Serial0/2 514
 frame-relay route 416 interface Serial0/3 614
 frame-relay route 422 interface Serial0/0 224
 frame-relay route 425 interface Serial0/2 524
 frame-relay route 426 interface Serial0/3 624
!
interface Serial0/2
 no ip address
 encapsulation frame-relay
 logging event subif-link-status
 logging event dlci-status-change
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 502 interface Serial0/0 205
 frame-relay route 504 interface Serial0/1 405
 frame-relay route 506 interface Serial0/3 605
 frame-relay route 512 interface Serial0/0 215
 frame-relay route 514 interface Serial0/1 415
 frame-relay route 516 interface Serial0/3 615
 frame-relay route 522 interface Serial0/0 225
 frame-relay route 524 interface Serial0/1 425
 frame-relay route 526 interface Serial0/3 625
!
interface Serial0/3
 no ip address
 encapsulation frame-relay
 logging event subif-link-status
 logging event dlci-status-change
 serial restart-delay 0
 frame-relay intf-type dce
 frame-relay route 602 interface Serial0/0 206
 frame-relay route 604 interface Serial0/1 406
 frame-relay route 605 interface Serial0/2 506
 frame-relay route 612 interface Serial0/0 216
 frame-relay route 614 interface Serial0/1 416
 frame-relay route 615 interface Serial0/2 516
 frame-relay route 622 interface Serial0/0 226
 frame-relay route 624 interface Serial0/1 426
 frame-relay route 625 interface Serial0/2 526
!

***Update #2***

A reader took an interest in the conversion script above and modified it to work with the INE Lab config files. If you're interested you can find the modified script at http://www.inetpro.org/wiki/INEonIOU

 

55 comments:

  1. Great Job !!

    Were you able to make Layer 2 Etherchannel work with L2IOU.

    Thanks

    ReplyDelete
  2. I hadn't actually spent any real time labbing with this yet. So far it was just getting things set up. Now that you ask though I am having some issues.

    I see what you mean about the etherchannels... I was able to get an LACP link up after about 15 minutes of fighting with it, but I couldn't ping between switches of the LAG. I brought up a couple routers and they cannot ping each other through the switches and over the LAG either. In fact, they can't ping the directly connected switch either. And at some point the LAG seems to have broken down since now I'm seeing CDP on both ports instead of just the po1 interface.

    sh ether summ shows all is well though... But it's clearly lying.

    This might take a little work... :(

    ReplyDelete
  3. Please let us if you are able to make it work.

    Thanks

    ReplyDelete
  4. Hello,

    Cannot make HSRP work either, I am trying the CCNP TSHOOT topology fron cisco's website. The standby switch cannot ping the virtual interface.

    Manu people on cisco's website are also complaing about their switch virtual labs:

    https://learningnetworkstore.cisco.com/market/prod/productView.se.work?/nxt/rcrs/proieidentity/=19434&/nxt/rcrs/aisidentity/=2559

    Perhaps L2IOU is not very stable !

    ReplyDelete
  5. I'm seeing the same issues. I cannot ping between switches when I create a layer 3 interface. I also get a lot of Collisions (which is another common problem).

    I don't think IOU is quite ready yet, for full on CCIE lab study. But its getting there, and I'm really looking forward to it. I think Cisco should support this application for PUBLIC use. Cisco is losing market share right now, and an application that makes their gear easier to learn could help them a lot. I think GNS3 alone has helped with that!

    ReplyDelete
  6. How have you overcome the issue with different licence values for L3 and L2 iou in single iourc file?

    ReplyDelete
  7. The same license value work for both L2 and L3 IOU for me.

    ReplyDelete
  8. please give details about this how to add these scripts to IOU and if you add complete IOU it would be awesome pls share i need hope u will help

    ReplyDelete
  9. If you're asking me for IOU the answer is no. IOU is not freely available and I can't help you obtain it.

    ReplyDelete
  10. I have noticed that doing shut/no shut after every PHYSICAL configuration change on a switchport fixes most things... I wasn't getting CDP stuff until I did that. Then my ports didn't become trunks (the local IOS didn't even report that they were configured as trunks via the "show int trunk" command). Another shut/no shut resolved this. HSRP works fine for me. I am not seeing collisions either. I configured OSPF without issue.

    ReplyDelete
  11. I have been doing all of my testing with the base lab provided with the VM image. Anyone made progress with either the IPExpert or INE lab topologies?

    ReplyDelete
  12. Yeah...never mind...I am experiencing all of the same problems in my setup. The INE NETMAP file, btw, is incorrect.

    ReplyDelete
  13. There are certainly problems with the L2IOU. You can do a lot of the labs, but you will certainly have limitations when doing so.

    I'm not sure what progress on the IPexpert or INE you're looking for. IPexpert is above, and INE can be found on InetPro via the link I included above.

    I also did not create the INE topolog so I can't do anything about fixing any errors you've found. You'll have to take those to the author of that NETMAP file.

    ReplyDelete
  14. Thanks a million jd. Awesome job. Love it. Quick question, can you change the RAM from 128 to 256 and where/how would you do that?

    Thanks.

    ReplyDelete
  15. Hi. Thanks!

    You can change the RAM using the -m switch when starting IOU. If you run IOU without any arguements it'll print out the usage information.



    Usage: [options]
    : unix-js-m | unix-is-m | unix-i-m | ...
    : instance identifier (0 < id <= 1024)
    Options:
    -e Number of Ethernet interfaces (default 2)
    -s Number of Serial interfaces (default 2)
    -n Size of nvram in Kb (default 16KB)
    -b IOS debug string
    -c Configuration file name
    -d Generate debug information
    -t Netio message trace
    -q Suppress informational messages
    -h Display this help
    -C Turn off use of host clock
    -m Megabytes of router memory (default 128MB)
    -L Disable local console, use remote console
    -u UDP port base for distributed networks
    -R Ignore options from the IOURC file
    -U Disable unix: file system location
    -W Disable watchdog timer
    -N Ignore the NETMAP file

    ReplyDelete
  16. Thanks! Any more write ups you can do on IOU would be great. I would especially enjoy more information on problems you have had with L2, L3 IOU. Things like your issues with etherchannel will be very helpful. Keep it up.

    ReplyDelete
  17. My pleasure. I'm glad you found this useful.

    Etherchannels just don't work, and SVI to SVI inter-L2IOU instance had trouble I think. I've only come across one or two things in IOU that have given me trouble, but I can't recall what they are right now. I want to say DHCP but I can't be sure.

    I've mostly stopped using L2IOU at this point, and what I use IOU for seems to work well. I'm just over a month out on my first lab attempt so I likely won't be writing much more on IOU for some time. Maybe after the lab I'll put out a little more.

    ReplyDelete
  18. I'm with you, I've mostly stopped using L2IOU, it's definitely buggy. I'm working on building an IOU + 3550 lab similar to what people have done with GNS3. The recent version of iou2net.pl that Jeremy Gaddis put out actually works (including on VLAN-tagged interfaces of the Linux server) so I'm going to go the break-out switch method.

    For router stuff, though, I've found IOU to actually be quite good and much, much easier to use than GNS or Dynagen.

    ReplyDelete
  19. PS, your NETMAP has an invalid mapping for BB1.

    11:2/4 21:0/0

    should be

    11:2/3 21:0/0

    Boy, that just caused me some troubleshooting headaches! ;-)

    ReplyDelete
  20. Nice catch. Thanks. I've updated the port with the correct interface.

    ReplyDelete
  21. Hi jdsilva,
    I've tried some simple configurations with L2IOU switches and I've noticed that if I connect 3 switches in a loop the spanning three protocol works as it should, blocking one port on a switch but as soon as I do a ping from one switch to another the CPU utilization goes very high and I can see a lot of traffic on the switches' interfaces.. I think that the ARP request loops through the "triangle topology" even if it shouldn't... Did you experience this? The NETMAP I've used is very simple:

    401:0/2 402:0/1
    401:0/3 403:0/1
    402:0/3 403:0/2

    I've tried the following changes, but any of them solved the problem:
    - force the link-type to point-to-point instead of shared (since I can not set full-duplex on the interfaces, they are seen as shared interfaces)
    - set rapid-pvstp
    - force another switch to become the root bridge

    Any idea or possible solution?

    ReplyDelete
  22. Hi Gianni,

    As I've said before I've stopped using L2IOU because of problems like these. I have not tried to figure out what the problem is simply because I do not think these are problems I can solve. If you want to use IOU for any reason you are on your own here.

    ReplyDelete
  23. I also have this setup and it seems to be working great so far, thanks.

    ReplyDelete
  24. I'm glad you found it useful! Thanks for the comment :)

    ReplyDelete
  25. Do you have the Topology Diagram

    ReplyDelete
  26. It's the standard IPexpert topology. You should be able to find it on the IPexpert site.

    ReplyDelete
  27. Thanks, but the the ports are not the same.

    ReplyDelete
  28. No, the port numbers are not the exact same because IOU has different port numberings. I stated this at the top. However, the topology is exactly the same and with a little CDP you can figure out what matches what (or look at the conversion script I created).

    ReplyDelete
  29. Hey Dinkum, if you'd like to do up a diagram I'll happily post it up here with the rest giving you full credit :)

    ReplyDelete
  30. Hi jdsilva,

    When I start an L2IOU instance. The ports are up even before starting the other instance. Is there any fix for it?

    ReplyDelete
  31. Hi,

    I haven't used L2IOU in a very long time because there's too many issues with it. I'm not familiar with the specific problem that you're asking about, and I don't have any suggestions on how to resolve it.

    ReplyDelete
  32. I was unable to ping BB1 and R1 . I am having a tough time. CAn someone advise what could be the issue ?

    ReplyDelete
  33. Thanks for the topology man. I just wanted to say thanks and tell you that I too had some issue with the L2IOU instance. But, after a bit of tweaking and help from my group, I was able to properly configure the ports.

    ReplyDelete
  34. Right on. Glad you have a use for it.

    ReplyDelete
  35. hello,

    can you tell us how we can change the topology.
    plz.

    ReplyDelete
  36. If you want to change the topology you need to modify the NETMAP file accordingly.

    ReplyDelete
  37. I have issue with CDP between BB1 and Cat1. They dont show up as neighbors even though they are directly connected (BB1 0/0 --- 2/3 Cat1). Anyone else having this issue?

    Thanks,
    RK

    ReplyDelete
  38. hi, how we can change the interface from ethernet to fastethernet or gigaethernet.

    ReplyDelete
  39. You can't change it. And for the purposes of labbing it reall doesn't matter since they are all virtual interfaces anyway.

    ReplyDelete
  40. I have read from a certain forum that a solution for the arp problem and i have tested it and could confirm its working.. you just need to clear the arp to let the switches refresh its arp table



    class-map match-any ARP
    match protocol arp
    !
    !
    policy-map ARP-limit
    class ARP
    police rate 10 pps
    conform-action transmit
    exceed-action drop
    violate-action drop
    !

    control-plane
    service-policy output ARP-limit

    ReplyDelete
  41. Replies
    1. Right now i could ping SVI on each switches but the existing ether-channel bug still exist.

      Delete
  42. Good Post.When can i apply the bash script?

    ReplyDelete
  43. Finally have them Working
    ie. L2 Etherchannel.

    Topology is simple
    Task: Port e3/0 - 3 on two switches are to be bundled into an ether-channel.

    I first basically ensured that ports were switchports & enabled.
    !
    int range e0/0 - 3
    switchport
    no shut
    !
    !
    int range e1/0 - 3
    switchport
    no shut
    !
    !
    int range e2/0 - 3
    switchport
    no shut
    !
    !
    int range e3/0 - 3
    switchport
    no shut
    !
    !
    int range e4/0 - 3
    switchport
    no shut
    !
    !
    int range e5/0 - 3
    switchport
    no shut
    !
    Then I created the trunks before creating the ether channel.

    int e3/0 - 3
    switchport trunk encapsulation dot1q
    switchport mode trunk
    channel-group 1 mode on


    exact same on the other switch.

    I noticed that interfaces went down
    %EC-5-PORTDOWN: Shutting down Et3/0 as its port-channel is admin-down

    All I did shut & then no shut and it worked
    sw2#sh etherc
    sw2#sh etherchannel
    Channel-group listing:
    -----------------------

    Group: 1
    ----------
    Group state = L2
    Ports: 4 Maxports = 8
    Port-channels: 1 Max Port-channels = 1
    Protocol: -
    Minimum Links: 0

    sw2#sh etherchannel sum
    sw2#sh etherchannel summary
    Flags: D - down P - bundled in port-channel
    I - stand-alone s - suspended
    H - Hot-standby (LACP only)
    R - Layer3 S - Layer2
    U - in use N - not in use, no aggregation
    f - failed to allocate aggregator

    M - not in use, no aggregation due to minimum links not met
    m - not in use, port not aggregated due to minimum links not met
    u - unsuitable for bundling
    d - default port

    w - waiting to be aggregated
    Number of channel-groups in use: 1
    Number of aggregators: 1

    Group Port-channel Protocol Ports
    ------+-------------+-----------+-----------------------------------------------
    1 Po1(SU) - Et3/0(P) Et3/1(P) Et3/2(P)
    Et3/3(P)

    ReplyDelete
    Replies
    1. Very cool. What version of IOU are you running?

      Delete
  44. You can build the Etherchannel but no communication goes through it. You can see that a trunk is built with Etherchannel...

    ---
    show int tru

    Port Mode Encapsulation Status Native vlan
    Po1 on 802.1q trunking 10

    Port Vlans allowed on trunk
    Po1 1-4094

    Port Vlans allowed and active in management domain
    Po1 1,10,21-22

    Port Vlans in spanning tree forwarding state and not pruned
    Po1 1,10,21-22
    ---

    And then if you check the interface counters, no traffic is really going out... "Total output drops: 2473" and "0 packets output"

    ---
    show int port-channel 1
    Port-channel1 is up, line protocol is up (connected)
    Hardware is EtherChannel, address is 0000.0000.0000 (bia 0200.0000.5310)
    MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
    reliability 255/255, txload 1/255, rxload 1/255
    Encapsulation ARPA, loopback not set
    Keepalive set (10 sec)
    Auto-duplex, Auto-speed, media type is RJ45
    input flow-control is off, output flow-control is unsupported
    Members in this channel: Et0/0 Et0/1
    ARP type: ARPA, ARP Timeout 04:00:00
    Last input never, output never, output hang never
    Last clearing of "show interface" counters never
    Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 2473
    Queueing strategy: fifo
    Output queue: 40/40 (size/max)
    5 minute input rate 0 bits/sec, 0 packets/sec
    5 minute output rate 0 bits/sec, 0 packets/sec
    0 packets input, 0 bytes, 0 no buffer
    Received 0 broadcasts (0 multicasts)
    0 runts, 0 giants, 0 throttles
    0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
    0 watchdog, 0 multicast, 0 pause input
    0 input packets with dribble condition detected
    0 packets output, 0 bytes, 0 underruns
    0 output errors, 0 collisions, 1 interface resets
    0 babbles, 0 late collision, 0 deferred
    0 lost carrier, 0 no carrier, 0 PAUSE output
    0 output buffer failures, 0 output buffers swapped out
    ---

    I have this L2IOU switch attached to another L2IOU switch, communication over trunks without etherchannel works fine.

    ReplyDelete
  45. hello,
    i really do appreciate this effort, but pls how can i execute the bash script when i have the initial config. not so really good with scripting.
    prompt response will be appreciated
    God bless

    ReplyDelete
    Replies
    1. There's an example of how to run the script over at http://twopacket.zymichost.com/2011/07/04/gns3iou-topoloy-for-ipexpert-rs-workbook.html

      Delete
  46. INE Version 5: IOU NETMAP FILE:

    #####Router are devices 1,2,3,4,5,6#####
    #####Switch are devices 11,22,33,44#####
    #####Backbone are devices 51, 52,53#####

    SW11 to SW22 Connection:
    11:0/0 22:0/0
    11:0/1 22:0/1
    11:0/2 22:0/2

    SW11 to SW33 Connection:
    11:1/0 33:1/0
    11:1/1 33:1/1
    11:1/2 33:1/2

    SW11 to SW44 Connection:
    11:2/0 44:2/0
    11:2/1 44:2/1
    11:2/2 44:2/2


    SW33 to SW44 Connection:
    33:0/0 44:0/0
    33:0/1 44:0/1
    33:0/2 44:0/2

    SW22 to SW44 Connection:
    22:1/0 44:1/0
    22:1/1 44:1/1
    22:1/2 44:1/2

    SW22 to SW33 Connection:
    22:2/0 33:2/0
    22:2/1 33:2/1
    22:2/2 33:2/2

    SW11 to Router Connection:
    1:0/0 11:3/0
    3:0/0 11:3/1
    5:0/0 11:3/2

    SW33 to Router Connection:
    3:0/1 33:3/0
    5:0/1 33:3/1
    53:0/0 33:3/2

    SW22 to Router Connection:
    2:0/0 22:3/0
    4:0/0 22:3/1
    6:0/0 22:3/2
    52:0/0 22:3/3

    SW44 to Router Connection:
    4:0/1 44:3/0
    6:0/1 44:3/1


    Frame Relay Switch to Router Connection:
    1:1/0 60:0/0
    2:1/0 60:0/1
    3:1/0 60:0/2
    3:1/1 60:0/3
    4:1/0 60:1/0
    5:1/0 60:1/1
    6:1/0 60:1/2
    51:1/1 60:1/3

    Router to Router Connection:
    1:1/1 3:1/2
    2:1/1 3:1/3
    4:1/1 5:1/1
    51:1/0 53:1/0

    L2 15.0: /opt/iou/bin/I86BI_LINUXL2-UPK9-M-15.0
    L3 15.0: /opt/iou/bin/i86bi_linux-p-ms.251012_golden_spike

    HTP

    ReplyDelete
  47. I'm trying out your bash file but it keeps on skipping every config file saying its not vaild can you help me out?

    ReplyDelete
  48. can i know which commands that iou doesn't support ?

    ReplyDelete
  49. Hello,



    I am using web-iou but i cannot ping directly connected routers or switches..only getting Encapsulation failed or Incomplete arp. For Network adapter using "NAT" as web-iou not working on other Network like bridged or Host only.



    Could anybody help me on this issue.?



    Thanks,

    ReplyDelete