初学cisco网络设备,一定要有网络设备,如果没有网络设备我们可以使用模拟器来做一系列试验。模拟配置网络工程和真实的物理网络设备几乎相差无几。对于,初学者最好使用像GNS3这样,图形化操作,图形化网络拓扑,这样就可以把抽像的网络拜年进行图化结构。
GNS3安装在windows平台上,是相当简单的,一直下一步就可以,最后简单配置一下,就可以进行你的网络工程之旅。但如果安装在CentOS这样的操作系统上,是比较麻烦的。
一、安装CentOS6操作系统(要安装桌面,因为GNS是基于图形化的)
二、安装支持软件包
- [root@cisco cisco]# yum install QT
- [root@cisco cisco]# yum install Python
- [root@cisco cisco]# yum install Sip
- [root@cisco cisco]# yum install PyQt
注意:以上包名的大小写
三、下载GNS3相关的软件包。
- [root@cisco cisco]# mkdir /data
- [root@cisco cisco]# cd /data
- [root@cisco data]# wget http://www.ipflow.utc.fr/dynamips/dynamips-0.2.8-RC2-x86.bin
[root@cisco data]# wget http://sourceforge.net/projects/gns-3/files/GNS3%20VBE/GNS3-0.8.1-src-vbox-2011-07-29.tar.bz2/download
说明:
c3640-jk9o3s-mz.123-10.bin #cisco设备的IOS文件
http://www.ipflow.utc.fr/dynamips/站点有多个版本的dynamips(干什么用的,大家都懂的)
四、相关目录设定
1、建立目录
- [root@cisco cisco]# mkdir –p /opt/GNS3
- [root@cisco cisco]# mkdir /opt/GNS3/Cache
- [root@cisco cisco]# mkdir /opt/GNS3/Dynamips
- [root@cisco cisco]# mkdir /opt/GNS3/IOS
- [root@cisco cisco]# mkdir /opt/GNS3/Project
- [root@cisco cisco]# mkdir /opt/GNS3/tmp
2、目录权限
- [root@cisco cisco]# chmod o+rw -R /opt/GNS3/Project
- [root@cisco cisco]# chmod o+rw -R /opt/GNS3/tmp
- [root@cisco cisco]# chmod o+rw -R /opt/GNS3/IOS
3、移动文件到对应目录下
- [root@cisco cisco]# cp /data/c3640-jk9o3s-mz.123-10.bin /opt/GNS3/IOS/
- [root@cisco cisco]# cp /data/cisco/dynamips-0.2.8-RC2-x86.bin /opt/GNS3/Dynamips/
- [root@cisco cisco]# chmod +x /opt/GNS3/Dynamips/dynamips-0.2.8-RC2-x86.bin
五、安装并配置GNS3 0.8.1
1、解压GNS3并移动到对应目录
- [root@cisco data]# tar jxvf GNS3-0.8.1-src-vbox-2011-07-29.tar.bz2
- [root@cisco data]# mv GNS3-0.8.1-src /opt/GNS3/
2、启动gns3
- [root@cisco cisco]# python /opt/GNS3/GNS3-0.8.1/gns3.pyw
第一次启动,会弹出上图所示的配置向导(分别配置step1与 step2)
3、配置gns3
A:Dynamips项配置(主要配置dynamips文件位置与GNS工作目录,最后别忘了“test”一下,看是否成功)
B:配置IOS
配置IOS,可以从“ edit”菜单项进行选择,也可以从配置向导中的setp2进入到IOS配置。
如上图所示,浏览cisco的IOS文件,分配置内存,最后“Save”
六、使用GNS3 使用中的错误处理
1、添加一台路由测试
这时,会发现丛左边拉一台设备到右边。会出如上图错误。详细信息如下:
- Traceback (most recent call last):
- File "/opt/GNS3/GNS3-0.8.1/src/GNS3/Scene.py", line 874, in dropEvent
- node = object(renderer_normal, renderer_select)
- File "/opt/GNS3/GNS3-0.8.1/src/GNS3/Node/IOSRouter3600.py", line 31, in __init__
- IOSRouter.__init__(self, renderer_normal, renderer_select)
- File "/opt/GNS3/GNS3-0.8.1/src/GNS3/Node/IOSRouter.py", line 59, in __init__
- AbstractNode.__init__(self, renderer_normal, renderer_select)
- File "/opt/GNS3/GNS3-0.8.1/src/GNS3/Node/AbstractNode.py", line 62, in __init__
- flagsflags = flags | self.ItemSendsGeometryChanges
- AttributeError: 'IOSRouter3600' object has no attribute 'ItemSendsGeometryChanges'
2、修改文件
根据错误提示,做如下修改:
- [root@cisco ~]# vi /opt/GNS3/GNS3-0.8.1/src/GNS3/Node/AbstractNode.py
- # 注解61与62行
- 60 # necessary to receive itemChange() notifications with Qt >= 4.6
61 # if QtCore.QT_VERSION >= 0x040600:
62 # flags = flags | self.ItemSendsGeometryChanges
63 self.setFlags(flags)
64 self.setAcceptsHoverEvents(True)
再添加设备测试