GNS3部署使用
GNS3
- what:GNS3部署使用
- where: centos7、docker、x86/arm64
- when: 2022.2.23
- who: JRT
- why: 记录
- how:
1.含义
GNS3是思科旗下一款具有图形化界面可以运行在多平台(包括Windows, Linux, and MacOS等)的网络虚拟软件。
开源地址:https://github.com/GNS3
2.部署
gns3分为服务端和客户端,客户端分安装客户端工具和浏览器访问两种,服务端和客户端要分别部署,搭配使用。为简化部署,查到第三方有将服务端gns3-server与浏览器客户端 gns3-web-ui做了整合直接可以拉取使用。
docker run -itd --name gns3 --privileged=true -e BRIDGE_ADDRESS="172.21.1.1/24" -v $PWD/data:/data -p 9005:3080 jrt101/gns3:latest
#dockerhub地址:https://registry.hub.docker.com/r/jsimonetti/gns3-server
#github地址:https://github.com/jsimonetti/docker-gns3-server
# -e BRIDGE_ADDRESS="172.21.1.1/24" - Configure the internal NAT network bridge for GNS3
3.使用
docker容器启动后,GNS3默认端口是3080,默认访问地址:http://ip:3080/,首页如下:

序号1:server,可以继续添加服务端,添加后一键切换;
序号2:search by name,每一个网络拓扑创建时会先创建项目,根据项目名进行搜索;
序号3:修改一些配置项;
序号4:增加或创建一个项目;
序号5:导入一个项目,即可以复用别人的网络拓扑;
选择上图选项4,点击新建项目,按照提示输入项目名如:jrt,点击完成。

序号1:菜单键,主要是可以控制导入导出一些模板,即增加一些路由器、交换机;
序号2:增加设备,选择需要的设备,直接拖拽,没有自己需要的设备时需要导入镜像。常用有主机、交换机、路由器构建网络拓扑图,并使用接口连接;
序号3:启动或停止设备;
如下图,就是刚通过增加设备选项,选择主机进行拖拽,进行连接的最简单的网络拓扑,右边可以看到该网络拓扑的基本信息,红色代表主机未启动,绿色代表启动。若设备未启动,可以鼠标右击单个设备,选择start进行启动,也可以直接点击导航栏启动键一次性全部启动(不推荐,设备在启动时可能会占用大量cpu)

鼠标右击主机,选择网络控制台,进入网络控制台,切换英文输入法,也可以键盘录入。
#常用命令
?相当于linux中--help;
show ip 查当前主机ip;
ping 测试网络各个主机之间联通性;
给每个主机ip,根据自己规划
鼠标右击,edit config,
根据注释说明,填写自己需要的模拟IP

填完后即可测试连通性。

4.其他
导入模板(路由器、交换机)默认的GNS3服务未提供交换机,需要网络下载后导入,常用的这边已经整理上传至obs,直接导入即可。
obs地址:obs://JRT/imagenet/
导入镜像教程:
如我现在本地有Cisco 3660路由器镜像,点击菜单,点击new template

选择序号2 install appliance from server
输入导入镜像的关键字如3660,点击下载,如下图所示

点击import导入,按照提示选择本地的镜像,完成后点击create即可


删除导入的镜像:
点击加号,点击open dialog to configure

点击 go to tempelete preferences

点击Dynamips
点击菜单键,删除即可

深入实践:
https://cloud.tencent.com/developer/article/1509374?from=article.detail.1671306