Firewalld NAT
Version vom 11. März 2026, 08:10 Uhr von Thomas.will (Diskussion | Beiträge)
firewalld NAT-Router mit Bridge (vmbr0 → WAN automatisch)
- Ziel
- Ein Linux-System mit firewalld soll als Router arbeiten.
- Das interne Netz kommt über eine Bridge (vmbr0).
- Der Internetzugang erfolgt automatisch über das aktive Interface (LAN oder WLAN).
- Interfaces
- vmbr0 internes Netz
- enp2s0f1 WAN (Ethernet)
- wlp0s20f3 WAN (WLAN)
- Zonenübersicht
- internal internes Netz
- external Internetzugang
Interfaces den Zonen zuordnen
- firewall-cmd --permanent --zone=internal --add-interface=vmbr0
- firewall-cmd --permanent --zone=external --add-interface=enp2s0f1
- firewall-cmd --permanent --zone=external --add-interface=wlp0s20f3
Forwarding für internes Netz erlauben
- Routerbetrieb benötigt Forwarding aus der internen Zone.
- firewall-cmd --permanent --zone=internal --set-target=ACCEPT
NAT (Masquerade) aktivieren
- Alle Pakete, die über Interfaces der Zone external nach außen gehen, werden maskiert.
- firewall-cmd --permanent --zone=external --add-masquerade
Kernel Routing aktivieren
- sysctl -w net.ipv4.ip_forward=1
- Prüfen
- sysctl net.ipv4.ip_forward
Konfiguration aktivieren
- firewall-cmd --reload
Funktionsprinzip
- Traffic aus dem internen Netz
vmbr0 (internal)
↓
Forward erlaubt
↓
external Zone
↓
Masquerade
↓
Kernel Routing
↓
aktives WAN Interface (enp2s0f1 oder wlp0s20f3)
- Der Kernel entscheidet automatisch über die Default-Route.
Route prüfen
- ip route get 1.1.1.1
Zonen prüfen
- firewall-cmd --get-active-zones
Masquerade prüfen
- firewall-cmd --zone=external --query-masquerade
Traffic prüfen
- Internes Interface
- tcpdump -ni vmbr0 icmp
- WAN Interfaces
- tcpdump -ni enp2s0f1 icmp
- tcpdump -ni wlp0s20f3 icmp