Not sure if this 100% goes here but I'm relatively new to the self hosting world. Please advise if this needs to be moved elsewhere and I will.
I recently picked up a beelink mini PC and have been running Proxmox for things like jellyfin, home assistant, etc.
I'm looking to set up OpenWRT and found a helper script that sets up the VM but I'm having issues being able to configure wireless. According to the official docs, wireless is off by default if there are eth ports. When I go to edit it, both in the LuCl and in the /etc/config/wireless file, I hit 2 issues:
The web client doesn't have a wireless option.
There is no wireless file In the config directory.
I tried looking for some solutions online but wasn't sure what was exactly specific for me. I wasn't sure if this was a hardware issue or a Proxmox/OpenWRT config issue. Any advice on this?
Side note: My thoughts were I could use the internal wi-fi adapter for wireless but would I need a USB adapter of some sort for this capability?
Edit: I realized later I left some context off. In case i wasn't clear enough. Sorry. Currently I use a Google nest wifi pro router and was hoping to replace it with OpenWRT for more control/customization.
Please keep in mind that to duplicate mesh functionality it's going to take a significant effort and you need to make sure the hardware you buy is compatible with 802.11s. Open WRT forums have hardware compatibility rundowns of known working routers so it's not too difficult to find them.
This is a much bigger uphill battle rolling your own hardware unless you just plan to buy a separate access point or two for hardware and skip the mesh functionality.
If you plan to do it on openwrt I would make sure before you buy. Especially if you're trying to save on the mesh nodes and not buy a fully outfitted router for each node.
There's a huge list of reasons why this is not going to work, or not work well.
I'll stick to the biggest issue though, which is that OpenWRT expects exclusive control over the wireless chipset, and you're trying to run it through a VM on whoknowswhat hypervisor settings. Even if nothing else on the host machine uses the Wi-Fi adapter, OpenWRT has specific builds and kernel patches for specific drivers and specific hardware combinations. If it doesn't see exactly what it's expecting, it's not going to work.
Now...even if you DID manage to get it to seemingly work, it will constantly crash or panic if you engage the wireless chipset on a hypervisor because it's going to throw some disallowed instruction expecting exclusive control and access to the hardware.
I know this, because this is how it works, they say so in their own docs, and you can see people say the same thing over and over again this exact same thing. It's not going to be a good time.
If you want to just use software portions for network services or whatever, that shouldn't cause issues, but again, doing it through a VM is like dressing a Yugo up as a Ferrari and expecting the same performance.
Thanks for the advice. It isn't an end all if I can't get it to work in this way. Just thought I'd give it a try since I saw there was a helper script for Proxmox. I wasn't aware of the limitations that may come with this though. I guess either upgrading routers in the future for something for customizable may be a better option.
You want a dedicated Firewall and at least one access point. Your USB adapter is not designed to support lots of devices. It almost certainly has one channel.
It would be fun as an experiment, but often using wifi adapters as an AP generally doesn't work that well. Most of us are running an external AP such as Unifi hardware.
As far as getting this working, have you done the passthrough setup on the VM for the wifi adapter?
And have you confirmed that OpenWRT supports your wifi adapter?
Both great questions. I did not check the hardware and I definitely should have..as far as passthrough I have not. I really only ran the helper script to install the Proxmox VM and configurations. I'll have to check the settings when I'm back home to see what exactly it did.
It can be used as a VPN router, any VM that needs a VPN can be connected to a network bridge that is forward through the VPN. This could also be done on the primary router and a VLAN.
Compared to other embedded devices, ease of installation, less chance of driver quirks and much higher performance (especially relevant if you're running a VPN on the same device).
Compared to other x86 software based routers, a UI that is familiar, and the Linux kernel which generally means it gets new features quicker than its BSD based counterparts.
Well currently I have a nest wifi pro router that doesn't allow a lot of customization. (I used to be a Google fan). And since I had a beelink I figured I would try it. I was also wanting to be able to run a VPN on my router and the nest doesn't allow clients.
If you do the PCI passthrough Wifi adapter to openwrt, look for name of adaptor and search okpg for in kernel driver for that. Maybe you will face with no driver support, try installing openwrt pre-relase for up to date driver support, or driver only support client mode, Intel Wifi.
You can get cheap USB Wifi adapter from Aliexpress that openwrt support but mostly have only one radio so your access point will have one 5Mhz or 2.4Mhz not both at the same time. you can try two adaptor to get both.
For supported Wifi adapter and more information https://github.com/morrownr/USB-WiFi?tab=readme-ov-file
Back in the day I ran a pfsense VM on ESXi before broadcom bought them. I found it easier to just purchase a cheap Unifi AP and spin up a VM for the Unifi controller app (I'm assuming you can still run that on your own hardware, its been a few years). I think I got a UAP 6 lite or something like that. If I recall it was about $130 CAD with the PoE injector.
Techincally its not ideal to run your firewall on the same device as other things, but I never had any issues.
Also, does the mini PC have multiple NICs? You will have a bad time if it does not.
id use a pci express or better card with AP mode. openwrt is just minimal linux, so any card that works eith linux works with openwrt.
i use a similar setup than what you want and it works well, you just want to make sure you use passthrough for the wireless and wired cards, and use the correct wifi card.