Dynamips路由模拟器使用心得。

近来论坛中一些兄弟都在学习CCXX(包括我本人在内),在学习中一个好的模拟器必不可少。很多兄弟都用boson,因为他更贴近试题,但是boson的缺陷在于,他仅仅是模拟了cisco IOS(下简称IOS)的部分命令,很多和实际相关的问题无法模拟。而Dynamips是在模拟思科路由器的实际运行环境,可以支持不同版本的IOS,只要下载相应的IOS文件就可以(关于IOS文件的取得, 见此贴),但是仅限于思科的设备。最近一段时间,我对dynamips的使用,有了一些小小的心得,写出来与大家分享。

Dynamips是由一位叫做chris的外国朋友开发的,如果你的英文不错,可以去作者的BLOG看看,那里有最新版的下载,, 作者的BLOG。需要说明,该软件为开源软件,如果有对编程熟悉的朋友,可以去作者的BLOG上DOWN源代码下来,如果能通过修改模拟华为的设备,对我们搞网络应用的来说可是天大的福音啊。

Dynamips有不同版本,但目前来看它是一个路由器的模拟软件,关于交换的部分是模拟了在路由器上插不同端口板。


通常我们用的是0.2.5-RC1到0.2.6-RC2中的某个版本,最新的是0.2.6-RC4。
0.2.5版本仅仅可以支持3640、3660、7200三个型号的设备,只能模拟路由器。
0.2.6-RC1之后,作者加入了在3600系列上对NM-16ESW交换模块的支持,可以支持3620、3640、3660、7200四种设备,同时解决了某些配置下,电脑CPU占用100%的问题。
0.2.6-RC3和0.2.6-RC4是作者最近才开发出来的,听说BUG不少。但是这两个版本在原有支持的设备上新增了2691、3725、3745。

Dynamips有两种运行方式,一是作者开发的(废话),安装完软件后,通过编辑BAT文件运行,打开一个BAT文件,就相当于启动了一台设备。其优点是运行比较稳定,没有2G内存占用的限制(后面会说到这个问题),相对后一种方式的CPU和内存占用小(大概3%-5%),一台虚拟设备宕机,不影响其他虚拟设备。缺点是文件较多,需要配合SecureCRT等telnet工具使用,且逻辑性较差,如果想自己做拓扑难度较高(虽然有专用的工具)。
论坛内下载地址DHLL兄弟提供

第二种运行方式是使用Dynagen程序,调用.net文件。Dynagen这个程序似乎不是由chris编写,而是另外的一个人制作的。它克服了BAT模式下需要SecureCRT等telnet工具的弊病(也可以使用),而且其使用的.net配置文件,逻辑性较强,更适合自己制作拓扑结构。但是它对CPU和内存的占用相对BAT模式较高,而且如果一旦某个虚拟设备宕掉,所有开启的设备都需要重新启动。另外,由于32位的Windows系统对程序的运行有一个2G内存的限制,所以无法开启过多的设备。如果真的需要开启足够数量的虚拟设备,需要用其它的方法来弥补。不过就我目前来看,开4个虚拟7200路由器,系统就已经快扛不住了,不知道谁的主机能开10个以上。使用Dynagen程序大都是由一些人对整个程序进行了简单的修改,最有代表性的就是“工大瑞普模拟器”。
论坛内下载地址


好了,上面介绍了模拟器的简单情况,我比较喜欢使用第二种运行方式,不过还是依大家的习惯把。具体的运行方法, 参看此贴
简单解读.net文件

以上简单说了Dynamips模拟器的情况,下面我们来看它的配置。因为我个人更喜欢Dynagen的运行方式,所以我们先来看它的配置文件。注:需运行在0.2.6-RC2版本下。
以下我们截取一段配置文件,来看看它的配置方法。
蓝色字体为说明。
*****************************************************************************
autostart = false
是否开启自动运行,如果该值为true,那么你运行程序后,所有的设备都会自动启动(如果设备有很多,那将是个灾难),建议设置为false,以后用哪个开那个就可以了。
[localhost]
port = 7200
udp = 10000
以上是设置所有的虚拟设备使用的端口号,应该是定义了一个起始端口,后面的自行分配,我没有查到具体的设备端口,仅仅是猜测。

`router R1`
前面的router是定义设备的类型,由此也可以看出,其实Dynamips只能模拟路由器。
后面的R1是你自己定义的设备名称,需要区别于其他设备。

p_w_picpath = D:\cisco IOS rom\IOS\c3640-jk9o3s-mz.124-10a.bin
这个就是网上下载的IOS文件路径,最好写绝对路径。
model = 3640
这句定义了你的路由器型号,根据不同的IOS写不同的型号,不同型号的虚拟设备有差异的,这个是3640。
console = 2001
这个是定义了登陆的接口,在整个配置中此值必须唯一。2001其实就是2001端口,看到上面的[localhost]了吗?那是地址,也可以用127.0.0.1来代替。也就是说,如果你要用telnet的方式登陆,那么地址就是127.0.0.1:2001,我会专门写出SecureCRT软件的用法。
ram = 96
定义这个虚拟设备使用多大的内存,可以自己试试看,如果值太小,虚拟设备启动不了的,如果你的内存够大,也可以扩大此值。
confreg = 0x2102
配置寄存器的值,我建议直接设置为2102,很多朋友都说配置存储不了,就是因为这个配置寄存器设成了2142。其实不是不能保存设备,而是如果配置为2142,设备启动时不会读取配置。
idlepc = 0x603e0068
这个数值影响了程序的性能,最好多试几个,取得方法见此贴
exec_area = 64
看样子象是命令或者程序的空间,但是我一直不清楚这个设置是干什么的。
mmap = true
如果你的内存足够大,那么可以把它设置成false,让程序完全在内存里运行。如果你和我一样,只有512M内存,那么我建议你设置为true。注意:如果设置为true,需要在程序所在的磁盘内留出一定的磁盘空间,推荐预留1G以上的空间。
slot0 = NM-1FE-TX        36系列的1端口快速以太网模块,连接虚拟交换机必须使用这个。
slot1 = NM-4T        36系列的4端口串口模块。
slot2 = NM-1FE-TX        36系列的1端口快速以太网模块,这个用来连接其他的设备
上面的三行显示了在虚拟设备的插槽内所使用的模块(或者叫线卡)。3640可以支持4个模块,3660支持6个。支持的模块种类后面再说。
f0/0 = SW9 1        本机的f0/0连接到了名称为SW9的设备的1端口。
s1/1 = R2 s3/0        本机的s1/1连接到了名称为R2的设备的s3/0端口
s1/2 = FR1 1        本机的s1/2连接到了名称为FR1的设备的1端口
f2/0 = SW1 f1/15        本机的f2/0连接到了名称为SW1的设备的f1/15端口
以上4行显示了拓扑的连接情况,=前面的是本机的端口,=后面的是链接到的设备名称和端口。格式为:本机端口=对方名称 对方端口。一旦在这里定义了连接,则不需要在对端设备进行设置,否则会出错。

`router R2`
同上,这个设备叫“R2”
p_w_picpath = D:\cisco IOS rom\IOS\c7200-jk9o3s-mz.124-10a.bin
这个设备使用的是7200的IOS,7200和3600可以使用的模块不一样喔。
model = 7200
定义设备为7200
console = 2002
这个设备用2002端口登陆。
npe = npe-400
定义7200的NPE类型,具体干什么用,我还不明白,不过用这个数值就挺好。
ram = 128
7200当然要大一些的内存喽,我设置128M据说有人设置256M。
confreg = 0x2102
idlepc = 0x6074ae38
exec_area = 64
mmap = true
以上几条和第一个设备相同,是通用配置,以下不再赘述。
slot0 = PA-C7200-IO-FE        7200的1端口快速以太网模块,连接虚拟交换机必须用这个。
slot1 = PA-FE-TX                7200的1端口快速以太网模块,这个端口用来连接其他的设备。
slot2 = PA-A1                7200才支持的1端口ATM模块,36系列不支持这个的。
slot3 = PA-4T                7200的4端口串口模块。
好了,看到了嘛,36系列和72系列的模块是不一样的,自己做拓扑的时候可别弄乱了。
f0/0 = SW9 2                本机的f0/0连接到了名称为SW9的设备的2端口
f1/0 = SW1 f1/14                本机的f1/0连接到了名称为SW1的设备的f1/14端口
s1/2 = FR1 2                本机的s1/2连接到了名称为FR1的设备的2端口
a2/0 = AT1 1                本机的ATM a2/0端口连接到了名称为AT1的设备的1端口
以上是这个虚拟设备的拓扑连接,R1和R2有一条串行链路,因为在R1上进行了定义,所以不用再在这里定义了。

`router SW1`
这个设备叫SW1,因为它的主要功能是模拟交换机,但是设备类型依然是router。
p_w_picpath = D:\cisco IOS rom\IOS\c3640-telco-mz.123-11.T.bin
这次我们使用3640的IOS文件。注意:如果你想要模拟可管理的交换机,必须用3600系列的IOS,而且版本越高越好否则无法支持所需的模块。
model = 3640
console = 3001
定义登陆端口3001。
ram = 128
confreg = 0x2102
idlepc = 0x60fe8088
exec_area = 64
mmap = true
slot0 = NM-1FE-TX                36系列的1端口快速以太网模块,上面说过了。
slot1 = NM-16ESW                36系列的16端口快速以太网模块,模拟可管理交换机就靠他。
f0/0 = SW9 3                本机的f0/0连接到了名称为SW9的设备的3端口。
f1/11 = PC1 f0/0                本机的f1/11连接到了名称为PC1的设备的f0/0端口

`router PC1`
这个设备叫做PC1,我们用一个路由器来模拟一台PC,可以多模拟几个,然后接到交换机上练习VLAN配置,这里就说一个。
p_w_picpath = D:\cisco IOS rom\ios\c3640-i-mz.112-20.P.bin
这个IOS其实没什么要求,越小越好。因为我们只需要它有个以太口,同时我们不用它什么功能,有个ping 和trace命令就够了。
model = 3640
console = 4001
虚拟PC从4001开始
ram = 32
只要能运行,内存越小越好。
confreg = 0x2102
idlepc = 0x6017144c
exec_area = 32
mmap = true
slot0 = NM-1FE-TX        就这一个模块。

`ATMSW AT1`
前面的ATMSW说明这个设备是ATM交换机,后面的AT1是它的名字,方便大家连接他。这个设备不可管理,就象是ISP的设备。
1:1:100 = 2:2:200
应该是ATM的参数,但是我还没有学会ATM技术,所以这个数值我也不知道是怎么回事。以后学了再补上。

`ethsw SW9`
前面的ethsw说明这个设备是以太网交换机,后面的SW9是它的名字,方便大家连接他。这个设备同样不可管理。
1 = dot1q 1                端口1,封装802.1Q,属于VLAN1
2 = dot1q 1                端口2,封装802.1Q,属于VLAN1
3 = dot1q 1                端口3,封装802.1Q,属于VLAN1
4 = access 1 NIO_gen_eth:\Device\NPF_{DE5D9A8A-6CC2-4F44-BEC4-4FC0EEEB566C}
这个是你的网卡,相当于你的网卡也接在了这个虚拟的交换机上,建议将网卡设置上。

`FRSW FR1`
前面的FRSW说明这个设备是帧中继交换机,后面的FR1是它的名字,方便大家连接他。这个设备也不可管理。
1:102 = 2:201
以上应该是帧中继交换机的虚电路,还没有比较透彻的理解帧中继,以后补吧。
*****************************************************************************

另外需要说明的是,在配置文件中你可以用“#”来进行配置语句的注释。
例如:slot0 = NM-1FE-TX  #36系列的1端口快速以太网模块
好了,.net文件就这样,我们可以自己搭建自己的拓扑了。
简单解读.bat文件

说实话,我个人并不太喜欢用BAT模式运行模拟器,总觉得它的拓扑配置很繁琐,很难看懂。由于有一个叫做DynamipsGUI的软件可以制作BAT文件,所以也有很多使用者使用BAT模式,那么我们就来看看BAT模式。

BAT模式是每个虚拟设备一个.bat文件。也有.net文件中的一些数值,下面几个实例是我使用DynamipsGUI软件生成的,简单的看一下配置参数。
******************************************************************************
title R1
mkdir R1
cd R1
:reload
..\dynamips.exe -T 2001 -f ..\FRSWITCH -a ..\ATMSWITCH -P 7200 -r 64 --disk0 -t npe-400 -c 0x2142 -p 0:C7200-IO-FE -p 1:PA-FE-TX -p 2:PA-A1 -p 3:PA-4T+ -p 4:PA-POS-OC3 -s 2:0:udp:12120:127.0.0.1:62300 -s 4:0:udp:12140:127.0.0.1:12330 -s 3:0:udp:12130:127.0.0.1:12211 -s 3:1:udp:12131:127.0.0.1:12310 -s 3:3:udp:12133:127.0.0.1:62100 -s 0:0:udp:12100:127.0.0.1:31000 ..\c7200-jk9o3s-mz.124-10a.bin --idle-pc=0x60663630
goto reload
******************************************************************************
以上是一个BAT的内容,我不愿意打断其参数的连续性,我们在下面拆开说。
title R1
定义设备名
mkdir R1
建立一个与设备名相同的目录
cd R1
进入该目录
:reload
这句类似一个程序的开始语句。
..\dynamips.exe
dynamips.exe文件的相对路径,因为上面有一个“cd R1”命令,所以当前目录是R1。需要用..\来回到上级目录。配置中工作目录始终是在R1目录下,这点要注意。
-T 2001
依然是登陆的端口,相当于127.0.0.1:2001,相当于.nat中的console = 2001参数
-f ..\FRSWITCH
帧中继交换机文件的相对路径,BAT模式是使用了一个FRSWITCH文件来模拟帧中继交换机
-a ..\ATMSWITCH
ATM交换机文件的相对路径,BAT模式使用了一个ATMSWITCH文件来模拟ATM交换机。
-P 7200
定义设备行号,相当于.nat中的model = 3640参数
-r 128
运行所需内存,相当于.nat中的ram = 128参数
--disk0
7200系列会有一个disk参数,目前不太清楚其作用。
-t npe-400
设置npe类型,相当于.nat中的npe = npe-400参数
-c 0x2102
寄存器值, 相当于.nat中的confreg = 0x2102参数
-p 0:C7200-IO-FE
插槽0中的模块,同样是C7200-IO-FE模块,用来连接交换机
-p 1:PA-FE-TX
插槽1中的模块,也是一个单端口以太网模块
-p 2:PA-A1
插槽2中的模块,一个单端口的ATM模块
-p 3:PA-4T
插槽3中的模块,4端口串行链路模块
-p 4:PA-POS-OC3
插槽4中的模块,一个POS口的模块,不过我没有使用过。
以上的-P就是用来在虚拟设备上安装相应的模块。下面开始进行拓扑连接。

-s 2:0:udp:12120:127.0.0.1:62300
插槽2上的端口0,使用UDP12120端口连接到,62300端口(后面再说这个端口是谁)
-s 4:0:udp:12140:127.0.0.1:12330
插槽4上的端口0,使用UDP12140端口连接到,12330端口
-s 3:0:udp:12130:127.0.0.1:12211
插槽3上的端口0,使用UDP12130端口连接到,12211端口
-s 3:1:udp:12131:127.0.0.1:12310
插槽3上的端口1,使用UDP12131端口连接到,12310端口
-s 3:3:udp:12133:127.0.0.1:62100
插槽3上的端口3,使用UDP12133端口连接到,62100端口
-s 0:0:udp:12100:127.0.0.1:31000
插槽0上的端口0,使用UDP12100端口连接到,31000端口
..\c7200-jk9o3s-mz.124-10a.bin
同样是IOS映像文件的保存路径,注意是相对路径,我试过绝对路径,结果不行。
--idle-pc=0x6074ae38
同样是那个idlepc的值,相当于.nat中的idlepc = 0x6074ae38参数
goto reload
返回到上面那个:reload地方,如果出现参数错误,它会循环执行。
******************************************************************************
下面看第二个BAT文件,同样我们分开看。
******************************************************************************
title R2
mkdir R2
cd R2
:reload
..\dynamips-wxp.exe -T 2002 -f ..\FRSWITCH -a ..\ATMSWITCH -P 3600 -r 96 -t 3640 -c 0x20142 -p 0:NM-1FE-TX -p 1:NM-4T -s 1:1:udp:12211:127.0.0.1:12130 -s 1:0:udp:12210:127.0.0.1:12311 -s 1:3:udp:12213:127.0.0.1:62102 -s 0:0:udp:12200:127.0.0.1:32000 ..\gui.bin --idle-pc=0x6054678a
goto reload
******************************************************************************
title R2
mkdir R2
cd R2
:reload
..\dynamips.exe
-T 2002
-f ..\FRSWITCH
-a ..\ATMSWITCH
以上几条同上,不再赘述。
-P 3600
定义模式为3600
-r 96
运行内存96M
-t 3640
型号为3640
-c 0x2102
寄存器值
-p 0:NM-1FE-TX
插槽0中的模块,一个单端口以太网模块
-p 1:NM-4T
插槽1中的模块,一个四端口以太网模块
我们主要看下面的拓扑连接。
-s 1:1:udp:12211:127.0.0.1:12130
插槽1上的端口1,使用UDP12211端口连接到,12130端口
-s 1:0:udp:12210:127.0.0.1:12311
插槽1上的端口0,使用UDP12210端口连接到,12311端口
-s 1:3:udp:12213:127.0.0.1:62102
插槽1上的端口3,使用UDP12213端口连接到,62102端口
-s 0:0:udp:12200:127.0.0.1:32000
插槽0上的端口0,使用UDP12200端口连接到,32000端口
..\c3640-jk9o3s-mz.124-10a.bin
同样是IOS文件的相对路径
--idle-pc=0x603e0068
同样是idlepc的值
goto reload
同样会到上面。
******************************************************************************
好了,看了以上两个,就有些眉目了。
其实BAT模式是使用了本机的回环地址(127.0.0.1)上的UDP端口,来划分每个虚拟设备的接口,每个虚拟设备的接口,都将会分配到一个UDP端口。然后使用-S参数来进行连接。
不知道是不是DynamipsGUI程序的作者在程序中设定的端口号分配方式,比较简单易懂。
举例来说
1:1:udp:12211:127.0.0.1:12130
路由器2的插槽1上的端口1,就使用12211端口,前面的12是标志了设备,后面的211正好是设备ID插槽ID端口ID。而拓扑链接到的端口,就是12类设备1插槽3端口0。
这样的一种分配方式相对来说还是比较直观的。
之前有6XXXX的端口,那是接到了ATM和帧中继交换机上。同样在BAT方式下帧中继和ATM也是不可配置的。
621代表帧中继交换机,后面的数值是帧中继交换机的端口号。
623代表ATM交换机,同样后面的数值是ATM交换机的端口号。
拓扑的连接有一点要注意的是,所有的连接在每个设备的BAT文件都要进行描述,不像是.net,只需要在一个设备中描述就行。

好了,对于BAT方式,我也不怎么用,就写这些吧,希望能给大家一些帮助。
最后送上DynamipsGUI程序,大家如果需要可以自己去作拓扑。
下载DynamipsGUI
支持的模块

我们从0.2.6-RC2版本的软件开始,介绍各模拟设备所支持的模块,主要有RC2和RC42个版本。

RC2:
支持3600系列路由器和7200系列路由器
3600系列分为3620、3640、3660三种。3620支持2个插槽,3640则是4个插槽,3660可以支持6插槽。
3620和3640支持以下模块
NM-1E                单端口以太网接口卡
NM-4E                4端口以太网接口卡
NM-1FE-TX        单端口快速以太网接口卡
NM-4T                4端口串口卡
NM-16ESW        16端口快速以太网接口卡,模拟交换机就靠他了,可以使用VLANDATABASE模式划分VLAN。
3660支持以下模块
NM-1E                单端口以太网接口卡
NM-4E                4端口以太网接口卡
NM-1FE-TX        单端口快速以太网接口卡
NM-4T                4端口串口卡
Leopard-2FE        单端口快速以太网卡,用于连接那个不可管理的交换机,或者你的PC。 如果使用,必须把它放在slot 0上,是3660的专用卡,无法在其他设备上使用
并且似乎3660不支持NM-16ESW模块,至少我还没有在3660上用过这个模块。

7200系列没有更多详细的区分,支持6个插槽。
7200支持以下模块
C7200-IO-FE        单端口快速以太网接口卡,用于连接那个不可管理的交换机,或者你的PC, 如果使用必须把它放在slot 0上,其它插槽不支持
PA-FE-TX                单端口快速以太网接口卡。
PA-4E                4端口以太网接口卡
PA-8E                8端口以太网接口卡
PA-4T+                4端口串口卡
PA-8T                8端口串口卡
PA-A1                单端口ATM接口卡,如果想试验ATM的连接,必须使用此卡
PA-POS-OC3        单端口POS接口卡,具体的应用我还没有用过。

RC4:
除了支持3600系列路由器和7200系列路由器,还新增支持2691、3725、3745。
3600和7200支持的模块同以上版本,主要说说新增支持的这三种路由器。
从作者的BLOG上看来,2691、3725、3745使用的接口卡相同。
NM-1FE-TX        单端口快速以太网接口卡
NM-4T                4端口串口接口卡。
NM-16ESW                16端口快速以太网接口卡,还是可以模拟简单的交换机的。
依我现在的英文水平看作者的BLOG,似乎新增支持的这三个型号的路由器只支持这三种接口卡,不过似乎也够用了。另外,国内的同仁们对RC4版本的研究还比较少,所以我的资料也是很少的,以下还是主要介绍RC2。


说完了模块,还得说连接,不过这里说的是连接的类型,不同类型的端口连接在一起会出问题(废话)。
先说以太口,在模拟器中,以太口有3种:
一种是以太网接口,也就是10M接口,如NM-4E、PA-4E接口卡,提供了以太网接口。
第二种是快速以太网接口,也就是100M接口,如NM-1FE-TX、PA-FE-TX、NM-16ESW接口卡,提供了快速以太网接口。
第三种是专用的以太网或快速以太网接口,如3660和7200中的专用接口卡。
前两种接口,只要连接到同样的借口就可以使用,以太网接口连接以太网接口,快速以太网接口连接快速以太网接口,快速以太网接口也可以连接本机的网卡。
第三种接口是用来连接那个不可管理的交换机,没有列出专用接口卡的虚拟设备(3640、3620)使用快速以太网接口连接不可管理交换机。然后将你本机的网卡也连接到不可管理交换机就可以实现本机和虚拟设备的通信了。

再说串口,模拟器支持的串行端口只有一种。
PA-4T+和PA-8T分别为7200提供了4个和8个串行端口。
NM-4T为3600系列提供4个串行端口。
串行端口连接相对简单,可以连接到另外设备的串行端口,或者连接到不可管理的帧中继交换机。

最后说说7200支持的另外两个端口ATM和POS端口
PA-A1提供一个ATM端口,似乎只能与不可管理的ATM交换机相连,无法与另外一台7200的ATM端口直接连接。
PA-POS-OC3提供了一个POS口,似乎只能与另外一台带有POS端口的7200连接,但是由于我对POS端口没有研究,所以究竟是怎么回事,我也不清楚。

好了,以上就是模拟器内所支持的模块,只要按照需要,配置模块建立连接,就可以建立自己的拓扑环境了。
SecureCRT软件与Dynamips的配合使用

SecureCRT软件与Dynamips的配合使用。

之前我们说了在Dynamips的两种运行模式下,需要(或者可以使用)Telnet软件来配合工作。下面我们就来说说一个很好用的Telnet软件SecureCRT在与Dynamips配合使用的方法。

先简单的介绍一下SecureCRT软件。
SecureCRT是高度可定制的终端仿真器,适用于Internet和Intranet,支持IPv6。对于连接到运行Windows、UNIX和VMS的远程系统来说是很好的选择。终端仿真支持VT100、VT102、VT220、ANSI、SCO ANSI、Xterm、Wyse 50/60、和 Linux console 仿真。

软件下载后,先安装(又是废话)。安装很简单,和普通的Windows软件一样。
需要注意的是:在使用本软件登录Dynamips的模拟设备时,首先要保证该模拟设备处于开启的状态,否则你是怎么都用不了的。

之后启动软件就可以看到主界面了。
点击在新窗口查看全图 CTRL+鼠标滚轮放大或缩小
SCRT-main-boot.JPG (34.46 KB)
主界面
2006-11-22 14:55


接下来我们建立连接。
第一次建立连接可以从主菜单上点击:文件-->快速连接,或者快捷键Alt+Q,再或者点击上面工具栏里那个带闪电的小按钮 。三种方法都可以打开快速连接的对话框。
SCRT-quick-con.JPG (18.83 KB)
快速连接
2006-11-22 14:55

协议:支持很多协议,这里我们选用Telnet就可以了。
主机名:也就是要登录的主机地址,对于Dynamips来说可以写localhost 也可以写127.0.0.1,建议写后者。
端口:默认的Telnet端口是23,需要按照你的需求填写。对于Dynamips来说要填写想要登录的虚拟设备的端口,也就是200x、300x,根据你的需要来填写,我们暂且添个2001。
防火墙:选无就可以了。
然后勾上保存会话和在一个标签中打开两个选项,点连接就可以了。填写完是这个样子的。
SCRT-quick-con-end.JPG (18.72 KB)
快速连接-end
2006-11-22 14:55

点一下连接,可以看到,我们已经连接到一个虚拟的路由器上了,很简单吧。
con-dyna.JPG (87.52 KB)
已经连接
2006-11-22 14:55


我们点工具栏上有小叉子那个按钮 断开连接。
下面我们来管理已经保存的连接。
先打开连接对话框:可以点一下工具栏上的第一个按钮 ,或者文件-->连接,也可以用Alt+C打开。
SCRT-con.JPG (27.24 KB)
连接
2006-11-22 14:55

看到我们刚才的那个连接了吧,现在他叫127.0.0.1为了方便记忆我们给他改个名字。用右键单击这个连接选择属性,打开属性页面。
SCRT-conn-att.JPG (30.96 KB)
属性
2006-11-22 14:55

看到名称了吗?改成你认为方便记忆或者方便标识的名称好了,下面还可以写一下对这个连接的描述。里面还有一些其他的属性,也可以试着改一下。不过在这里我们只需要用它来登录Dynamips,不用修改了。

好了,做完以上的操作,一个终端会话就保存在你的电脑里面了,你可以多建立一些终端会话保存起来,以后用起来就方便了。看我的,有很多的连接,直接选择登录就行了。

[ 本帖最后由 桃花岛主 于 2006-11-22 15:11 编辑 ]



查看积分策略说明
附件
2006-11-22 15:08
conn.JPG (924 Bytes)
 
2006-11-22 15:08
quick-con.JPG (959 Bytes)
 
2006-11-22 15:08
end.JPG (958 Bytes)
 
最后我们来说说网卡和模拟器的连接

Dynamips有一个很有意思的功能,那就是可以通过网卡和虚拟出来的设备相连,就象是在VMWare里面,真实的主机和虚拟系统互相连接一样,通过这个功能,我们可以通过网卡连接功能,和与主机相连在同一交换机下的其它电脑一起来构建更大的拓扑,还可以通过路由器与外部设备进行连接。

想要让网卡和虚拟设备进行连接,必须先获取你的网卡参数。获取网卡参数的方法见 此贴,需要提醒你的是,你需要安装WinPcap_4_0_beta1,前面帖子有下载的。
点击在新窗口查看全图 CTRL+鼠标滚轮放大或缩小
NIC-idle.JPG (56.45 KB)
获取参数
2006-11-23 18:13

可能你获取参数时和我一样,会有不止一个网卡参数,注意要找出你所使用的物理网卡的参数,不要搞错了,否则我们说的功能是实现不了的。

当你有了网卡参数,就可以和设备进行连接了。
我们以.net配置文件来看看如何连接。下面的这条语句,就代表了你的网卡。
NIO_gen_eth:\Device\NPF_{DE5D9A8A-6CC2-4F44-BEC4-4FC0EEEB566C}(红色部分为获得的参数)。
记住你的网卡只可以连接到虚拟设备的快速以太网接口,或者是那个不可管理的交换机。连接到其他的地方会报错。
连接到快速以太口举例:
slot2 = NM-1FE-TX
f2/0 = NIO_gen_eth:\Device\NPF_{DE5D9A8A-6CC2-4F44-BEC4-4FC0EEEB566C}
网卡和f2/0端口相连。
连接到不可管理交换机举例:
4 = access 1 NIO_gen_eth:\Device\NPF_{DE5D9A8A-6CC2-4F44-BEC4-4FC0EEEB566C}
网卡和不可管交换机的端口4相连,属于VLAN1

如果以上的设置你设置正确,那么你给你的虚拟设备的快速以太网接口配上和主机同网段的地址就可以ping 通了。如果你给你的路由器上加上一条默认路由指向你所使用的网关,那么你的路由器一样可以ping 通外网,这样就可以和其他的设备或者机器建立连接了。如果你另外一台主机上设置相同,你甚至可以让他们进行路由信息的交换和收敛,然后可以在网卡上利用抓包软件进行抓包分析。

还有另外的一种与网卡连接的方法。需要先安装VMWare,然后做出一个虚拟系统。这样我们就可以得到一个真实网卡的参数和一个VMWare的网卡参数,将两个参数分别应用到虚拟设备的接口,就可以直接在本机上通过软件获取路由协议的数据包了。如果你在VMWare上做一个虚拟的服务器系统,开启相应的服务,那么你就近似的模拟了一个真实的网络应用环境。所有的这些应用,还有待于我们进一步的去开发和完善。


好了,关于Dynamips的使用心得,就写到这里了。如果以后开发出来其他的应用功能,我会在帖子后面继续跟帖补足。

0

收藏

cl17467629

549篇文章,105W+人气,1粉丝