How to do VPNs without public IPs?

I'm trying to understand your recommendation. Do you recommend I run a generic Linux in the Raspberry Pi and have the OpenWrt as a virtual machine to make it easier to keep the OpenWrt updated?

raspberry is 10x scale of typical OpenWRT installation, you can run one vm router, one for fileserver, one for nids etc.

OK, I didn't think about it. I had one raspberry pay lying around and got it to be the router.

Following this plan, I may resolve the issues.

I'm now installing " Raspberry Pi Desktop for PC" in my PC VM, and then I will follow the video https://www.youtube.com/watch?v=6dcnJ6NnpYQ to learn how to install Kernel-Based Virtual Machines (KVM) on Raspberry Pi OS 64-Bit, to install OpenWrt in a VM. And recover my configurations on it.

If it works, I will get a new SD and try to do it in the Raspberry Pi.

Any suggestions or tips for my experience?

gnome-boxes :wink:

I found this video of this guy explaining how to do it. I will try it, too.

I'm using the Raspberry Pi operational system as a base.

Actually you can install normal ubuntu package.

1 Like

Best is install, play around, tr to set up network bridges between machines, it is faster. Just reset if you mess up or dont like it.

1 Like

OK, I will try Ubunto first.
Once it is my network's border, I will need to learn how to deal with the ports, VLANs, OpenWrt, and security.

Raspbery os also has packages, just use search box in package installer.

Do you have an example of how to install OpenWrt in a gnome box?

Something along lines of qemu-img -i raw openwrt.img -o qcow2 openwrt.qcow2

So, I managed to install it in the Gnome Boxes, and these were the steps:

Ubuntu<
sudo apt update
sudo apt install qemu-utils
sudo apt install qemu-kvm libvirt-daemon-system
sudo adduser $USER libvirt
Install gnome-boxes (app center)
sudo apt upgrade
kvm-ok (to check that is all ok to run the VM)
Command: qemu-img convert -f raw -O qcow2 openwrt-23.05.5-x86-64-generic-ext4-combined-efi.img openwrt.qcow2

Create the VM using Debian 11 as a reference.

Now, I'm trying to learn how to automatically start the VM when the machine starts and how to configure multiple network ports to be able to handle my current network setup where one Ethernet receives the internet and the other handles the Vlans to my internal network.

1 Like

sudo virsh list
sudo virsh autostart vmname|guid

sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils
sudo apt install virt-manager

Using the virt-manager, I pointed to the openwrt.qcow2 I have created before.

Now the sudo virsh list works.

My next challenge is to learn how to deal with the network interface so that I can access and configure it more deeply later. I'm looking for the "bridges" configuration.

1 Like

You are learning fast.

Find a free service that will allow you to register your dynamic IP address on their DNS. The one I've used for >15 years is

Then, simply configure your VPN clients to access your home host by standard DNS lookup.

This works for any VPN or other web service.

You can try ZeroTier or Tailscale.

  1. Forget about trying to get Tailscale working on OpenWrt as official Tailscale releases occur more frequently and are not supported by the slower moving OpenWrt upgrade cycle of golan.

  2. I suggest watching the Tailscale video on Exit Nodes https://www.youtube.com/watch?v=Ad7D2pkFNdA

  3. Setting up a Tailscale Exit Node via a LAN device at you home will allow remote access to your home and access the Ubiquiti AirGrid M5 HP web interface.

1 Like

This is some solid advice for someone with a public dynamic IP address. However, OP seems to be behind a CGNAT and has a private IP address.

1 Like

It has been a while since I ran Tailscale. Looking at other threads here it seems to be broken. Zerotier still works and I use it a lot so I would go with that in this case. It is cloud-configured you don't need DNS names or opened ports.

1 Like