GNS3 是 一个了不起的工具 它允许 IT 专业人员非常简单地创建一个虚拟实验室。 该软件可以虚拟化或模拟各种称为设备的系统。 这些设备的范围从 Cisco 路由器和交换机到 Windows Server、CentOS 和 Fedora. GNS3 还具有利用容器的能力。 如果您正在设计和测试概念验证的想法、重建故障排除环境,或者想深入研究网络工程领域,GNS3 可能适合您。
从他们的网站上可以看出,GNS3 在企业界非常熟悉。 使用它的公司从英特尔等科技企业到美国宇航局等科学组织。 甚至知名银行和电信公司也被列入名单。 这为这个开源工具提供的功能和可靠性增加了极大的可信度。
安装
为了 Fedora 用户,可以从官方存储库轻松安装 GNS3。 从命令行类型:
sudo dnf install gns3-server gns3-gui
单独包的原因是因为 GNS3 可以配置为专用服务器。 这对于团队在处理项目或问题时进行协作很有用。 专用服务器可以安装在裸机上或作为虚拟机。
GNS3 需要具有虚拟化功能的计算机。 这允许软件在运行设备时利用计算机的硬件来提高性能。 要将 Spice/VNC 用作控制台,请安装 virt-viewer 包。
安装完成后,将在 GNS3 的应用程序中放置一个图标。
初始设置
首次打开 GNS3 将打开设置向导。 第一个屏幕上的选项允许用户设置隔离的 VM 环境、从本地计算机运行拓扑或使用远程服务器。 本文中的示例是在本地机器上执行的。
下一个屏幕将应用程序配置为连接到运行 GNS3 服务器的本地计算机。 在这里,我们看到了本地安装在服务器上的应用程序的路径、主机绑定地址和端口。 可以调整这些设置以匹配您的设置。 但是,为了快速设置,最好接受默认值。
验证设置后,将显示一条确认信息,说明与本地服务器的连接成功。 向导中的最后一个屏幕将提供摘要。 点击 结束 按钮完成设置。
在 GNS3 Marketplace 中查找设备
在进入 GUI 之前,这将是访问 GNS3 市场. 该市场包含用于 GNS3 的设备、预配置实验室和软件。 市场中的选项非常广泛,超出了本文的范围。 但是,让我们下载一个设备来看看它是如何工作的。
首先,选择您想要的设备(本文中的示例将使用 OpenWRT)。 选择该设备的模板以进行下载。 设备模板是扩展名为 gns3a 的 JSON 文件。
您也可以在没有模板的情况下安装 OS 节点,或创建自己的。 OSBoxes.org 具有多种与 GNS3 兼容的预构建 VMWare 映像 (VMDK)。 在本文中,我们将使用 Fedora 64 位 VMWare 映像。 您还可以找到许多其他发行版的映像,例如 CentOS、Ubuntu 和 Kali Linux。
要使用 Cisco 设备,需要服务协议或订阅 VIRL 才能从 Cisco 下载 IOS 映像。 有关合法下载 Cisco IOS 的链接和指南,请查看 David Bombal 的网站: https://davidbombal.com/gns3-download-cisco-ios-images-virl-images-best-get/.
您可能还需要安装官方存储库中未包含的 Dynamips。 但是,简单的网络搜索将指向 RPM 包。

将设备导入 GNS3
现在我们有了一些设备,让我们使用刚刚下载的模板和图像构建一个小而简单的拓扑。
初始设置后 新设备模板 窗口将打开。 从这里我们可以导入模板文件,例如从 Marketplace 下载的 gns3a 文件。 无需模板即可添加设备的其他选项包括 IOS 设备、VM 和 Docker 容器。
要添加 OpenWRT 路由器,请单击 导入设备模板文件. 这将打开 添加设备 向导。 查看显示该设备的类别、供应商、架构和 KVM 状态的第一个屏幕上的信息,然后单击 下一个. 现在选择 服务器类型 运行设备并单击 下一个. 在这里我们可以指定是否要在远程服务器、GNS3 VM 或本地机器上运行它。 验证服务器要求后,单击 下一个 继续安装。
现在是时候安装 OpenWRT 设备的镜像文件了。 选择版本并点击 下载 按钮。 这将转到包含图像文件的站点并下载它。 本文将使用从项目网站下载的 OpenWRT 18.06.4。 如果图片的版本不在列表中,点击按钮 创建一个新版本,并输入版本号(在本例中为 18.06.4)。 选择文件名并单击 进口 导入图像。 然后 GNS3 将询问您是否要复制图像并解压缩(如果需要)。 接受它并完成安装。

在没有模板的情况下添加设备
添加 Fedora 从 OSBoxes 下载的 VM,单击左侧的图标之一并选择 新设备模板 靠近底部。 选择 添加 Qemu 虚拟机 并点击 下一个. Enter 设备的名称(在这种情况下 Fedora 30) 然后点击 下一个. 验证 QEMU 二进制路径并输入要用于 VM 的 RAM 量,然后选择 控制台类型. 在下一个屏幕上选择 新图片 并浏览 VMDK 文件。 根据文件大小,可能需要一些时间。 要复制/导入图像,请选择 是的 完成后点击 结束.

在 GNS3 中添加和连接节点
现在我们有了一些设备,让我们用 OpenWRT 构建一个简单的拓扑 Fedora 在 GNS3 中。 左侧的图标代表路由器、交换机、终端设备和安全设备。 倒数第二个显示所有设备,底部选项是添加将节点相互连接的链接。
点击 路由器 图标并将 OpenWRT 路由器拖到右侧的空工作区上。 点击 终端设备 图标并对计算机节点执行相同操作。 根据文件的大小,PC 节点可能需要一些时间才能出现在工作区中。 要连接节点,请单击 添加链接 然后单击一个节点,选择接口(即 Ethernet0),然后对另一个节点执行相同操作(如下面的演示所示)。
您可以通过转到菜单栏并选择来自定义控制台 编辑 > 首选项 > 常规. 选择选项卡 控制台应用程序 并点击 编辑 按钮。 从这里您可以在下拉菜单中选择您最喜欢的终端,甚至可以在下面的文本框中对其进行自定义。
一切就绪后,单击顶部的绿色(播放)按钮启动节点。 拓扑摘要部分中的灯将变为绿色,表示节点已打开。 要打开节点的控制台,请单击 控制台到所有设备 左侧的按钮(它看起来像一个终端图标)。 远程查看器窗口 Fedora OpenWRT 的终端窗口将打开。
完成后,您可以通过右键单击节点并选择单独关闭节点 停止,或停止所有节点单击红色 停止 顶部栏中的按钮。

结论
GNS3 是一款功能强大的软件,其功能超出了本文的范围。 该软件类似于 Cisco 的 Packet Tracer。 但是,Packet Tracer 是一个对程序编码有限制的模拟器。 另一方面,GNS3 使用硬件的实际操作系统虚拟化/模拟节点。 这提供了完整的功能和更接近实际硬件的体验。
这 GNS3 文档 网站提供了大量资源,可以进一步研究应用程序的工作原理。 他们还为那些有兴趣深入研究软件工作原理的人提供培训课程。