分布式 dynamips+dyangen (更新于07.3.30)
很多网友都反映用此文方法行不通,现象为:分布在各计算机上的路由器能起来,但互联的端口是Down的,以至于ping 不通。在此特别感谢 flyxj 网友QQ联系到我才引起我的高度注视使问题得到解决,不会再给读者误导(本人能力是很有限的)。
原因经分析找到了,NET文件中有[localhost]一句,localhost 会被本地的hosts文件解析成127.0.0.1,想毕各位已经明白了吧,分布在各计算机上的路由器之间的连接是通过UDP=后边指定的端口通信的,由于127 和192不在同一子网,所以端口自然UP不起来了。
注意:笔者用最新的dynamips 0.2.7RC1和dynagen 0.90 实验不成功,有错误提示,google 了一下说是两个版本不匹配(晕)。请更新后仍不成功的朋友换本文推荐的版本试一下
dynamips 固然是个好东西,但其对内存苛刻的要求又让人头痛,虽说现在的内存比较便宜了,可对于像我这样的学生一族,又岂能承受的了。笔者01年买的电脑,一直也在升级,到现在才用上了512的内存。
那些有钱人新买来的电脑多是1G内存双核CPU,居然用来玩卡丁车,内存占用没上过500,这自然勾起我节约能源的爱国之心,用他们的电脑分担几台路由器,来完一大网络的模拟。“要学会花别人的钱”,嘿嘿,“要学会用别人的电脑”更恰当!于是笔者尝试了一下dynamips的分布式功能。
我们舍宿四台电脑,通过四口的傻瓜路由相连。不详细说了,充份发挥一下拓朴的优势!
下面以 dynamips for 工大瑞普full version 为蓝本实现如下的拓朴(老版本可能会存在问题)
要再每台电脑上安装上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`
p_w_picpath = ..\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`
p_w_picpath = ..\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`
p_w_picpath = ..\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`
p_w_picpath = ..\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到:[email]admin@pppei.cn[/email]
作者:Beafuture'blog
地址:[url]http://www.pppei.cn/blog/post/34/[/url]
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
dynamips/dynagen 汉化版(7.31)
dynagen-0.9.3-CHS(测试)
Dynamips 0.2.7 汉化版(测试)
新dynamips前端GNS-3(6月6日更新)
关于BGP同步和路由反射
0
分享
收藏
19篇文章,8W+人气,0粉丝
Ctrl+Enter 发布
发布
取消
转载于:https://blog.51cto.com/82880/71011
分布式 dynamips+dyangen (更新于07.3.30)相关推荐
- 2小时07分30秒!尘封逾15年中国马拉松国家纪录被打破 | 美通社头条
美通社消息:全新的历史时刻!特步见证!2023年3月19日,何杰和杨绍辉穿着特步160X冠军跑鞋在无锡马拉松赛道上书写了中国马拉松新的骄傲:何杰以2小时07分30秒的成绩冲过终点.杨绍辉紧随其后,以2 ...
- 掌握分布式环境缓存更新策略,提高缓存与数据库双写一致性!
概述 随着时代的发展,服务系统架构也已经由最初的单体架构转变为分布式.微服务架构模式. 从数据体量上来看,各系统存储的数据量越来越大,数据的查询性能越来越低. 此时,就需要我们不断的进行优化,最常用的 ...
- klock 分布式锁重大更新
开发四年只会写业务代码,分布式高并发都不会还做程序员? klock简介 基于redis的分布式锁spring-boot starter组件,使得项目拥有分布式锁能力变得异常简单,支持spring ...
- 深入理解分布式技术 - 先更新数据库,还是先更新缓存
文章目录 Pre 数据不一致 更新缓存的方式 先更新数据库,再更新缓存 (数据库是新的,但缓存中数据是旧的) 先删缓存,再更新数据库 (并发操作下出现业务不一致) 先更新数据库,再删缓存 ( Cach ...
- 开发路上踩过的坑要一个个填起来————持续更新······(7月30日)
欢迎转载,请注明出处! https://gii16.github.io/learnmore/2016/07/29/problem.html 踩过的坑及解决方案记录在此篇博文中! 个人理解,如有偏颇,欢 ...
- 小程序弹出层禁止列表滑动_是时候展现真正的技术了!小程序教程来了——百战Web前端课程更新05.07...
百战程序员十大精品课程,实时更新,保持行业领先.本次更新课程Web前端第二十九阶段安心食疗-微信小程序全部7个章节及课程资料.小程序是依托微信而生的,是一种不用下载就能使用的应用,也是一项创新,经过近 ...
- 2022华中杯数学建模思路实时更新-ABC思路已更新(A一二程序已更新)-4月30日19时
[关注我,思路实时更新,详细思路持续更新.去年原创思路,被很多机构贩卖,都是免费的,程序也是免费的,以前是您好啊数模君/数模孵化园,现在改名啦,认准:,原创发布,别被坑了] 目录 [详细思路,B已更新 ...
- 【SSM分布式架构电商项目-07】后台管理系统查询商品列表以及日志的书写
查询商品列表 JS EasyUI的datagrid的格式化输出 默认情况下,会直接显示返回的数据,但是有些情况下不能直接显示,如:价格.日期.性别,需要指定formatter函数. 后台实现 Cont ...
- golang 分布式框架 (持续更新)
源码地址: https://github.com/MwlLj/go-micro-service go-micro-service golang分布式框架 zookeeper 安装与启动 http:// ...
最新文章
- 剑指offer_第16题_合并两个排序的链表_Python
- 【ValueError: Target is multiclass but average=‘binary‘. Please choose another average setting, one 】
- .NET6之MiniAPI(一):开始Mini API
- python程序题斐波那契数列_Python_经典题_斐波那契数列
- java、sqlserver复习
- kubevirt在360的探索之路(k8s接管虚拟化)
- 自定义video控制栏,移动端可行
- Kent Beck 的《测试驱动开发》(TDD) Money示例Ruby版
- 很实用的,GridView中使用DataFormatString属性格式化内容
- Windows系统性能分析
- 中科大2021计算机应用数学期末回忆版
- 常用的电气制图软件有哪些?以及各自的优缺点
- 超好用的卸载工具——geek(免安装)
- oracle g1 gc,G1 GC日志分析
- Python计算机视觉-仿射扭曲简单实例
- 微信小程序之文本换行居中
- 减少代码重复率的方法
- C++ :线程的暂停、恢复和停止
- ●●●观世音菩萨●●●
- AR剪辑笔记之视频调色
热门文章
- 速卖通手机端怎样加入html,如何正确使用速卖通手机版的关联营销模板
- mysql解压包安装linuex_CentOS下安装Apache,php,Mysql
- 文件的记录c语言程序,c语言程序学生籍贯信息记录簿设计.docx
- 华为交换机s2700怎么重置_华为交换机忘记console的密码,怎么恢复出厂设置
- spring注入普通java类_普通java类如何取得注入spring Ioc容器的对象
- C/C++课程设计 新生入学管理系统(二)
- java被放弃了_为什么学Java那么容易放弃?
- set和map去重调用什么方法_【ES6】Set、Map
- java 相对路径获取_在java项目中通过相对路径获取资源的方式
- weblogic命令行操作