|
之前 论坛会员whaiming已经给大伙分享了
andLinux 平台 Cisco IOU(L2&L3)安装及使用教程—— by SPOTOer_eYe
对IOU有兴趣的盆友极力推荐看看,我在我的LINUX系统里已经完成安装,此神器在使用时确实隐隐含有王霸之气,30台路由器对CPU的蚕食也是让人爽歪歪的;在这里我给大家分享下IOU的一些常见疑问与回答,希望对论坛里的小鸟们有所帮助。。。
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, unlike
dynamips.
What skills do I need to run IOU?
You will need to be comfortable on the command-line of your operating system. Knowledge of vi (or other
text editors) and shell scripting would definitely be useful. If you’ve only ever used Windows, you might
want to look into GNS3 instead.
Does IOU attempt to call home?
Yes. At startup, IOU images will attempt to make an HTTP POST of some XML data to xml.cisco.com. The
data includes your (short) hostname (e.g. not the FQDN), the username of the user running IOU, the
version, etc. It appears that xml.cisco.com is not reachable from the Internet, however, so the connection
will not be made. This could change in the future, though, so you may want to do the following:
# echo '127.0.0.1 xml.cisco.com' >> /etc/hosts
I can’t find it, will you send me a copy?
No, don’t even ask. Seriously.
Features
What features does IOU support?
Pretty much everything, depending upon the image you’re using. The major exception is layer 2 switching,
which L2IOU should take care of.
What version of IOS does it use?
I have seen a few Linux images floating around. One appears to be built on the “ipbase” featureset and
another appears to be built with the “adventerpisek9′′ featureset.
Are there pagent images?
Yes, in addition to “standard” IOU images, there are pagent images.
Licensing
Do I need a license to use IOU?
It does not seem that older IOU images needed a license to be used, while newer IOU images (including
the Linux ones I have seen) do require a valid license.
How do I get a license?
Unfortunately, licenses are only able to be acquired inside of Cisco. An individual license code is
generated, based upon the machine’s hostname and IP address.
Will you post your script to “crack” it?
Although I initially said I would, I have decided against this after careful thought. You may do this on your
own, if you are so inclined.
Pre-requisites
What is the IOURC file?
The IOURC file is where IOU looks for your license code at startup.
Where does the IOURC file go?
IOU will look for the following:
• A file named “iourc” in the current working directory
• A file named “.iourc” in the user’s home directory
• The file pointed to by the IOURC environment variable
What is the format of the IOURC file?
For licensing, your IOURC file needs to look like this:
[license]
hostname = 4242424242424242;
Replace “hostname” with your computer’s (short) hostname — not the fully-qualified domain name — and
“4242424242424242′′ with your license code. Make sure the line ends with a semi-colon. Your hostname
can be found from the error IOU spits out or by running the following at a command-line:
# hostname -s
What is the NETMAP file?
The network topology map, or NETMAP, file is similar to a .net file for dynagen. It is used for controlling the
layout of the “virtual cabling”.
Where does the NETMAP file go?
IOU will look for the following:
• A file named “NETMAP” in the current working directory
• A file named “.NETMAP” in the user’s home directory
• The file pointed to by the NETIO_NETMAP environment variable
What is the format of the NETMAP file?
I’ve posted an example topology and NETMAP file that might be helpful.
Using IOU
How do I run IOU?
Usage: <image> [options] <application id>
<image>: unix-js-m | unix-is-m | unix-i-m | ...
<application id>: instance identifier (0 < id <= 1024)
Options:
-e <n> Number of Ethernet interfaces (default 2)
-s <n> Number of Serial interfaces (default 2)
-n <n> Size of nvram in Kb (default 16K)
-c <name>
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 <n>
-L
-u <n>
Megabytes of router memory (default 64)
Disable local console, use remote console
UDP port base for distributed networks
How do I stop IOU?
Simply hit CTRL-C and the process will exit.
What is the “wrapper”?
When you run an IOU image, it will stay in the foreground and you’ll be connected to the “console”. This
may not always be the desired behavior, especially if you wish to telnet to the console from another host on
the network (a la dynamips). The wrapper program can be used to redirect a TCP port to the “console” of
the router so that you can do exactly this.
How do I use the wrapper?
$ ./wrapper
Usage: ./wrapper [-v] -m<image name> -p<port number> -- [iou options] <router ID>
where <port number> is in the range <1024-65550>
all options after the '--' are passed to iou
[-v] Display version
Instead of just running “./imagename <application id>”, you would use something like this:
$ ./wrapper -m ./imagename -p 2000 -- -e0 -s1 -m 64 100
This would tell the wrapper to start the image named “./imagename” and listen ton TCP port 2000. Any
options after “–” are passed off to the executable, so in this case our IOU instance would start up with zero
ethernet interfaces (“-e0′′), one serial interface (“-s1′′) — which actually means four in newer images, due to
something called “Wide Port Adapters” — and 64 MB of RAM. The “application ID”, which we’ll use to refer
to this instance in the NETMAP file, is 100.
The wrapper is most useful in a shell script to start up and background a number of IOU instances at once.
How do I stop IOU when using the wrapper?
If you are using the wrapper and have backgrounded the IOU instance, you’ll need to find the process ID
and kill it. The following will find all running instances and kill them:
$ ps -ef | grep [w]rapper | awk '{ print $2 }' | xargs kill
IOUlive
What is IOUlive?
IOUlive is a separate application that allows one to bridge an IOU instance to the real world. This is similar
to using dynagen’s NIO\_linux\_eth descriptor. By connecting an IOU instance to IOUlive, your virtual
routers can talk to devices on your physical network.
How do I use IOUlive?
I’ve posted an example topology and NETMAP file that might be helpful.
Errors
What does “UNIX ERR:tcgetattr:Invalid argument” mean?
No idea, but it doesn’t seem to hurt anything. it appears that it can be safely ignored.
I’m getting an error about libcrypto.so.4.
These images were compiled against an older version of the libcrypto shared library than what your Linux
distribution may have. For me, creating a symbolic link from /lib/libcrypto.so.0.9.8 to /lib/libcrypto.so.4 took
care of the error.
I’m getting a “host not found in iourc file” error.
Fix your IOURC file. See above.
How can I add an NM-16ESW module?
You can’t.
There must be some way to add ATM or NM-16ESW modules!
There’s not.
When running “./wrapper-linux -m i86bi_linux-adventerprisek9-ms ...” I get “No such file or
directory”.
Provide the path to the IOU image. If it’s in the working directory, refer to it as “./i86bi_linux-
adventerprisek9-ms”, for example.
I’ve tried everything and I can’t get it to work. What should I do?
Google “gns3′′ and follow a tutorial on how to download and install it. Seriously.
Related posts:
Defeating Cisco IOU’s License Protection
Creating a NETMAP file for IOU
Example Cisco IOU Topology
Cisco 1941, 2900sm, 2901, and 3900 routers!?
Configuring FreeRADIUS to support Cisco AAA Clients
该贴已经同步到 TD-Link的微博 |
|