如何设置在Linux上的思科实验室(CentOS 5.2)

如何在Linux上设置Cisco实验室(CentOS 5.2)

版本1.0
作者:Andrew Colin Kissa <andrew [at] topdog [dot] za [dot] net>

背景

我最近决定学习思科CCSP认证 。 我最开始关心的是,我发现的大部分实验室模拟软件只能在Windows上运行,这对我来说是一个问题,因为我没有Windows计算机。

经过快速搜索后,我发现了超过其他模拟器运行实际Cisco IOS映像的精彩Dynamips项目,以及允许运行Cisco PIX映像的PEMU项目 。 集成各种软件,并提供与我使用dynagen的设备交互的界面。

先决条件

您将需要Linux命令行技能以及Cisco IOS / PIX的工作知识。 请注意,您将必须提供您自己的Cisco IOS / PIX映像,不要发送任何请求图像的消息。

软件安装

这些说明基于Centos 5.2,但可以轻松适应其他Linux系统。 鉴于我们正在使用基于rpm的系统,因为包管理的优点 ,我们将把所有的软件包安装为rpm而不是源代码。 所有上述项目(除了pemu之外)都具有可以获取和编译的源rpm。 我获得并编译了可以从我的站点下载的源rpm,您可以如何获得源rpm并自行编译。 我建立了自己的转速为您可以下载的 PEMU。

上述rpms使用我的密钥进行签名,以便您可以验证它们。

wget http://www.topdog-software.com/oss/roundcube/andrew_topdog-software.com_key.txt
rpm --import andrew_topdog-software.com_key.txt

现在安装。

Dynamips

这是提供Cisco IOS仿真器以及PEMU包装器的主要组件

rpm -Uvh http://www.topdog-software.com/oss/dynamips/dynamips-0.2.8RC2-1.i386.rpm

Dynagen

这是dynamips软件的接口,它提供了简化的ini类型配置,帧中继,内置交换机,网桥以及管理CLI。

rpm -Uvh http://www.topdog-software.com/oss/dynagen/dynagen-0.11.0-1.noarch.rpm

PEMU

这是Cisco PIX / ASA仿真器,允许您运行PIX映像。

rpm -Uvh http://www.topdog-software.com/oss/pemu/pemu-0.0.1-20070420.i386.rpm

示例实验室

对于我们的示例实验室,我将从SNPA模块设置一个LAB,因为这将使我们能够看到IOS和PIX的动作。 但首先让我们开始服务:

service dynamips start
service pemu start

提取图像,因为它们将更快地启动。

unzip snrs.bin 
cp C3640-JK.BIN /var/lib/pemu/images/snrs.bin
unzip asa722-k8.bin
cp target/f1/pix /var/lib/pemu/images/pix

对于这个实验,我们将使用这个dynagen ini文件,以便创建一个/tmp/snpa.net文件, 其中包含以下内容:

autostart = false
model = 3640
ghostios = true
sparsemem = true
[localhost]
workingdir = /var/lib/pemu
        [[3640]]
        image = /var/lib/pemu/images/snrs.bin
        #idlepc = 0x60ba8df4
        [[router inside]]
        # This router will be on the "inside" of the firewall
        # Connect this router's e0/0 interface to fw1's e1 interface
        e0/0 = fw1 e1
        [[router outside]]
        # This router will be on the "outside" of the firewall
        # Connect this router's e0/0 interface to fw1's e0 interface
        e0/0 = fw1 e0
        [[ethsw s1]]
        1 = access 1
        # Bridge the below interface to allow fw1's e2 interface access to real networks
        # e.g. for using ASDM from a PC to manage the firewall, change the interface to
        # reflect your system
        2 = access 1 NIO_gen_eth:eth1
[pemu localhost]
        [[525]]
        #for pix 7 & 8
        serial = 0x1234568
        key = 0xffffffff,0xffffffff,0xffffffff,0xffffffff
        image = /var/lib/pemu/images/pix
        [[fw fw1]]
        # Connect the firewall's e2 interface to the virtual switch, which will bridge it
        # to the real network
        e2 = s1 1

现在我们有了一切,让我们连接到dynagen控制台,并与我们的实验室环境进行交互。

dynagen /tmp/snpa.net

您将看到以下提示:

Reading configuration file...
Network successfully loaded
Dynagen management console for Dynamips and Pemuwrapper 0.11.0
Copyright (c) 2005-2007 Greg Anuzelli, contributions Pavel Skovajsa
=>  

我们来看看dynagen控制台上可用的选项,键入familier? 命令

=> ?
Documented commands (type help <topic>):
========================================
capture  confreg  cpuinfo  export  hist    list  py      save   show   suspend
clear    console  end      filter  idlepc  no    reload  send   start  telnet
conf     copy     exit     help    import  push  resume  shell  stop   ver
=>                  

我们使用list命令列出我们实验室环境中可用的设备:

=> list
Name       Type       State      Server          Console
inside     3640       stopped    localhost:7200  2000
outside    3640       stopped    localhost:7200  2001
fw1        525        stopped    localhost:10525 4000
s1         ETHSW      always on  localhost:7200  n/a
=>           

让我们开始设备:

=> start outside
100-VM 'outside' started
=> start inside
100-VM 'inside' started
=> start fw1
100-PEMU 'fw1' started
=>

为了提高设备性能,我们设置各种设备的idlepc值:

=> idlepc get inside
Please wait while gathering statistics...
   1: 0x605a39c8 [61]
   2: 0x605a3a40 [25]
   3: 0x604fd014 [78]
   4: 0x604fd044 [64]
   5: 0x6048daa0 [80]
   6: 0x604fe168 [75]
*  7: 0x604fe584 [59]
   8: 0x604fe734 [46]
   9: 0x604fe75c [49]
Potentially better idlepc values marked with "*"
Enter the number of the idlepc value to apply [1-9] or ENTER for no change: 7 

对于要为其设置idlepc值的所有设备重复上述操作。

其他样品实验室

您可以在/usr/share/doc/dynagen-0.11.0/sample_labs目录中找到其他示例实验室。

控制台访问

好的,我们正在运行,但我敢打赌你问好,但是如何控制和开始使用设备? 您启动的每个设备将为您提供端口上的控制台访问,以查看哪个端口在dynagen控制台中使用list命令。

所以我们看到里面的路由器可以在2000端口安装,所以让我们继续检查一下。

telnet localhost 2000

第一次你应该看到以下屏幕:

Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
Connected to Dynamips VM "inside" (ID 0, type c3600) - Console port

% Please answer 'yes' or 'no'.
Would you like to enter the initial configuration dialog? [yes/no]:   

接下来我们连接到PIX控制台:

telnet localhost 4000

按回车键,您应该看到以下屏幕:

Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
pixfirewall>   

GUI版本

对于那些喜欢使用GUI设置实验室的人,可以看一下GNS项目 ,我没有像我喜欢使用命令行一样使用它。

致谢

感谢这些有用的项目的开发人员; 如果可以,请考虑捐赠这些项目。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏