原文:

http://bbs.routerclub.com/thread-104864-1-1.html

这里所讲是X86架构的RouteROS的KVM虚拟机,其实RouterOS的KVM很早就有,大概是4.多的版本就开始有
只是RouterOS的KVM局限性大,只适合作为转发的服务,存储不能直接挂盘,只能挂载磁盘文件,虚拟机内存只能小于1.76G,....

A.硬件要求:
cpu必须支持虚拟化技术
内存推荐1G或以上
磁盘空间300MB或以上(视磁盘映像档大小)
以下操作要求对RouterOS有一定基础,实例于即插即用的现成网络,并不是全新配置,RouterOS IP:192.168.88.1,启用了dns转发,新建的虚拟机192.168.88.2作为旁路网关使用
首先RouterOS默认是32位系统,若想使用64位的 Guest OS(虚拟系统),得将RouterOS转换64位(参考:http://bbs.routerclub.com/thread-74573-1-1.html)
bug:RouterOS转换成64位可能导致部分无线网卡不能正常工作!(疑驱动问题)

B.KVM安装:
检查KVM包是否安装,winbox登录后打开system->packages,若有kvm行列表示已安装,未安装的则参照以下安装方法
下载对应版本功能包(6.45.5为例)
https://download.mikrotik.com/routeros/6.45.5/all_packages-x86-6.45.5.zip
提取kvm-6.45.5.npk通过ftp上传或winbox拖动至RouterOS的Files根目录,重启系统自动完成功能包安装
重启完成后winbox将多出KVM栏目

C:安装Guest OS(虚拟系统):
获取系统
这里以OpenWrt官网18.06的32位系统为例
https://downloads.openwrt.org/releases/18.06.4/targets/x86/generic/openwrt-18.06.4-x86-generic-combined-ext4.img.gz
下载回来的是全盘组合的压缩包,KVM不支持直接使用压缩包
1.新建文件夹kvm
2.使用7-zip将压缩包提取openwrt-18.06.4-x86-generic-combined-ext4.img映像到kvm文件夹

3.将整个kvm文件夹通过ftp上传或winbox拖动至RouterOS的Files根目录

D.RouterOS Terminal操作
登录winbox菜单点开New Terminal

1.添加调度
复制下面代码添加开机调度(只有启用状态的虚拟系统才会在宿主系统启动后才自动启动,禁用状态的虚拟系统则不启动),Terminal窗口右键Paste粘贴

  1. /system scheduler
  2. add name=KVMs_START on-event="/kvm start [find disabled=no state=stopped]" \
  3. policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-time=startup

复制代码

2.添加虚拟机及绑定桥(没有建立局域网桥的先建立)
调整下面虚拟机参数及修改bridge1为你的桥接名,复制代码,回到窗口Terminal右键Paste粘贴

  1. /kvm add \
  2. name=OpenWrt18.06 \
  3. cpu-count=2 \
  4. memory=256MiB \
  5. disk-images=hda:kvm/openwrt-18.06.4-x86-generic-combined-ext4.img \
  6. disabled=yes
  7. /kvm interface remove [find comment=OpenWrt-Lan]
  8. /kvm interface add virtual-machine=OpenWrt18.06 \
  9. dynamic-bridge=bridge1 \
  10. comment=OpenWrt-Lan
  11. /kvm
  12. enable OpenWrt18.06
  13. :delay 1s
  14. console OpenWrt18.06

复制代码

3.没意外将进入OPENWRT终端可见启动过程 10多秒应该启动起来了 进行以下设置操作:
在Terminal窗口按一下回车

通过复制下面命令设置临时ip(这里192.168.88.2改成你的RouterOS同段的地址)

  1. ifconfig br-lan 192.168.88.2 netmask 255.255.255.0

复制代码


回车试ping一下

浏览器访问192.168.88.2登录后台进行旁路配置

OpenWrt->Network网络->Interfaces接口->LAN->Edit修改

IP改成RouterOS同段的地址(192.168.88.2),网关及DNS设置成RouterOS的IP

DHCP服务器 忽略此接口 不在此接口提供 DHCP 服务
若有ipv6选项 通告服务、DHCPv6 服务、NDP 代理、设置为 disabled禁止

*Save&Apply保存并应用

**省略一切乳制品操作(当然磁盘映像可以不是OPENWRT官方的)**

4.(可选)RouterOS DHCP 服务修改 
打开Winbox->IP->DHCP Server->Networks标签页打开对应网段列(我这是192.168.88.0/24),设置Gateway及DNS Server为openwrt的IP并 应用

(若不做第4步则需要客户机上手动设置网关和DNS为192.168.88.2)

到此设置完毕

<ignore_js_op>

e222785dcd9e16763fc2403690d6133.png (26.72 KB, 下载次数: 0)

<ignore_js_op>

29d59d3f3b70cf559f95188e24d4023.png (28.79 KB, 下载次数: 0)

<ignore_js_op>

0f5614d8a8464b443b15728016c669d.png (42.03 KB, 下载次数: 0)

<ignore_js_op>

29d59d3f3b70cf559f95188e24d4023.png (28.79 KB, 下载次数: 0)

<ignore_js_op>

24ab9224d90485e7dc6aacd76245471.png (39.9 KB, 下载次数: 0)

<ignore_js_op>

88e94abe18e2669f80120a7e541831d.png (17.41 KB, 下载次数: 0)

<ignore_js_op>

4e739b339209b9bfa6d6fde4bd4f81e.png (77.11 KB, 下载次数: 0)

<ignore_js_op>

de451b6f298e236c5fcef70722bcd98.png (55 KB, 下载次数: 0)

<ignore_js_op>

4dfef70124a2d0179f6cf8aad06180e.png (104.11 KB, 下载次数: 0)

<ignore_js_op>

06f8e72ff57b7c4fe5529fc76675249.png (162.27 KB, 下载次数: 0)

<ignore_js_op>

0de62ce9bf48d7c6a7068b3804d03a8.png (84.1 KB, 下载次数: 0)

<ignore_js_op>

3ae4051e0d305d56fbfad6e322f0378.png (72.51 KB, 下载次数: 0)

<ignore_js_op>

83f6218d4b29e055a0d16c090c6ecf8.png (169.22 KB, 下载次数: 0)

<ignore_js_op>

76143d3bce1f7b5b4efb054e8ba1128.png (295.5 KB, 下载次数: 0)

<ignore_js_op>

250eff72e9a451afc1506aa9d08301b.png (35.52 KB, 下载次数: 0)

<ignore_js_op>

766134456653672be3d685b05c208e2.png (30.4 KB, 下载次数: 0)

ROS-RouterOS KVM 安装 OpenWrt 旁路使用的更多相关文章

  1. VBox 虚拟机安装 Openwrt 做旁路由

    VBox 虚拟机安装 Openwrt 做旁路由 需求:开个虚拟机做旁路由,电脑把网关设置成旁路由地址,用它跑个上网或其他什么东西. 安装及配置过程简述 这件事流程很简单,总结起来主要有以下几点: 安装 ...

  2. KVM安装部署

    KVM安装部署 公司开始部署KVM,KVM的全称是kernel base virtual machine,对KVM虚拟化技术研究了一段时间, KVM是基于硬件的完全虚拟化,跟vmware.xen.hy ...

  3. LSD-SLAM深入学习(1)-基本介绍与ros下的安装

    前言 借鉴来自RGB-D数据处理的两种方法-基于特征与基于整体的,同样可以考虑整个图片的匹配,而不是只考虑特征点的…… 一般这种稠密的方法需要很大的计算量,DTAM: Dense tracking a ...

  4. 云计算之KVM安装(二)

    云计算之KVM安装(二) 调整虚拟机 虚拟化Intel使用的是intel VT-X AMD使用的是AMD-V 创建虚拟机步骤 1.准备虚拟机硬盘 2.需要系统iso镜像 3.需要安装一个vnc的客户端 ...

  5. 烂泥:kvm安装windows系统蓝屏

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近一直在学习有关KVM的知识,实验一直是在虚拟机VM中进行的.今天刚好公司有一台空闲的服务器,直接拿来安装centos.kvm等等,然后相关的配置. ...

  6. 烂泥:虚拟化KVM安装与配置

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近打算把公司的服务器全部做成虚拟化,一是跟有效的利用了服务器,二也是对自己是一个学习的机会. KVM的安装与配置步骤如下: 1. 查看是否支持虚拟化 ...

  7. 【KVM安装】在Centos6.8中安装KVM

    阅读目录 前题条件 章节1:安装Centos6.8-进行硬件检测 章节2:配置网络-设置桥接方式 章节3:安装KVM 章节4:OVA转qcow2 章节5:使用KVM创建虚拟机 章节6:参考链接 前题条 ...

  8. CentOS7.2上用KVM安装虚拟机window10踩过的坑

    最近两个星期一直在琢磨kvm安装window10操作系统,并且通过桥接模式与外界通信,经历了九九八十一难,终于搞定.下面就记录以下我们在探索的过程中踩过的坑. 安装KVM 1. 系统要求:需要一台可以 ...

  9. 路由器安装Openwrt&&***

    路由器安装Openwrt&&*** 前言 对于给路由器刷系统,肯定是有风险的,敢于承担风险的才开始动手. Openwrt其实也是一款嵌入式Linux系统,对于闪存大小也是有一定的要求的 ...

随机推荐

  1. javascript模块化编程的cmd规范(sea.js)

    CMD(Common Module Definition,通用模块定义)是一种模块定义规范,规范中明确了模块的基本书写格式和基本交互规则.SeaJS就是遵循的这个规范. define函数 在CMD规范 ...

  2. AngleSharp 实战(04)之遍历内部超链接(a)元素的 Href 和 InnerText

    文档地址:https://anglesharp.github.io/docs/Examples.html 直接贴代码了: using System; using System.Linq; using ...

  3. Gevent工作原理(转)

    作者:大U哥链接:https://www.zhihu.com/question/20703476/answer/15911452来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  4. 机器学习(十一)-------- 异常检测(Anomaly Detection)

    异常检测(Anomaly Detection) 给定数据集

  5. JVM的参数以及作用详解

    -XX:+PrintCommandLineFlags   打印出JVM运行时的各种的各项配置参数 -verbose:gc   发生GC时,打印出GC日志-XX:+printGC 发生GC时,打印出GC ...

  6. SATA接口、PCI/PCIe、NVMe的介绍

    SATA接口.PCI/PCIe.NVMe的介绍 SATA接口 SATA是Serial ATA的缩写,即串行ATA. SATA已经完全取代旧式PATA(Parallel ATA或旧称IDE)接口的旧式硬 ...

  7. A Pattern Language for Parallel Programming

    The pattern language is organized into four design spaces.  Generally one starts at the top in the F ...

  8. .net core 3.0中动态卸载程序集

    动态加载程序集在一些插件式的应用中非常常见,.net core 2.0中可以通过AssemblyLoadContext中提供程序集的动态加载功能,但取不支持卸载.现在,在.net core 3.0中提 ...

  9. Gtksharp编译时提示下载gtk文件问题

    Gtksharp编译时提示下载gtk文件问题 1.昨天晚上新建gtksharp项目之后,安装gtksharp之后,编译时无法成功,提示无法下载gtk-3.24.zip 2.记得前几天,另一个项目可以生 ...

  10. Java中级知识归纳(二)

    六.Java中Collection和Collections的区别? java.util.Collection是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法. java.util.Coll ...