Ich habe meinen alten Server mit vmware abgebaut und durch eine Lösung mit Raspberry PI ersetzt. Aufgesetzt sind ein PiHole als DHCP mit verschiedenen VLAN. Eine Fritzbox sorgt für das NAT. Jetzt klappt der Routing, vielleicht kann man das noch besser machen...
Ein Beispiel für die Config im pihole/dnsmasq:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #vlan2: papa # Dhcp dhcp-range=vlan2,192.168.172.100,192.168.172.129,4h #generelle Einstellungen dhcp-option=vlan2,option:router,192.168.172.10 dhcp-option=vlan2,option:dns-server,192.168.172.10 dhcp-option=vlan2,15,zuhause.lan dhcp-option=vlan2,27,1 dhcp-option=vlan2,option:ntp-server,192.168.172.10 dhcp-option=vlan2,19,0 dhcp-option=vlan2,option:domain-search,zuhause.lan dhcp-option=vlan2,46,8 dhcp-option=vlan2,252,http://wpad.zuhause.lan/wpad.dat #sonstige Optionen dhcp-option=vlan2,vendor:MSFT,2,1i |
Meine netplan-config sieht derzeit so aus.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | network: version: 2 renderer: networkd ethernets: #default lan (vlan1 tagged) eth0: # dhcp6: yes (dont use dhcpv6, use Remote Autoconfig from lan) accept-ra: yes addresses: [192.168.178.10/24] # gateway4: 192.168.178.1 # unset, since we configure routes below routes: - to: 0.0.0.0/0 via: 192.168.178.1 nameservers: addresses: [127.0.0.53] search: [zuhause.lan] vlans: #vlan papa (untagged) vlan2: id: 2 link: eth0 accept-ra: yes addresses: [192.168.172.10/24] #vlan max (untagged) vlan3: id: 3 link: eth0 accept-ra: yes addresses: [192.168.173.10/24] |
forwarding ist natürlich aktiviert:
1 2 3 | sysctl -p net.ipv4.ip_forward = 1 net.ipv6.conf.all.forwarding = 1 |
und damit die offenen Verbindungen zu den Geräten nicht verloren gehen, eine passende Firewall-Regel.
1 2 3 4 5 6 7 8 9 10 | # Maskieren der LAN-Schnittstelle, Port-Forwarding & NAT aktivieren # vorhandene Regeln und Ketten zuerst löschen / Reset Traffic-Control # Restart-Funktionalität iptables -F iptables -X # Forwarding für alle verwendeten Schnittstellen im lokalen Netz aktivieren iptables -A FORWARD -o eth0 -s 192.168.0.0/16 -m conntrack --ctstate NEW -j ACCEPT iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE |
Über Feedback zur Optimierung freu ich mich natürlich.