网工神器:PNETLab模拟器踩坑过程

news2024/11/23 10:02:51

目录

0、前言

1、PNETLab介绍

2、下载安装

2.1 下载

 2.2 导入

 2.3 启动

 2.4 注册和登录

3、汉化

4、镜像

5、控制台

5.1、HTML控制台

5.2、默认控制台

6、总结


0、前言

        由于工作需要,想测试一下SD-WAN,手边既没有测试环境又没有测试设备。突然想到为什么不用模拟器测试。经过我一番操作好像发现了新大陆,没想到模拟器的世界发生了翻天覆地的变化。真是“一日学习一日功,一日不学十日空”。

1、PNETLab介绍

        PNETLab 的英文全称是Packet Network Emulator Tool Lab,直译成中文就是分组网络仿真工具实验室,其实它就是一个和华为是ENSP、思科EVE类似的模拟器,它包括PNETLab Box和PNETLab store。

        PNETLab Box(有离线和在线两种模式)是一个虚拟机。它安装在本地机器上,Lab将在其上运行,因此您不必担心实验室的速度。
        PNETLab Store是一个web平台,在网络、数据库、系统等领域拥有数百个免费实验室。。。你所需要做的就是获取Lab和学习(从PNETLab下载时,IOS、Docker都包含在实验室中)


        用过模拟器的朋友都知道,做思科相关的实验一般都用EVE、GNS3或者PT;做华为的一般都是ENSP,不过最近ENSP已经不更新了,不再维护了,不过用还是可以用的,后期应该有更炫的华为模拟器出世,目前正在开发当中;做华三实验一般就是HCL。

        那么今天介绍的PNETLab其实类似于EVE,需要装到虚拟机中,加载过程是EVE是一摸一样的,EVE怎么加载,这个PNET就怎么加载。
        //以上内容摘录51CTO博客作者wljslmz

2、下载安装

                PNETLab官网:PNETLab : Lab is Simplehttps://pnetlab.com/

2.1 下载

        下载地址:

https://drive.google.com/file/d/1BbOL7JEQbChymPeux9JGrHZpLsQyCpPQ/view?usp=sharinghttps://drive.google.com/file/d/1BbOL7JEQbChymPeux9JGrHZpLsQyCpPQ/view?usp=sharing

        下载地址被墙,需要科学上网。

        下载后得到ova文件。

 2.2 导入

        由于使用虚拟环境,需要提前安装好VirtualBox或VMWare Workstation。

        我使用VMWare Workstation,点击菜单--文件--打开,浏览到ova文件,点击打开。

         修改合适的名称和路径,点击导入。

        导入后进行编辑,修改合适的cpu、内存占用。这里碰到2个坑。

        第一个坑:网络适配器模式,默认第一张网卡是NAT,第二张网卡是桥接模式。我不想使用默认配置,结果更改以后一直进入不了系统,改回来后可以正常启动。所以不能更改网卡的默认模式。

        第二个坑:由于虚拟机内需要虚拟好多设备,所以该虚拟机CPU需要打开虚拟化引擎。

         当我勾选以后启动报错,提示不支持类似的样子。这个报错是我之前看到的,由于我做其他测试没有涉及到虚拟机嵌套一直没有解决。今天不得不解决了。

        我从个人笔记本BIOS里看到虚拟化是打开的,而且操作系统的Hyper-V等虚拟化设置也是关闭的。

        终于在网上看到一个解决办法,原来Win11某次更新后会把内核隔离打开,内核隔离打开后会默认启动Hyper-v,这与VMWare是冲突的,所以需要关闭。

         设置里搜索内核隔离,即可找到,关闭重启。

        第三个坑:建议新手入门虚拟机内存可设置小一点,不会占用太多空间,同时建议关闭该虚拟机的3D加速。

 2.3 启动

        以上设置完毕后即可启动虚拟机。

        

         启动界面的logo设计还可以。

        

        启动以后可以看到登录地址。 建议先不要web登录,使用root/pnet在控制台登录。第一次登录需要初始化一些配置。

        这个过程需要更改密码、设置主机名、设置IP、设置NTP、设置代理等,也可保持默认。

        设置完成后重启。

         重启后登录可以看到系统信息。

 2.4 注册和登录

        

       在您第一次登录PNETLab,您将获得初始屏幕。您有两种选择:离线模式和在线模式。

 在线模式

  • 需要互联网才能工作
  • 需要注册。
  • 支持PNETLab的全部功能
  • 你可以下载和使用所有的实验室在商店
  • 你可以分享或出售实验室给商店
  • 限制10个账户(可升级)

离线模式:

  • 不需要网络来工作
  • 不需要注册。默认登录帐号:admin/pnet
  • 支持PNETLab的全部功能
  • 你只能在商店中下载和使用Open Labs(顶部带有“Open”字样的实验室)
  • 你不能分享或出售实验室给商店
  • 限制10个账户(可以升级,但需要互联网)

        以上内容来源于官方文档。如果没有网络不使用线上实验室的实验可以使用离线模式。离线模式里自己添加设计实验。离线模式也可以下载带有OPEN字样的实验,这时候也需要注册网站账号,与其这样不如使用在线模式。

3、汉化

        虽然我英语水平应对英语软件和文档还可以,也建议各位使用英文界面,但是鉴于有这个功能还是介绍一下。

        使用ssh工具把下载到的汉化包复制到/opt/unetlab/html/language/China目录中。

        

 在web界面中设置语言

         设置完毕后界面变成中文。

4、镜像

        在使用离线版设计实验时会发现无法添加除PC以外的设备,从线上实验室下载实验后会发现好多设备启动后马上停止。

因为:注意:PNETLab不再提供IOS,所以你看不到任何依赖包。实验室中所有节点将无法启动。

官方最新说明已不再提供IOS镜像,而且官方给出的一个连接:i-share.top

这个网址估计停了。

想要镜像只能通过其他方式了。

我自己找到一个:LabHubA repository of network emulator images for testing and simulation.https://labhub.eu.org/zh-CN/

   基本上有3种类型的镜像,第一种是dynamips,选择下载相应类型的镜像通过工具上传到相应目录;第二种是IOL,也是同样,网上说需要通过系统设置修复一下,我使用过程中没有发现问题;第三种是qemu,这里会发现很多不同厂家不同品牌的设备,使用过程中发现上传到相应目录也部分没有自动发现。

        这是我导入的镜像。

       还有一点说明一下,可能是因为版权问题,pnet实验中不包含ios,但是其他类型的docker镜像真是太丰富了,基本上想做什么类型的实验都可以。

        可以下载实验室里的实验,虽然实验中的设备镜像没有,但是终端的docker镜像会自动下载,供以后使用。

        比如我下载了一个NAT实验,zabbix、syslog、TFTP、nagios等类型的服务都有了,可以以后自己使用。 

        还有一种办法是自己制作qemu镜像,按照官方说明制作,我没有实践,没有测试。

5、控制台

        系统支持两种控制台类型:HTML控制台和默认控制台。使用HTML控制台,您可以控制台或远程到所有设备,而无需任何外部包。

        当您登录时,HTML被设置为默认值,但您可以通过单击菜单栏上的HTML控制台切换到默认控制台。

5.1、HTML控制台

        当设备启动时,您可以通过单击设备使用HTML控制台。每个设备将在终端窗口中打开一个新选项卡。

        要粘贴到HTML控制台,您可以按Shift + Ctrl + Alt,然后粘贴到文本框;

        上传文件到HTML控制台主机可以按Shift + Ctrl + Alt,然后上传文件到共享文件夹。然后您可以在路径:thinclient_drives/GUACD/download中找到该文件。

5.2、默认控制台

        要使用默认控制台,您需要安装下面的一些外部软件包。

https://mega.nz/#!V50gUCQY!ysvjljJrulRT0De96BhIXCEnP2uDkE-zWr7Kyyml3ds

        这个下载地址需要科学上网。

        还是建议实用HTML的控制台。

6、总结

        说实话,官方口好:Lab is Simple,实际测试也不难实用,难得是灵活运用,学以致用。

        让这个模拟器在自己工作上发会最大作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/457342.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

八年软件测试生涯,是时候做出改变了

五年前,我在南方的大城市:广州,做着一个快乐的游戏测试,工作不太忙,对一切技术充满了好奇心。测试工作不专业,也不受重视。但我有自己的快乐。工作不忙的时候,我今天学学Python,明天…

uniapp + vue3开发中组合式函数必须是一个同步函数

目录 vue3中的组合式函数用法: 官网示例异步组合式函数:同步函数写法 改造成导出async组合式函数时: uniapp无法使用async组合式函数的原因: vue3中的组合式函数使用时,导出的组合式函数必须是一个同步函数。 vue3…

塔望3W消费战略全案丨元力参堂:从0到1,超级大单品跨越式增长

元力参堂 客户:上海弥富生物科技有限公司 品牌:元力参堂 服务:3W消费战略 品牌全案 项目背景 2020年初,一场突如其来的疫情让我们按下了暂停键,大家经历着疫情的考验。长时间的隔离、封闭影响到生产、消费、投资、物…

ChatGPT3分钟写的千字福尔摩斯小说,老师都分辨不出真假

AI写小说!感受ChatGPT3分钟写的千字福尔摩斯小说!逆天! ChatGPT写悬疑小说 其实在最初,测试者要求ChatGPT写一个5000字的故事,但AI居然直接罢工,还言简意赅:“不,太长了。” 于是…

MySQL库和表的操作

1 什么是数据库?什么是SQL? 科学的组织和存储数据,如何高效获取和维护数据 2 一条SQL语句的执行过程 SQL语句就是一个数据库能够识别的指令语言 在实际操作过程中,创建连接,连接MySQL的server mysql -uroot -P330…

PMP证书备考攻略+PMP知识点汇总

一,考PMP好处多 1.能力提升 大型项目,领导专业团队 2.升职加薪 晋升管理岗,优先升职加薪 3.招投标加分 具有PMP证书,企业招标有加分 4.转型利器 助力转型,拓宽职业发展 5.公司支持 企业鼓励学习,报销费用 6…

LVS负载均衡-DR

1.DR模式中每台主机都有一个VIP地址 虚拟网址放在lo网卡上(回环网卡) arp_ignore1 Arp_announce2 系统不使用IP包的源地址来设置ARP请求的源地址,而选择发送接口的IP地址 2.内核参数修改 3.vim /etc/rc.conf 开机自启动 Chmod x /etc/rc.d…

Spring Security实战(六)—— 跨域与CORS

跨域是一种浏览器同源安全策略,即浏览器单方面限制脚本的跨域访问。 一、认识跨域 跨域(Cross-Origin)指的是在Web开发中,当一个网页的内容要从不同源(即不同的域名、协议或端口)获取时,就会发…

时序分析与时序约束知识总结

文章目录 时序分析如何查看时序报告时序分析的分类和任务HOLD违例修复:SETUP违例修复:时序违例的修复 时序约束约束的分类时序约束的作用SDF文件OCVPVT共同路径悲观效应(CPP)setup time与hold time和什么有关clock Jitter与clock Skewsetup和hold裕度计算…

10.java程序员必知必会类库之邮件

前言 邮件功能在当前互联网应用中已经是很成熟的功能,也是作为java程序员应该掌握的技能。常见使用场景有: 电商软件开电子发票,需要发到用户邮箱里面生产实时报警,需要发到邮箱里面银行软件申请的征信报告,电子账单…

Django框架之Admin站点管理

Django的强大体现在其内置的Admin模块可以使得开发人员在不做任何编码的情况下就拥有网站后台管理功能。 概述 内容发布:负责添加、修改、删除内容 内容访问查看 配置admin应用 在settings.py中添加django.contrib.admin 默认已添加 创建管理员账户 python man…

九、1~8文章的阶段案例

一、案例 现在我们来做一个相对综合一点的练习:书籍购物车 案例说明: 1.在界面上以表格的形式,显示一些书籍的数据;2.在底部显示书籍的总价格;3.点击或者-可以增加或减少书籍数量(如果为1,那…

【论文精读】ISBI 2022 - Retinal Vessel Segmentation with Pixel-wise Adaptive Filters

【论文精读】ISBI 2022 - Retinal Vessel Segmentation with Pixel-wise Adaptive Filters 【论文原文】:Retinal Vessel Segmentation with Pixel-wise Adaptive Filters 【作者信息】:Li, Mingxing and Zhou, Shenglong and Chen, Chang and Zhang, …

【Linux】线程-线程控制

线程控制 线程控制线程创建线程终止线程等待分离线程 线程控制 使用线程需要注意的是,需要引入头文件pthread.h,并且在编译的时候,需要使用-lpthread 线程创建 int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*…

QT中TCP的学习

文章目录 qt中TCP的实现 qt中TCP的实现 学习视频 QT中可以通过TCP协议让服务器和客户端之间行通信。服务器和客户端的具体流程 下方的信号都是系统提供的,我们只需要写相应的槽函数 A、服务器: 创建QTcpServer对象启动服务器(监听&…

Flutter ListView组件详解

今天是2023年4月24日 今天重新复习了一下关于ListView的内容,现在就重新整理一下关于ListView的内容和理解 : (1)ListView和Column之间有什么区别? 在我理解中ListView和Column都是可以有很多子组件的组件,它们之间区别在于它们排列的形式和…

python实现AI写歌词GUI版本【文末源码】

**引言:**自然语言处理作为人工智能的一个重要分支,在我们的生活中得到了广泛应用。其中RNN算法作为自然语言处理的经典算法之一,是文本生成的重要手段。而今天我们就将利用RNN算法建立一个写歌词的软件。其中的界面如下: RNN指的…

使用binding时,LayoutSubscribeFragmentBinding报错

LayoutRecommendFragmentBinding是一个DataBinding类,它由编译器自动生成,用于访问布局文件中的视图。如果你在代码中看到LayoutRecommendFragmentBinding报红(提示未解析的引用),可能有以下原因: 1. 检查…

Docker 的数据管理(dockerfile)

Docker 的数据管理(dockerfile) 管理 Docker 容器中数据数据卷数据卷容器端口映射 容器互联(使用centos镜像)Docker 镜像的创建1.基于现有镜像创建2.基于本地模板创建3.基于Dockerfile 创建镜像…

Android主流网络请求开源库的对比

目录 一、为什么要用网络请求开源库? 网络请求开源库是一个将网络请求的相关功能封装好的类库 没有网络请求框架之前 App想与服务器进行网络请求交互是一件很痛苦的事:因为Android的主线程不能进行网络请求,需另开1个线程请求、考虑到线程池…