-1 保持更新
请注意,本文中自行编译的方法已经不再被建议使用。第一点,自己编译可能会遇到一些奇怪的事情,同时也会浪费时间;二则是现在已经有了更好的解决方案。
OpenWRT 的官方 x86 版本现在自带了 Hyper-V 的支持,在官方页面直接下载 x86/64 版本的磁盘映像就可以直接使用第一代 Hyper-V 虚拟机挂磁盘启动了。因为官方给的磁盘映像是仅 MBR 的,如果想要使用第二代虚拟机(UEFI 模式)启动,请参考《构建 UEFI 启动的 OpenWrt 磁盘映像》来构建一个 UEFI 启动的磁盘映像。
Project LEDE他们说自己是Reboot了OpenWRT社区。而且很多用OpenWRT的也都升级到了LEDE。LEDE的x86_64版本是直接支持Hyper-V的,可以直接下载官网预编译版本而不用自己编译。因此建议大家使用LEDE的x86_64版本,本文中的方法仅用于学习借鉴。谢谢。
附上一张LEDE的x86_64的官方预编译版本在Hyper-V上的表现。
0 为什么我会折腾这个
自己在国内放了台服务器,线路什么的都是自己拾掇的。因为丢在自己家里,那条线路也是肩负着我家出网的任务。一时兴起乘着续费线路的机会,打算试试软路由,就搞了个软路由。
首先我根据一篇文章,Hyper-v 安装 OpenWrt_x86 版教程(03.14更新) 在Hyper-V上装好了OpenWRT。
正当我兴奋的时候,我发现测速结果不太对劲。上传下载都只有20Mbps左右。和我的100Mbps相差甚远。看起来像是OpenWRT不支持Hyper-V的网卡,我一直搞不懂这是为什么,后来我闲逛的时候看到了一个贴子:Hyper-V安装Open-WRT的问题。于是我大概知道了为什么我的Hyper-V上的OpenWRT速度会如此坑爹。(看起来我的情况还比这个发帖人好一些哈哈哈)
我马上开始着手倒腾一个适合Hyper-V的OpenWRT。
1 准备工作
首先先get一个Linux Server,然后
git clone git://git.openwrt.org/15.05/openwrt.git
注意一些依赖包,我准备安装了以下包,如果还有别的依赖没安装,make前是会进行依赖检查的
sudo apt-get install build-essential openssl unzip libncurses5-dev zlib1g-dev libssl-dev subversion
make过程中经常会从网上下载需要的东西,大部分来自aws,情况大家都是知道的,所以自己准备好proxychains或者vpn等避免下载失败所导致的make中止。