openwrt是一个插件式的路由器系统,现在市面上很多路由器都是基于此系统来封装的。对于喜欢研究或者学习的同学,本文介绍了常见windows系统下怎么搭建一个学习的环境。
先说下我的环境信息
如果环境不是以上的,没有参考意义,可以忽略了。
说点题外话,简单说下为啥选择hyper-v,
官方地址:https://downloads.openwrt.org/ 不过这个比较慢。推荐国内的镜像站,比如阿里的https://mirrors.aliyun.com/openwrt(这里腾讯的镜像站很多是403)。
根据当前最新的release的版本,选择「23.5.4」, 另外根据处理器的架构,我这里因为是在windows电脑上测试,所以我选择x86架构64位的。
这里说下各种格式的说明
❝
❞
如果对linux的内核加载不熟悉,担心麻烦,可以直接选择「squashfs」格式的。
另外还有一个带「EFI」和不带的,主要看你自己的选择,是否选择走EFI启动,不过需要bios相关设置, 在虚拟化场景下,有些可以设置(pve),而我这里用的hyper-v两种都支持,随便选吧。
然后我虚拟机选择的网络的时候,可以先选择Lan交换机(因为默认安装镜像完成会配置路由器的lan口,完成之后,在手动添加wan口)
至此一个虚拟机就创建完成了。
这些需要使用「rufs」这个工具,从这里下载吧,不用安装,下载了直接可以用。
1. 打开磁盘管理 在使用工具之前, 需要先将虚拟机的磁盘挂到你自己的这台windows电脑上。打开windows自带的磁盘管理器:
方法一:按下键盘 win(alt旁边那个窗口) 键,弹出的框里面输入disk man,会看到一个「创建并格式化磁盘分区」
方法二:按下键盘 win(alt旁边那个窗口) 键,点所有应用,往下找到「windows工具」,然后选择「计算机管理」,找到下面的「磁盘管理」
2. 附加vhd文件 然后我们将刚刚创建的虚拟机的磁盘文件附加到这里来进行管理 选择「磁盘管理」,然后「更多操作」,选择「附加vhd」
弹出的对话框选择刚刚创建虚拟机的路径,下面有一个「Virtual Hard Disks」,点进去,然后选择后缀为vhdx的磁盘文件完成之后如下:这个时候,就可以用rufs写入固件了。
4. 写入固件 打开rufs自动就看到设备,是刚刚我们附加的这个磁盘,下面进行选择刚刚我们下载下来的镜像(下载下来的是tar.gz格式,需要里面的img文件),具体如下
然后选择开始,就等待结束安装就完成了。
4 分离vhd 写入完成之后,会到磁盘管理页面,选择分离vhd,将磁盘从windows下踢出来。
这里需要改成你hyper-v的虚拟化交换机的一个段的地址。修改/etc/config/network文件,将其中lan部分的地址,修改成你hyper-v环境的地址。比如我这里10.20.30.6, 修改完成如下:
修改完成,重启network
/etc/init.d/network restart
3.登录openwrtweb页面 浏览器输入管理地址,输入密码password即可登录 登录之后,我们就是我们熟悉的页面了
后续就是页面上的操作了。对着提示应该都能操作,主要包括
这里解释下,为什么不先添加wan口,这个固件默认eth0是lan口,eth1是wan口。在虚拟化环境下, 同时添加,不一定能控制网卡顺序,所以我们手动添加。当然你要是熟悉配置,可以一次性把lan和wan都添加上,然后发现不对,再回来改network的配置。