PVE虚拟化部署OpenWRT旁路由:从镜像转换到网络配置全解析
1. 为什么选择PVEOpenWRT旁路由方案最近两年软路由越来越火很多朋友都在问要不要把家里的硬路由换成软路由。其实完全没必要这么折腾用PVE虚拟化跑OpenWRT做旁路由才是更优雅的解决方案。我去年给公司办公室部署了这个方案到现在稳定运行一年多既保留了原有网络结构又实现了广告过滤、流量监控等高级功能。相比直接替换主路由旁路由方案有三大优势第一是不影响现有网络即使OpenWRT出问题也不会导致全家断网第二是配置灵活可以随时调整功能模块第三是资源占用低我用的J4125小主机虚拟化跑OpenWRT内存分配1G就绰绰有余。2. 准备工作与环境搭建2.1 PVE基础环境配置首先确保你的PVE已经安装完毕并能正常访问管理界面。我建议使用PVE7.4以上版本对虚拟化支持更好。如果是在物理机上安装记得在BIOS里开启VT-d虚拟化支持。存储方面建议准备至少32G空间虽然OpenWRT系统很小但后续安装插件需要预留空间。网络配置要特别注意PVE主机需要两个网口一个用于管理vmbr0另一个留给OpenWRT旁路由使用vmbr1。可以用以下命令检查网卡状态ip link show ls /sys/class/net2.2 OpenWRT镜像获取与转换官方OpenWRT镜像下载地址建议使用清华镜像站速度更快。下载时注意选择x86-64架构的combined镜像这种镜像已经包含了所有基础驱动。我测试过21.02.3版本最稳定新版本偶尔会有兼容性问题。PVE不支持直接使用img镜像需要转换成qcow2格式。除了原文提到的img2kvm脚本更推荐用qemu-img命令转换qemu-img convert -f raw -O qcow2 openwrt.img openwrt.qcow2转换完成后将qcow2文件上传到PVE的local存储池。这里有个小技巧先用scp传到PVE的/tmp目录再用mv命令移到正确位置比网页上传快得多。3. 创建OpenWRT虚拟机3.1 虚拟机参数设置在PVE管理界面点击创建虚拟机有几个关键参数需要注意操作系统类型选Linux 5.x机型选择q35兼容性更好BIOS选择OVMFUEFI启动磁盘总线建议用VirtIO BlockCPU类型选host能获得最好性能内存分配1G足够CPU给1核就行。有个容易踩的坑是磁盘大小设置虽然OpenWRT系统很小但建议磁盘至少设置8G否则后期安装插件可能空间不足。3.2 引导配置技巧创建完虚拟机后需要把转换好的qcow2磁盘添加为启动盘。在硬件设置里先删除默认创建的磁盘然后添加现有磁盘qm set 100 --virtio0 local:vm-100-disk-0接着到选项里调整启动顺序把virtio0设为第一启动项。这里有个隐藏技巧勾选仅启动一次选项可以避免某些启动问题。4. OpenWRT系统初始化4.1 首次启动与基础配置启动虚拟机后在PVE控制台能看到OpenWRT的启动日志。等出现Please press Enter to activate this console时按回车进入命令行。首先修改root密码passwd然后配置网络编辑/etc/config/network文件。重点修改lan口配置config interface lan option ifname eth0 option proto static option ipaddr 192.168.1.100 option netmask 255.255.255.0 option gateway 192.168.1.1 option dns 192.168.1.1保存后重启网络服务/etc/init.d/network restart4.2 磁盘扩容实战默认镜像的磁盘空间很小需要扩容到虚拟机分配的完整大小。先用fdisk查看磁盘情况fdisk -l然后使用growfs命令扩容growfs /dev/sda2扩容完成后建议重启一次系统。这个步骤很多人会忽略导致后期安装插件时出现空间不足的问题。5. 网络深度配置指南5.1 旁路由核心配置要让OpenWRT作为旁路由工作需要修改几个关键配置。登录Web管理界面默认地址是刚才设置的ipaddr进入网络-接口页面在LAN接口设置中关闭DHCP服务器网关指向主路由IPDNS建议设置为公共DNS如223.5.5.5取消勾选桥接接口防火墙设置中勾选IP动态伪装启用MSS钳制在自定义规则中添加iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE5.2 多网口高级配置如果你有多个物理网口可以配置WAN口实现更复杂的功能。在PVE中为虚拟机添加第二个网络设备然后在OpenWRT中配置WAN口config interface wan option ifname eth1 option proto dhcp这样OpenWRT就能同时处理内外网流量实现真正的路由功能。我公司用的就是这个方案内网走主路由特定流量走OpenWRT。6. 常见问题排查6.1 网络不通怎么办首先检查物理连接确保网线插在正确的网口上。然后在PVE中测试网络连通性ping 192.168.1.1如果PVE能ping通主路由但OpenWRT不行检查OpenWRT的防火墙设置。有个快速测试方法是临时关闭防火墙/etc/init.d/firewall stop6.2 Web界面无法访问这种情况多半是IP配置错误。可以在PVE控制台用命令行查看当前IPifconfig eth0如果IP不对手动修改ifconfig eth0 192.168.1.100 netmask 255.255.255.07. 性能优化技巧经过半年多的实际使用我总结出几个提升OpenWRT性能的技巧在PVE中启用CPU类型为host能提升10%左右的网络吞吐使用VirtIO网卡比e1000性能更好关闭OpenWRT中不需要的服务如IPv6、UPnP定期清理日志文件logread -e | tail -n 50 /dev/null安装turbo ACC网络加速插件opkg install luci-app-turboacc这套方案我已经在三个不同环境中部署过最长的稳定运行超过400天。相比直接使用硬路由灵活性高太多而且资源占用极低老电脑都能轻松胜任。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2516165.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!