add intro content, outline (refs #14)
This commit is contained in:
@@ -1,11 +1,113 @@
|
|||||||
+++
|
+++
|
||||||
categories = ["software"]
|
categories = ["software"]
|
||||||
tags = ["router","opnsense"]
|
tags = ["router","opnsense"]
|
||||||
date = 2025-08-09T08:00:00-05:00
|
date = 2025-08-27T08:00:00-05:00
|
||||||
description = ""
|
description = ""
|
||||||
draft = false
|
draft = false
|
||||||
slug = "router-build"
|
slug = "router-build"
|
||||||
title = "Router Build"
|
title = "🔀 Router Build"
|
||||||
author = "nicholas"
|
author = "nicholas"
|
||||||
+++
|
+++
|
||||||
|
|
||||||
|
My router (Netgear R6400v2) lacks many of the features I would like to use and become familiar with:
|
||||||
|
- VLANs
|
||||||
|
- Advanced routing, firewall
|
||||||
|
- Monitoring, logging, alerts
|
||||||
|
- etc.
|
||||||
|
|
||||||
|
**I need a new router.**
|
||||||
|
|
||||||
|
I have a few options from here:
|
||||||
|
|
||||||
|
1. ❌ **Write custom firmware to existing router** (*DD-WRT, OpenWRT, Tomato, etc.*)
|
||||||
|
- ➕ Fun
|
||||||
|
- ➕ Free
|
||||||
|
- ➖ Too much jank
|
||||||
|
|
||||||
|
2. ❌ **Buy new hardware**
|
||||||
|
- ➕ Very easy setup
|
||||||
|
- 💲 Could require expensive/high-end router hardware
|
||||||
|
|
||||||
|
3. ✅ **Repurpose existing hardware**
|
||||||
|
- ➕ Fun
|
||||||
|
- ➕ Makes use of an out-of-work mini PC (Dell OptiPlex 5050 Micro)
|
||||||
|
- ➕ Can run proper router OS
|
||||||
|
- ➕ Use old router as WAP
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🪵 Router-on-a-stick (ROAS)
|
||||||
|
My VM host (where I will build my router) has only a single NIC, with only one physical port. That means I cannot replicate the behavior of ordinary consumer routers, which are typically configured with a dedicated WAN port, and several dedicated LAN ports. The router simply routes between the two. Very simple. I need to find a way to replicate the *function* of such a router without the same hardware.
|
||||||
|
|
||||||
|
I have a couple of options:
|
||||||
|
|
||||||
|
1. ❌ Configure the **virtual switch** to perform 802.1Q VLAN tagging for router VM.
|
||||||
|
- ➕ Free, no additional hardware required
|
||||||
|
|
||||||
|
2. ✅ Configure a **managed physical switch** to handle 802.1Q VLAN tagging and trunking to the router
|
||||||
|
- ➕ Gain additional physical ports
|
||||||
|
- 💲 Addtional hardware required
|
||||||
|
|
||||||
|
I want the extra ports!
|
||||||
|
|
||||||
|
## 🖧 Logical Network Topology
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
graph TD
|
||||||
|
isp["🌐ISP"]
|
||||||
|
modem["📡Modem"]
|
||||||
|
switch["🔀Switch"]
|
||||||
|
subgraph vm-host["VM Host"]
|
||||||
|
router["🛡️Router (OPNSense)"]
|
||||||
|
end
|
||||||
|
wap["🛜WAP"]
|
||||||
|
nas["🗄️NAS"]
|
||||||
|
workstation["🖥️Workstation"]
|
||||||
|
subgraph wireless["Wireless Devices"]
|
||||||
|
laptop["💻Laptop"]
|
||||||
|
phone["📱Phone"]
|
||||||
|
printer["🖨️Printer"]
|
||||||
|
end
|
||||||
|
|
||||||
|
isp --- modem
|
||||||
|
modem --- switch
|
||||||
|
switch --- |"🪵 Trunk (VLANs 10,100)"| router
|
||||||
|
switch --- wap
|
||||||
|
switch --- nas
|
||||||
|
switch --- workstation
|
||||||
|
|
||||||
|
wap -.- wireless
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔀 Switch Port VLAN Assignment Table
|
||||||
|
| Port | Device | VLAN Mode | PVID | Tagged VLANs |
|
||||||
|
|-|-|-|-|-|
|
||||||
|
| 1 | Router | Trunk | 10 | 10,100 |
|
||||||
|
| 2 | Workstation | Access | 10 | - |
|
||||||
|
| 3 | NAS | Access | 10 | - |
|
||||||
|
| 4 | WAP | Access | 10 | - |
|
||||||
|
| 5 | - | Access | 10 | - |
|
||||||
|
| 6 | - | Access | 10 | - |
|
||||||
|
| 7 | - | Management | 1 | - |
|
||||||
|
| 8 | Modem | Access | 100 | - |
|
||||||
|
|
||||||
|
|
||||||
|
## 🖥️ VM Configuration
|
||||||
|
- 3 GB RAM
|
||||||
|
- 1 vCPU
|
||||||
|
- Static MAC address (Spoof NETGEAR router MAC)
|
||||||
|
- Enable router VM network adapter to carry VLANs ID 10,100
|
||||||
|
|
||||||
|
## ⏺️ OPNSense
|
||||||
|
### Interfaces - VLAN 10,100
|
||||||
|
LAN = VLAN 10
|
||||||
|
WAN = VLAN 20
|
||||||
|
### Unbound DNS
|
||||||
|
### Query Forwarding
|
||||||
|
- forward to pi-hole -> network-wide ad-blocking
|
||||||
|
### Overrides
|
||||||
|
### DHCP
|
||||||
|
### Firewall - GeoIP
|
||||||
|
[Block countries](https://AccountID:AccountKey@download.maxmind.com/geoip/databases/GeoLite2-Country-CSV/download?suffix=zip)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user