Something I have been planning to do for a while has been to muck around with Proxmox. Mostly so I can host some things for myself and to just experiment. So using some hardware I have sitting around I finally took the time to do this in back in June. (Clearly I have had a bit of time to muck around.)

Hardware

Being a recent college graduate. I don’t like spending a lot of money. (At least that’s my relationship with money.) So nearly all the hardware I’m using for this have been given to me either because it was “broken” or old and unneeded. Which makes it a rather eclectic collection.

Hardware List

  • Dell Inspiron 3656
    • AMD A10-8700P CPU
    • 12 Gigs of RAM (8+4)
    • 1TB Western Digital HHD
    • RTL8723BE PCIe Wireless Network Adapter (Currently unused)
    • DVD Drive (Currently unused)
  • GL.iNet GL-MT300N-V2 Router
  • USB Devices
    • Linksys WUSB54GC Wifi Adapter
    • USB to SATA/IDE adapter (JM20337)
      • Connected to ASUS Blueray Drive

The Machine

As for hardware I started with a Dell Inspiron 3656 that I had received due to it being “broken” quite a few years ago. It turned out the issue was not with hardware but with a corrupted operating system. Originally equipped with AMD A10-8700P CPU, an AMD Radeon R9 360 GPU, and a Wifi Card among other things.

Though by the time I got around to using it for Proxmox the GPU and the original hard drive had already been harvested and used else where. So I grabbed a 1TB Western Digital hard drive that I had kicking around and I installed Proxmox. I also ended up adding around 4 gigabytes of RAM bringing it up to 12 gigs.

Unfortunately though I do not have the ability to give myself a wired connection to my Proxmox server which is required for it’s operation. (There is a way to use Wifi but it’s described as a “spotty workaround.”). But I had a solution.

Networking solution

Having been a college student for the last couple years living in a dorm I have myself a travel router (GL.iNet GL-MT300N-V2). The reason I had this was mostly because I didn’t want to have to deal with connecting multiple devices to the school’s network which sometimes required a MAC address registration that could expire. That and I wanted to have most of my devices to be wired when I was in my dorm. So I used that router in combination with an 8 port switch.

This though doesn’t explain how this solves the issue of not being able to wire my Proxmox server. A feature of this travel router is that is can connect to a Wifi network and use that as the WAN network. Using this functionality I then simply hooked my Proxmox box into the LAN port of my travel router. That though doesn’t solve all of my issues which I’ll go into later.

USB Devices

On top of that I have a couple USB devices that are important to my current setup. A USB Wifi Adapter that I pass through to one VM and a USB to Sata adapter that I use to connect a Blueray drive that is eventually passed to another VM. Both of which I’ll explain later.

VMs and Services

Now with the power of this rather inexpensive hardware I have for the last couple months I have been running a couple VMs and Service. As it stands at the writing of this article I have 3 Ubuntu VMs running and 2 LXC containers (both are Debian based).

Below are a couple notes on what I have running.

  • LXC (LinuX Containers built into Proxmox)
  • VMs
    • General VM
      • Ubuntu 22.04 VM for tinkering
    • Pi.Alert VM
      • Ubuntu 22.04 VM that runs Pi.Alert which I use on the main home network.
    • Docker VM
      • Ubuntu 22.04 VM that I use to run Docker containers
      • Containers
        • Dashy
          • Homepage/Dashboard for all of my services I’m running.
        • FileStash
          • Application that I use to provide a better web interface for my File Server.
        • Gotify
          • Notification Server that I set up to receive notifications from Proxmox.
        • Uptime Kuma
          • Uptime Tracker I use for my Services. Realistically overkill but it’s fun to muck with.
        • NGINX Proxy Manager
          • Currently I use this effectively as DNS. Very useful for mapping services running in docker rather than having each container having open ports.
    • Windows VM
      • There are times you just need a windows VM to test something.
      • Also used to backup DVDs and Bluerays for use in Jellyfin using the Blueray drive passed through.

Weird Network Connectivity

Now. Remember how I mentioned that Proxmox is wired through a travel router. Well this creates a little issue. Mostly because I didn’t want to turn the router’s pass through mode on. And that is the fact that it’s a different network entirely compared to my home network. Which requires me to port forward anything out of that network that I want to be accessible to my home network.

This is fine and it works for most applications. Heck I can even still ping things on my home network from the Proxmox network due to the different subnets. But what this didn’t work for was Pi.Alert.

Pi.Alert and My Use Case

How Pi.Alert functions is it makes use of arp-scan to scan the network. And while doing so it retrieves the current IP and MAC address of each device on the network. It preforms this scan periodically at 5 and 15 minute intervals logging what devices are currently responding. What I wanted this for was more out of curiosity cause I’ve noticed that my phone will occasionally drop off Wifi and this provides me a record of that.

Either way. The issue I was running into was the fact that because my VMs are on a separate networks (labeled subnets in the above diagram) using Arp-Scan can not scan the devices on the other network unless it has an network device attached to it. Which brought about the use a USB Wifi Adapter to provide the VM a network connection outside of the network device Proxmox provides it. And even better I had to remove that because if I attempted to SSH into it chaos ensured because it would attempt to send responses to my SSH client from the Wifi connection rather than the Proxmox connection. Resulting in the diagram below.

Which kind of annoys me. But it works after I found a working USB Wifi adapter. Because of course it wasn’t simple. The first one I attempted to use died right after I got everything configed. And the current adapter has some strange behavior where it will occationally just disconnect from the VM and Proxmox entirely and act as if it’s loss power. But either way it’s fun and now I get nice graphs of my phone’s connectivity.

Snippet of Pi.Alert Presense Graph showing my phones connectivity issues and the home router.

Snippet of Pi.Alert Presense Graph showing my phones connectivity issues and the home router.

Conclusion

At this point in time that’s all I’ve really used my Proxmox Server for. I do now host a Discord Bot as well. But that’s limited to two Discord Servers at this point with no plans of expansion. So far it’s been fun. But I would not recommend the network setup I have. Get a proper wired connection. Or at least use a passthrough mode. We’ll see what else I do in the future. I have some Ideas. But what becomes of them is not a given.