这里记录下在hyper-v虚拟机中安装openwrt x86软路由的过程。

openwrt选择

对我来说,不管是lede还是istoreos都行,哪个方便下载就用哪个,比较多的地址是恩山 https://www.right.com.cn/forum/forum-169-1.html, 或者 istoreos https://fw.koolcenter.com/iStoreOS/x86_64_efi/, 一般来说带 squashfs(可以还原固件)、efi(支持新主板)就行。

转换固件

固件下载解压后得到的是 img 文件,这是不能直接被 hyper-v 虚拟机使用的,需要转换成 hyper-v 的硬盘格式直接使用,需要使用到一个 StarWind V2V Converter 的软件。
starwindv2vconverter1
starwindv2vconverter2
starwindv2vconverter3
starwindv2vconverter4
starwindv2vconverter5
starwindv2vconverter7

hyper-v 配置

我的主机是N100,配了4个2.5G网口,目前的网口规划是保留一个口给win本身使用,其他到直通给 openwrt。
不建议全部网口都直通给openwrt,否则openwrt网络出现问题,只能外接显示器而无法使用远程桌面查看问题,比较麻烦。而且这样win也可以通过插网线的方式获取openwrt的IP,或者建立一个内部的网口,需要注意分配给openwrt的虚拟交换机,要勾选MAC欺骗 , 看图吧

新建虚拟机

openwrt1
openwrt1
openwrt1
openwrt1
openwrt1
openwrt1

新建交换机

  • 网口直通

openwrt-neteth

  • 内部网口获取openwrt

openwrt-netop

  • 给虚拟机分配网络适配器,从上往下在openwrt对应的接口是wan0 wan1 wan2……
  • 注意勾选 启用mac地址欺骗,只有才能把数据包发出去
  • 一般来说首次启动openwrt会自动配置好,wan1能获取到 openwrt 分配的ip

openwrt-mac

openwrt首次启动配置

默认情况下,如果配置了多个网口给openwrt,它会吧 eth0当做wan口(从外部获取IP/拨号),eth1 当做 lan口(dhcp 服务)。首次启动可能获取不到openwrt的IP地址无法进入后台,可以按照这里的方法配置一下。

  • 连接虚拟机,使用 vi /etc/config/network 修改配置
    openwrt7