linux服务器运行dyna,dynamips分布式实现详解

实现原理:

1>测试实验端(本本)用dynagen实现各PC上的dynamips服务的分配调用。

2>各PC设备运行dynamips服务。

3>dynagen运行后将调用命令分配给运行相应的dynamips的服务PC,使其启动并配置相应的ios。

4>测试实验端shell将命令传递给dynamips服务PC。

5>dynamips服务端PC将运行结果返回给测试实验端的shell显示。

以下引用两篇文章做解释,完整的实验过程以后发布。

文章一:

[ 转载于:[url]http://www.pppei.cn/blog/read.php?34[/url] ]

我们舍宿四台电脑,通过四口的傻瓜路由相连。不详细说了,充份发挥一下拓朴的优势!

200712061196934249421.gif

下面以 dynamips for 工大瑞普full version 为蓝本实现如下的拓朴(老版本可能会存在问题)

200712061196934263906.gif

要再每台电脑上安装上winpcap,并按如下结构复制文件。

e:\

┠─dynamips

┣ ios ━ unzip-c3620-i-mz.122-37.bin

┣ dynamips   ━┳cygwin1.dll

┃                      ┗dynamips-wxp.exe

┣ workingdir         //空目录

┗ 启动虚拟服务.cmd         //内容为:cd dynamips

dynamips-wxp.exe -H 7200

本次实验笔者是在PC1上作的,前端程序dynagen要放到PC1上,所以要加入如下目录和文件:

e:\

┠─dynamips

┣ dynagen ━┳configspec

┃           ┣dynagen.exe

┃           ┣dynagen.ini

┃           ┗library.zip

┣ labini ━━━ test.net   //内容见下

┗实验控制台.cmd           //内容为:cd dynagen                                                           dynagen.exe ..\labini\test.net

test.net 文件内容:

autostart = false

[192.168.1.101]

port = 7200

udp = 10000

workingdir = ..\workingdir\

[[router R1]]

image = ..\ios\unzip-c3620-i-mz.122-37.bin

model = 3620

console = 3001

ram = 32

confreg = 0x2142

exec_area = 64

mmap = false

slot0 = NM-1FE-TX

slot1 = NM-4T

s1/1 = R2 s1/0

s1/2 = R4 s1/0

[192.168.1.102]

port = 7200

udp = 10000

workingdir = ..\workingdir\

[[router R2]]

image = ..\ios\unzip-c3620-i-mz.122-37.bin

model = 3620

console = 3002

ram = 32

confreg = 0x2142

exec_area = 64

mmap = false

slot0 = NM-1FE-TX

slot1 = NM-4T

s1/1 = R3 S1/0

s1/2 = R4 s1/1

[192.168.1.103]

port = 7200

udp = 10000

workingdir = ..\workingdir\

[[router R3]]

image = ..\ios\unzip-c3620-i-mz.122-37.bin

model = 3620

console = 3003

ram = 32

confreg = 0x2142

exec_area = 64

mmap = false

slot0 = NM-1FE-TX

slot1 = NM-4T

s1/2 = R4 s1/2

[192.168.1.104]

port = 7200

udp = 10000

workingdir = ..\workingdir\

[[router R4]]

image = ..\ios\unzip-c3620-i-mz.122-37.bin

model = 3620

console = 3004

ram = 32

confreg = 0x2142

exec_area = 64

mmap = false

slot0 = NM-1FE-TX

slot1 = NM-4T

此时在PC1上运行

实验控制台.cmd

启动虚拟服务.cmd

PC2 3 4 上分别运行 启动虚拟服务.cmd ,这样就可以实验了。

总结:

其实原理很简单,dynagen作为前端,所以只需要在操作此实验的pc上有就行了,net文件也应在此pc上。而路由器是运行在各个服务器端的,所以 dynamips要在每个PC上都有,ios也要放在服务器端。dynagen会将NET文件中的信息发送给各各服务器端,并实现各路由器之间的连接,有了这个思想就可以用更多的pc搭建更大的拓朴了。

此文章是回忆实验写的,有出错或不明白的请留言(推荐),或至email到:

admin@pppei.cn

===========================================================================

文章二:

[ 转载于:[url]http://www.eguodu.com/bbs/viewthread.php?tid=5107&[/url]

highlight=%E5%88%86%E5%B8%83%E5%BC%8F%2B%E7%BD%91%E7%BB%9C%E5%88%80%E5%AE%A2 ]

在一台PC上运行dynamips的路由器个数是很有限的,如果你有很多PC,那么你就可以做一个

分布式的网络,每个PC上都运行几个路由器,这样一来就可以做一个很大的网络拓扑了。呵呵。 今天测试了linux做服务器的情况,share出来,大家一同分享。 服务器: linux fc5, ip=192.168.0.1 运行dynamips: /usr/dynamip 需要ios: /usr/dynamips/ios.bin 客户端:winXP 运行dynagen。 在服务器上必须得有dynamips.bin这个没什么好说的,如果用linux系统的话,大家可以到网上去下载。如果服务器是winxp的话,用论坛里面提供的dynamips就可以了。 当然服务器上必须得有ios,否则无法运行。呵呵。两个条件缺一不可。 /usr/dynamips: dynamips -H 7200 客户机: dynagen s1.net 关于s1.net的写法如下,不过idlepc的值需要自己根据情况来调整: autostart = false [192.168.0.1]     port = 7200     workingdir = /usr/dynamips [[7200]]     image = /usr/dynamips/ios.bin     npe = npe-400     exec_area = 128     idlepc = 0x613096c0              [[ROUTER R1]]     exec_area = 128     idlepc = 0x613096c0     s1/0 = R2 s1/0     f0/0 = H1 f0/0         [[router R2]]     exec_area = 128     idlepc = 0x613096c0     f0/0 = H2 f0/0     [[ROUTER H1]]     exec_area = 128     idlepc = 0x613096c0     [[ROUTER H2]]     exec_area = 128     idlepc = 0x613096c0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值