bundlewrap/nodes/home.router.py
CroneKorkN 3b4ebda91d
feat(home.router): emergency uplink via carina VLAN instead of pppoe
VLAN 52 "carina" on sfp-sfpplus7 of the rack switch, routed and
masqueraded by home.router via 192.168.178.1; pppoe and the rolf test
VLAN are commented out for now.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RywMtsL8qXG7GDY3MHq9Uh
2026-10-23 11:34:21 +02:00

131 lines
4 KiB
Python

{
'hostname': '10.0.0.1',
'groups': [
'autologin',
'debian-13',
'hardware',
'home',
'monitored',
'dnsserver',
],
'bundles': [
'kea-dhcpd',
'wireguard',
#'pppoe',
'wol-waker',
],
'metadata': {
'id': '1d6a43e5-858c-42f9-9c40-ab63d61c787c',
'network': {
'internal': {
'interface': 'enp1s0f0',
'ipv4': '10.0.0.1/24',
'dhcp_server': True,
},
'iot': {
'type': 'vlan',
'vlan_interface': 'internal',
'id': 2,
'ipv4': '10.0.2.1/24',
'dhcp_server': True,
},
'external': {
'type': 'vlan',
'vlan_interface': 'internal',
'id': 3,
'ipv4': '10.0.98.2/24',
#'qdisc': 'cake bandwidth 35Mbit diffserv4',
},
'proxmox': {
'type': 'vlan',
'vlan_interface': 'internal',
'id': 4,
'ipv4': '10.0.4.1/24',
'dhcp_server': True,
},
'wakeonlan': {
'type': 'vlan',
'vlan_interface': 'internal',
'id': 5,
'ipv4': '10.0.5.1/24',
'dhcp_server': True,
},
'guest': {
'type': 'vlan',
'vlan_interface': 'internal',
'id': 9,
'ipv4': '10.0.9.1/24',
'dhcp_server': True,
},
# 'rolf': { # rolf local test
# 'type': 'vlan',
# 'vlan_interface': 'internal',
# 'id': 51,
# 'ipv4': '192.168.179.1/24',
# 'dhcp_server': True,
# },
'carina': { # NOTFALL
'type': 'vlan',
'vlan_interface': 'internal',
'id': 52,
'ipv4': '192.168.178.199/24',
'gateway4': '192.168.178.1',
},
# 'carina': {
# 'interface': 'enp1s0f1',
# 'ipv4': '192.168.178.199/24',
# 'gateway4': '192.168.178.1',
# },
},
'nftables': {
'nat': {
'oifname carina masquerade',
},
},
'bind': {
'master_node': 'htz.mails',
'hostname': 'home.resolver.name',
},
'pppoe': {
'interface': 'external',
'user': '!decrypt:encrypt$gAAAAABocUfodLqCBKPPN7H9S64yJ7kRddtaWI0nQU2oklPMEjBhMsir4NL2yjkcHXAN-Ozqn6FCokyE1AL8ek3c5CqAvd83jkxZytp-oclrKqUD9uhUCy4=',
'secret': '!decrypt:encrypt$gAAAAABocUhmDqFZsyHYBIP2qdMFIS1eWT_bPdyv98cHzIgeKFAxDfcCrVJwDxVPFDDMa_7UT76HDJLvtdYQ8mFl2RL0yR8k2A=='
},
'sysctl': {
'net': {
'ipv4': {
'ip_forward': 1,
'conf': {
'default': {
'forwarding': 1,
},
},
},
'ipv6': {
'conf': {
'all': {
'forwarding': 1,
},
'default': {
'forwarding': 1,
},
},
},
},
},
'wireguard': {
'my_ip': '172.30.0.2/32',
's2s': {
'htz.mails': {
'allowed_ips': [
'10.0.10.0/24',
#'192.168.179.0/24', # while raspi at home
'10.0.227.0/24', # mseibert.freescout
'10.0.228.0/24', # mseibert.yourls
'10.0.229.0/24', # mseibert.mailsman
],
},
},
},
},
}