
Some checks are pending
🏠 Home Lab CI/CD Pipeline / 🔍 Validate Configuration (push) Waiting to run
🏠 Home Lab CI/CD Pipeline / 🔨 Build Configurations (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 🔒 Security Audit (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 📚 Documentation & Modules (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 🔄 Update Dependencies (push) Waiting to run
🏠 Home Lab CI/CD Pipeline / 🚀 Deploy Configuration (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 📢 Notify Results (push) Blocked by required conditions
1.5 KiB
1.5 KiB
Network Configuration Modules
This directory contains networking configurations for all machines in the Home Lab.
Structure
-
common.nix
- Shared networking settings used by all machines- nftables firewall enabled
- SSH access with secure defaults
- Tailscale VPN for remote access
- Basic firewall rules (SSH port 22)
-
network-<machine-name>.nix
- Machine-specific networking configurations- Import
common.nix
for shared settings - Override or extend with machine-specific requirements
- Define hostname, hostId, and additional firewall ports
- Import
Current Machines
network-congenital-optimist.nix
- AMD Threadripper workstation
- ZFS configuration (hostId: 8425e349)
- Additional ports: 9091 (Transmission RPC)
network-sleeper-service.nix
- Xeon file server
- Headless server configuration
- Ready for additional file sharing service ports
Usage
Each machine configuration imports its specific network module:
# In machines/<machine-name>/configuration.nix
imports = [
../../modules/network/network-<machine-name>.nix
# ... other imports
];
Adding New Machines
- Create
network-<new-machine>.nix
in this directory - Import
./common.nix
for shared settings - Add machine-specific configuration (hostname, hostId, ports)
- Import the new file in the machine's
configuration.nix
Future Refactoring
The common.nix
file can be extended to include more shared networking patterns as they emerge across machines. Consider moving repeated patterns here to reduce duplication.