Skip to content

A repository that I used to test and configure my router

Notifications You must be signed in to change notification settings

chramb/router-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Router Lab

This lab was created to help me configure and test my homelab router configuration.

I opted for terraform based lab because it would be easy to create and destroy. My hypervisor of choice was libvirt with QEMU/KVM backend.

Terraform provider used: dmacvicar/terraform-provider-libvirt(GitHub)

Router Plan

Test Lab Network Diagram

flowchart LR
    A{{"🌐 Internet"}} --- B(["🔥 Alpine Router"])
    B --- C(["🖥️ Ubuntu Desktop"]) & D(["🖥️ Fedora Desktop"])
Loading

Software

Operating System: Alpine Linux

due to minimalistic nature and ability to be ran from ram (Diskless Mode) (lbu)

DHCP: ISC DHCP

it's battle tested and most well known while being fairly minimal (to the point that some distributions package it as just dhcp package).

DNS: BIND 9

another ISC product, while the same reasoning as above applies it's also the only mainstream DNS solution that supports DNSSEC, recursive DHCP lookup and dynamic DHCP host registration (RFC 2136)

Certificate Authority: step ca

provides ssh and X.509 certificate management with ACME protocol support.

Firewall: nftables(wiki)

minimal Linux firewall, modern replacement for iptables.

Allows for seamless connection with other servers (cloud or remote), will allow usage of common DNS on all nodes no matter of the locationta

References

About

A repository that I used to test and configure my router

Topics

Resources

Stars

Watchers

Forks

Languages