Our projects
Home Network Configuration with pfSense
One of my personal projects has been to set up a home network with VLAN segmentation and security on the router. I thus got a little Netgear 1100 pfSense router. pfSense is an open source firewall that is used in many applications to provide customized, tailored security for networks. I won’t lie and say it is the easiest thing to do if you are new to this all, but the basic setup is simple enough. This involves setting the WAN and LAN ports, DHCP server, DNS, etc. Then you can play around with the other settings, such as creating VLANs, corresponding them to ports, and setting firewall (access control) rules for traffic flow between them.
I did this to put my Google Home and IoT devices on a separate network, as well as my home lab/sandbox in another. And the main network has the wireless router connected, from which others can connect. There is some extra work to set up the security…
Set up basic router features
Set up network
DHCP/DNS
VLANs
Firewall and access control lists
The connected network switch should be smart enough to handle VLANs, or else it will be difficult to maintain the intended network segmentation. Some “dumb switches” don’t have the ability to read VLAN IDs and tags on Ethernet frames, so they would defeat the purpose of using them.
I have also created an OpenSSL VPN server on the router and configured the certificates and CA so that a remote computer with the client installed can connect after a handshake and cryptographic key exchange (the server generates a session key, encrypted with its private key, and sends to the client, which uses the server’s public key to decrypt it).
Setting up AI on Local Device
Another thing I’ve taken interest in is setting up local AI on my home computer. This has multiple advantages over using publicly accessed ones in the cloud, like Google Gemini, ChatGPT, Microsoft Copilot
Privacy is a big factor here. If you self-host your own large language model, you won’t need to send your data to the ones hosted by big tech companies. Especially in the case of Google, that data is likely going toward targeted advertising and will be exposed to various other actors, in theory.
The ability to customize your LLM, training it with specific datasets for more targeted purposes
Making a personal assistant or chatbot attuned to your own environment, with knowledge of your documents, projects, emails, other files etc. from your server, without sending that data to the wider web.
LLama is one popular … on HuggingFace. Lots of open source projects can be found
This also applies to image generation through things like Stable Diffusion. While Midjourney and DALI were fun to play around with online, I decided to try setting up SD on my home PC. Since I had an AMD graphics card, this took a few extra steps and was not as convenient, but it is possible.
Running this on a Docker container is a useful way to do it… Docker is software that enables you to create a self-contained location for developing or hosting programs. The container will use hardware resources from the host OS, similar to a VM, but without all the heavy overhead and the rest of the virtual OS required by a full VM. This makes for a lightweight and scalable solution…
I have noticed that trying it with just a CPU doing the heavy lifting for the generative AI often leads to slow results, so a proper graphics card is highly recommended. Admittedly, there are limitations in terms of what a single GPU can do even (including relatively high-end ones like NVIDIA 4090s), so having some sort of rig with multiple cards may be considered if you need high-speed results
Learning Cisco with Home Lab Network
In initially practicing for my CCNA, I purchased three routers and three switches used from an instructor. These models were from around 2010-2014, and included a Catalyst switch and … router 2890. I created various mock topologies and scenarios, including OSPF and EIGRP… HSRP..
First, I would plan out the network layout: a star topology, hub and spoke, etc
Then I would configure each of the devices, bringing up interfaces, assigning IP addresses (including management ones on the switches), consider how they would connect, including what kinds of cables (serial links between two routers can simulate a WAN link if you want them), and then set up the routing. Options include static routing,
Between switches, Ether Channel links or other link aggregation can be configured…
I want to work with more modern and advanced features such as Software Defined Networking (SDN).
GNS3 or Cisco’s VRL are valuable tools for simulating networks, and allow for detailed configuration of actual networking device images as if they were the real thing, with all the included functionalities. It’s a great alternative to actually having heavy physical networking equipment in your lab if you lack the space or resources