赞
踩
像GNS3只能模拟思科的路由器,IOU只能模拟思科的路由器和交换机,eNSP只能模拟华为的网络设备,如果要搭建不同厂家的设备实验环境,只能桥接又桥接,很麻烦,或者说很不方便。
一个类ubuntu操作系统,可以模拟各种厂商的网络设备,路由器,交换机,防火墙等等甚至是win,linux
eve-ng怎么学习?既然是操作系统,当然可以直接安装在硬件上,不过一般的做法是用类似VMware或者VirtualBox,然后在virtualbox上运行eve-ng,这里为啥是virtualbox,主要是我现在学习的是ubuntu系统,和virtualbox比较搭配,仅此而已。
eve-ng为什么可以模拟,这么多不同厂商的网络设备,甚至包括win,linux等操作系统?
这里就是说到eve-ng支持的三大组件,Dynamips,IOL,QEMU。
Dynamips是用于模拟思科路由器的,基于它的模拟器有小凡,以及大名鼎鼎的GNS3,但它只能模拟路由,交换基本上都不行
IOL是将思科的ios运行在linux上,可以很好的支持交换功能,基于它的模拟器有web-iou
QEMU是一套开源产品,是用纯软件实现的模拟器,几乎可以模拟任何硬件设备,这也是为什么eve-ng能模拟win,linux以及其他厂商的网络设备的原因
我这里用的是Free EVE Community Edition这个是社区版是免费的
我当前用的版本是Free EVE Community Edition Version 5.0.1-13
https://www.eve-ng.net/index.php/download/
eve-ng系统登录用户名是root密码eve
web登录用户名是admin密码eve
导入eve后先不急着开机,设置一下这里,提高性能
这里再啰嗦一下,网络选择桥接,其他的应该也可以,可能需要进一步的设置,说实话virtualbox我也是刚玩没多久,这些先选桥接吧
此时的eve-ng还是个空壳,啥也玩不了,所以先导入一个Dynamips的思科3725镜像
将Dynamips镜像传到eve-ng的/opt/unetlab/addons/dynamips/
修改镜像文件的读写执行权限 chmod -R 777 *
之前我是windows环境下使用VMware玩的eve-ng,windows下可以使用winscp,ubuntu只能用filezilla来上传镜像到eve-ng中
#安装filezilla
apt install filezilla
相当于windows下的secureCRT,换了环境,所有软件得重新熟悉了
asbru-cm网站
https://www.asbru-cm.net/
有小伙伴注意到了为啥要先安装这个curl,是因为ubuntu默认是没有装这个命令
apt install curl
curl -1sLf 'https://dl.cloudsmith.io/public/asbru-cm/release/cfg/setup/bash.deb.sh' | sudo -E bash
sudo apt install asbru-cm
ubuntu安装EVE-NG Integration,这个是eve-ng的集成包,作用是可以用软件来管理里面的网络设备,还可以抓包,里面内置的wireshark抓包工具
sudo add-apt-repository ppa:smartfinn/eve-ng-integration
sudo apt-get update
sudo apt-get install eve-ng-integration
安装过程中会出现类图形界面
should non-superusers be able to capture packets?
选择“是”
couldn’t run /usr/bin/dumpcap in child process:权限不够
将当前用户添加到wireshark组
cat /etc/group | grep wire #查看组名称
whoami #在普通用户模式下,查看当前登录用户名
usermod -a -G wireshark chb #chb是我的用户名,你的需要改成你自己的
做完记得重启
其实上传完Dynamips的思科3725镜像,就已经可以开始玩了,web首页选择html5 console,就可以通过网页的方式管理eve-ng里面的网络设备了,但是用的肯定不爽,而且没办法抓包,所以eve-ng集成包是一定要安装的,windows下也有对应的eve-ng集成包,感觉功能更加强大,还可以用secureCRT去管理,ubuntu下安装完这个集成包,只是变成ubuntu自带的命令行终端管理,抓包倒没啥区别
一个目录里面可能包含多个试验
eve-ng创建的目录位置
root@localhost:~# find / -name demo1
/opt/unetlab/labs/demo1
这里主要是看磁盘空间,因为导入镜像多了,空间可能不够用
注意可以导出目录也可以导出试验,这里直接导出目录,之前就说过,一个目录里面可以包含多个试验
这个是我们之前上传的那个Dynamips的思科3725镜像,只有上传的对应的设备镜像,才能使用,之前也说过了
这里为啥没有最重要的路由器,主要是太明显了,觉得没必要
eve-ng里面设备的配置,直接通过命令保存配置,如思科的是write ,即使你重启你的物理机配置也是不会丢失的,非常的给力。
擦除配置需要在设备关机的情况下,右键点Wipe
说实话我都不想说这部分的内容,感觉没必要搞的那么复杂,能够保存配置和擦除配置就足够了,
既然有这个功能,还是说一下吧,而且这个玩意有点绕。一旦你选择了导出设备配置,即使你点了擦除配置也没有用。必须点删除导出的配置然后再擦除才行,另外需要特别说明的是,这个删除导出的配置的操作,必须是用鼠标框选,然后再右键设备才能看的到。
这里说明一下因为IOL本身是思科内部用的,不对外开放,所以这个Python脚本是做什么用的,你懂的吧。
python3 CiscoIOUKeygen.py | grep -A 1 'license' > iourc
chmod -R 777 *
如果你是用Native Console方式管理设备的话,会弹出这个提示按ctrl+回车即可进入
在目录/opt/unetlab/addons/qemu/中新建目录vios-xxx
注意必须按照这个格式命名,后面的xxx是自定义的
上传镜像到/opt/unetlab/addons/qemu/vios-15.5.3M
设置镜像权限chmod -R 777 *
eve-ng添加qemu路由器
在目录/opt/unetlab/addons/qemu/中新建目录linux-xxx
注意必须按照这个格式命名,后面的xxx是自定义的
上传镜像到/opt/unetlab/addons/qemu/linux-centos7.1
设置镜像读写执行权限
eve-ng添加linux
linux用户名root密码eve@123
这个是别人做好镜像,当然你也可以自己定制属于你自己的镜像
VPCS> ip 10.1.1.2/24 10.1.1.1 #设置IP地址及网关
VPCS> ip dhcp #设置DHCP自动获取
VPCS> ip dns 114.114.114.114 #设置DNS
VPCS> show ip #查看IP及网关DNS
VPCS> save #保存配置
VPCS> ping 10.1.1.2
VPCS> set dump detail all #抓取所有数据包
VPCS> set dump off #停止抓取
Router>enable
Router#configure terminal
Router(config)#hostname R2
R2(config)#interface ethernet 0/0
R2(config-if)#ip address 10.1.1.1 255.255.255.0
R2(config-if)#no shutdown
R2(config)#interface ethernet 0/1
R2(config-if)#ip address 10.1.2.1 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#ip route 0.0.0.0 0.0.0.0 10.1.2.2
R2#write
Router>enable
Router#config terminal
Router(config)#hostname R3
R3(config)#interface gigabitEthernet 0/0
R3(config-if)#ip address 10.1.2.2 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#interface gigabitEthernet 0/1
R3(config-if)#ip address 10.1.3.1 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#ip route 0.0.0.0 0.0.0.0 10.1.2.1
R3#write
nmtui命令打开类图形界面设置IP
进入该项
星号表示启用
查看IP
先相互ping通
需注意因为我的cpu是amd的所以目录是amd,如果你的是Intel则进入Intel目录
cd /opt/unetlab/html/templates/amd/
cp linux.yml h3c.yml
nano h3c.yml
type: qemu #类型是qemu
description: h3c #设备列表显示名称
name: h3c
cpulimit: 1
icon: h3c.png #图标,现在没有后面要上传
cpu: 2
ram: 1024 #内存大小
ethernet: 4 #网口数量
console: vnc
shutdown: 1
qemu_arch: x86_64
qemu_nic: virtio-net-pci
qemu_options: -machine type=pc,accel=kvm -vga std -usbdevice tablet -boot order=cd
注意目录名称必须是h3c开头,需要和之前修改的配置一致
设置镜像读写执行权限
cd /opt/unetlab/addons/qemu
chmod -R 777 *
此时节点列表就会多出一个我们自定义添加的h3c
qemu-kvm为KVM管理程序提供硬件仿真的软件。
libvirt-daemon-system 将libvirt守护程序作为系统服务运行的配置文件。
libvirt-clients 用于管理虚拟化平台的软件。
bridge-utils一组用于配置以太网桥的命令行工具。
virtinst一组用于创建虚拟机的命令行工具。
virt-manager 一个易于使用的GUI界面和支持命令行工具,用于通过libvirt管理虚拟机。
#安装
apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager
#查看组名称
cat /etc/group | grep libvirt
#查看当前登录的用户名
whoami
#将当前用户chb添加到libvirt组
usermod -a -G libvirt chb
#查看libvirtd服务状态
systemctl status libvirtd
详细步骤请看我的其他教程,毕竟这里主要是讲eve-ng的
我这里安装的是centos7带图形界面的
此时我们已经得到了centos7的qcow2镜像了,先复制一份到其他目录,注意这里不要直接上传,先压缩后再上传到eve-ng
#将centos7.qcow2压缩为hda.qcow2
qemu-img convert -c -p -O qcow2 centos7.qcow2 hda.qcow2
剩下的步骤和之前一样,上传镜像,然后设置权限即可使用了
用户root 密码chb
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。