Ubuntu内安装开源网络模拟器GNS3

安装

我这里安装架构为Ubuntu GNS3桌面端 + Virtulbox后端。

首先安装Ubuntu 桌面端。

1
2
3
4
5
6
sudo apt update
sudo apt upgrade
sudo apt install apt-transport-https ca-certificates curl software-properties-common
sudo add-apt-repository ppa:gns3/ppa
sudo apt update
sudo apt install gns3-gui gns3-server

然后安装后端
https://github.com/GNS3/gns3-gui/releases/tag/v2.2.38
这里找到virtualbox版下载,下载后打开virtualbox导入虚拟电脑即可。

启动GNS3 前端,选择Run Application on virtual machine。
1
选择我们刚刚导入的虚拟机GNS3 VM

安装L2 L3 IOS

目前只能加自带的交换机,VPC,Cloud等节点。想加L2 L3设备要去这里下载镜像
https://networkrare.com/download-cisco-iou-iol-images-gns3-gns3-iou-vm-oracle-virtual-box-l2-l3-cisco-switch-images/

我这里是L2 L3各选了个。选择方法详细参考cisco文档,这里不展开。
在Edit -> Preference 中选择IOU Devices
2
我这里已经加过了两个设备,如果要新加设备点击New
3
选择Run this IOU devices on the GNS3 VM
4
导入我们下载的IOS镜像,他会自动识别出是L2还是L3的镜像。

然后cisco的设备需要加license

cisco keygen配置方式

配置方式,原文这里 https://www.systemconf.com/2019/01/03/generate-cisco-iourc-license-key-on-gns3-vm-using-python-3/

登录到我们刚导入的Virtulbox中,点击shell执行:

1
2
wget http://www.ipvanquish.com/download/CiscoIOUKeygen3f.py
python3 CiscoIOUKeygen3f.py

然后将生成的内容保存到~/.iourc中即可。

点击这里就能看到我们刚加的设备
7

静态路由实验

打开端口显示

6

这个点开就能显示交换机的端口。

添加笔记

5

可以把我们配置的ip写在设备边上

首先添加L2设备,然后创建两个pvc,并选择下面的网线将他们链接起来。

8

两个pc通过L2设备链接:
右键点PC1和PC2 点击 edit config 可以在PC启动后启动执行命令,我们可以配置ip。
PC1配置:

1
ip 10.1.1.2/24 10.1.1.1

PC2配置:

1
ip 10.1.1.3/24 10.1.1.1

在PC1上ping PC2

1
ping 10.1.1.3

可以ping通。符合我们的预期,因为我们配置的两台PC在同一个网络id中,此时虽然配置了网关,但是实际上并不需要网关的存在,因为同L2网络内可以直接发起arp广播询问目标ip的mac地址。

开启抓包

选择需要抓包的线路,右键start capture

9

对着我们添加的网线点击右键 start capture 这时会唤起wireshark。如果你是Ubuntu可能会和我一样遇到 permission deny。 需执行:

1
sudo usermod -a -G wireshark $USER

然后重启就可以了。
一切正常后就能看到Wireshark被唤醒并开始抓包。

10

假如我们ping一个同子网没有配置的ip 10.1.1.99,就会看到arp广播,Who has 在查询这个ip
100 148.839056 Private_66:68:01 Broadcast ARP 64 Who has 10.1.1.99? Tell 10.1.1.3

11

假如在同一交换机配置了不同子网的ip,比如我这边加了PC5 10.4.4.4/24。我们在PC1 ping PC5。

12

这里可以看到访问非子网的这是去找网关了,由于我们路由10.1.1.1尚未配置。这里配置下。

13

添加路由后配置方法为:

1
2
3
4
conf t
int e0/0
int 10.1.1.1 255.255.255.0
no shutdown

15

此时已经能通网关,所以访问另一个子网的地址也能走到网关了。

也可以使用PC环境下的trace功能查看这个过程

1
2
3
4
5
6
7
PC2> trace 10.4.4.4
trace to 10.4.4.4, 8 hops max, press Ctrl+C to stop
1 10.1.1.1 0.575 ms 0.192 ms 0.163 ms
2 *10.1.1.1 0.224 ms (ICMP type:3, code:1, Destination host unreachable)

PC2>

  • 本文作者: fenix
  • 本文链接: https://fenix0.com/gns3/
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC 许可协议。转载请注明出处!