作为一名网络工程师,通过模拟器来搭建实验环境是必不可少的,主流的网络模拟器有如下几款:Packet Tracer是思科公司出的一款模拟器,只能模拟思科自己的设备,由于此款软件是纯软件模拟,所以思科设备的很多特性模拟的不是很好,可以应付CCNA的实验,只适合入门,再复杂点的环境就要找其他模拟器了。Dynamips是一个基于虚拟化的模拟器,用于模拟思科的路由器,中国大神-小凡通过添加GUI用户界面开发出小凡模拟器,此款模拟器直到现在在网络行业仍有很高的使用率,通过PC桥接可以使模拟器中的路由器与真机或vmware中的虚拟系统桥接在一起,功能强大。还有一款GNS3,这款算是比较完美的一款思科模拟器,也可以通过真实镜像运行真正的ios系统,并且在分析抓包时操作特别方便。

接下来介绍一下eve-ng模拟器, 此款模拟器的前身时Unetlab1.0,它不仅可以模拟网络设备,也可以运行虚拟机,理论上来说,只要能将想要运行的虚拟磁盘转换为qcow2格式,就可以在eve-ng中运行。eve-ng融合了dynamips IOL和KVM,需要注意的时它是深度定制的Ubuntu操作系统,想要玩转它需要懂些Linux基础知识。搞技术就是这样,学无止境,说不上什么时候就要用到其他技术知识,我的Linux知识是在大四时通过《Linux就该这么学》这本书学习的,很适合新手使用,当时还只是在这本书的官网上学习,现在此书已经出版上市了。

eve-ng分为社区本版与pro版本,免费的社区版应该已经足够大部分实验使用,也可以在网上了解国内大神破解后的pro版本进行安装。eve-ng的安装可以通过在16版本的ubuntu-sever上安装eve-ng相关安装包进行安装,也可以直接安装eve-ng的linux镜像,更简便的方法就是使用ova导入vmware安装。可以在EVE-NG官网下载到ova格式的虚拟机文件,在VMware Workstation Pro或VSPHERE等虚拟机中导入即可,root的默认密码是eve。EVE-NG在交互模式上更加具有优势,与GNS3截然不同。GNS3更像是用户使用的软件,只有GNS3支持的 OS才能使用;而EVE-NG更像是CS模型,EVE-NG是服务端,用户端可以是支持http/https的任意OS。如基于ubuntu安装需要注意如下几点:

1. sed -i -e ' s/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT= "net.ifnames=0 noquiet" /' /etc/default/grub用这条命令让网卡以ethX命名,

update-grub,更新grub,并在配置文件/etc/network/interfaces 中更改网卡名称为eth0

2.安装eve-ng的命令如下:

wget -O - http://www.eve-ng.net/repo/eczema@ecze.com.gpg.key | sudo gpt-key add -   //获取密钥添加到系统

add-apt-repository "deb [arch=amd64] http://www.eve-ng.net/repo xenial main"  //添加更新源

aptitude update 

aptitude install eve-ng

安装完成后,重启系统,会再次进入eve-ng的配置界面,ntp服务器可以改为pool.ntp.org,虚拟机的网卡推荐设置为nat模式,设置完成后再次重启,当界面中eve三个字母有明暗变化说明安装成功,但要是过了很久也没进入系统,就要检查网卡模式是否正确,是否开启dhcp模式并再次重启。

eve-ng中可以导入三种镜像文件,dynamips、IOL、QEMU,这三种文件的上传方式各有不同,首先搭建好ftp服务器使宿主机上的镜像可以传到eve-ng中,推荐使用WinSCP,使用比较方便。通过SecureCRT连接到eve-ng后,Dynamips上传到/opt/unetlab/addons/dynamips文件夹,IOL上传到:/opt/unetlab/addons/iol/bin中,QEMU上传到:/opt/unetlab/addons/qemu中。注意IOL文件还要导入iourc和CiscoIOUKeygen.py两个文件,并使用python CiscoIOUKeygen.py 命令生成字符串,粘到iourc文件中,才能正常使用。QEMU会更复杂一些,因为每种设备镜像和文件夹命名都有规定,具体可以在eve-ng的官网上查看。这三种文件上传完成后都要使用/opt/unetlab/wrappers/unl_wrapper -a fixpermissions这条命令修改下权限,上传好之后就可以正常使用了。在eve-ng中使用ifconfig查看eth0的ip地址,在宿主机中通过浏览器打开此地址,账号密码默认为admin、eve。接下来就可以开始做实验了。

如果需要抓包和使用SecureCRT,还需要做一些操作,浏览器网址栏中在eve-ng对应的ip地址后加/files/windows.zip,下载该文件,编辑wireshark_wrapper.bat,用户名密码确认一下,再更改wireshark的程序路径,然后将整个UNetLab文件夹放入C:\Program Files下,运行win7_64bit_wireshark.reg注册,这样就可以在设备上右击点capture选要抓包的端口,crt也可以正常使用。

以上简单的介绍了eve-ng的安装与使用方法,但此款模拟器的使用技巧仍有很多,比如把虚拟出的网络设备或系统桥接到宿主机或通过宿主机的其他物理网卡连接到真实的网络中,或者自己定制镜像。想要使用这些功能需要一些Linux知识,可以通过上面我推荐的书籍进行学习。

万能模拟器eve-ng介绍的更多相关文章

  1. Network-Emulator Network-Emulator-Toolkit网络模拟器使用详细介绍

    Network-Emulator-Toolkit网络模拟器使用详细介绍 by:授客 QQ:1033553122 原理介绍 图1 如上图,一个ADSL用户通过modem连接到网络,通过网络应用如IE,M ...

  2. GPS信号模拟器信号发生器应用介绍

    GPS信号模拟器信号发生器应用介绍 随着近些年的科学技术不断发展,卫星导航技术也在日益发展和成熟,并在不同领域得到广泛的应用.尤其在导航定位接收机的研制测试阶段,就需要GPS信号模拟器来模拟不同环境和 ...

  3. Android模拟器的文件目录介绍

    文件存放在 .avd文件夹下 .ini为对应的配置文件     打开.avd文件夹 *.lock文件夹保存的是模拟器的一下数据,当模拟器正常关闭时这些文件夹都会被自动删除. 当模拟器无法开启的时候可以 ...

  4. Android模拟器adb命令介绍

    在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用 在SDK的Tools文件夹下包含着Android模 ...

  5. 快速构建Windows 8风格应用1-开发工具安装及模拟器使用

    原文:快速构建Windows 8风格应用1-开发工具安装及模拟器使用 本篇博文主要介绍的是开发Windows 8风格应用中常用的两个开发工具:Visual Studio 2012和Expression ...

  6. Unity3d如何profile模拟器

    最近有反馈X2在一些模拟器中运行偶尔非常卡,达到5秒左右,而这类问题在真机上没出现过,于是想用unity profile下模拟器.但模拟器是运行在虚拟机里面的,市面上大多模拟器并没有提供虚拟机网络设置 ...

  7. 如何实现模拟器(CHIP-8 interpreter) 绝佳杰作.

    转自 http://www.multigesture.net/articles/how-to-write-an-emulator-chip-8-interpreter/ How to write an ...

  8. 全球首款iOS模拟器出炉!在违法的边缘疯狂试探

    对于许多智能手机用户,特别是手游玩家来说,在手机屏幕的方寸之间进行操作显然并非特别方便,而且在多年之前,由于手机配置不足,也导致了用PC来玩手游的需求不断涌现.彼时,BlueStacks及夜神等一众A ...

  9. Unified Networking Lab 安装使用IOL镜像

    Unified Networking Lab 安装使用IOL镜像 Unified Networking Lab 很久以前,在一个星系远的地方,很远的工程师们为eBay寻找二手路由器来满足家庭实验的需求 ...

随机推荐

  1. Spring Boot项目中MyBatis连接DB2和MySQL数据库返回结果中一些字符消失——debug笔记

    写这篇记录的原因是因为我之前在Spring Boot项目中通过MyBatis连接DB2返回的结果中存在一些字段, 这些字段的元素中缺少了一些符号,所以我现在通过在自己的电脑上通过MyBatis连接DB ...

  2. linux 文件赋权限

    chown tomcat:tomcat /logs chmod 766 /logs

  3. 机器学习实战笔记——KNN

    机器学习实战——读书笔记 书籍奉上

  4. 01.02 linux命令(1

    =================常用的Linux命令============================Ls 查看当前文件夹下或者其他文件夹的文件列表或者文件夹列表Ls  -l 详细信息的列表L ...

  5. linux基础命令笔记

    配置IP地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0 忘记root密码grub e 选择kernel按e 输入single b 1:目录及文件的基本操 ...

  6. Minimizing Difference 【思维】

    题目链接: https://vjudge.net/contest/336389#problem/B 题目大意: 给出一个长度为n的数列以及操作次数k.k的范围为1e14.每次操作都可以选择给任意一个数 ...

  7. oracle中表记录被另一个用户锁住

    应用场景 在查询oracle表时,提示表记录被另一个用户锁住了 有可能是在使用了pl/sql工具后修改某个表记录时,加锁,或者发生故障异常退出,下次登录进去修改不了 查询锁 --查看数据库的锁的来源. ...

  8. Pygame小游戏练习三

    @Python编程从入门到实践 Python项目练习 七.创建Passenger类 创建passenger.py文件,创建Passenger类,控制乘客属性和行为 # passenger.py imp ...

  9. 教你如何进行移动端APP测试

    1.安全测试(权限) 1)软件权限:其中包括发送信息,拨打电话,链接网络,访问手机信息,联系人信息等等 2)数据在本地的存储.传输等 3)执行某些操作时导致的输入有效性验证.授权.数据加密等方面 4) ...

  10. Django的URLconf

    URL 概要 我们要在Django项目中为应用程序设计URL,我们可以创建一个名为URLconf(通常为urls.py)的Python模块.这个模块是纯Python代码,是一个简单的正则表达式到Pyt ...