Fedora – Interne Bridge vmbr0 mit NAT: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(→Ziel) |
|||
| Zeile 4: | Zeile 4: | ||
* Bridge vmbr0 mit 192.168.16.254/24 | * Bridge vmbr0 mit 192.168.16.254/24 | ||
* Internes Netz 192.168.16.0/24 | * Internes Netz 192.168.16.0/24 | ||
| − | * Permanenter Carrier über | + | * Permanenter Carrier über dummy0 |
| − | * NAT unabhängig vom | + | * NAT unabhängig vom aktiven Uplink |
| + | * Vollständig NetworkManager-konform | ||
| + | * Keine ip-link-Manipulation | ||
| − | == Dummy beim Boot laden | + | == Dummy-Modul beim Boot laden == |
*echo dummy > /etc/modules-load.d/dummy.conf | *echo dummy > /etc/modules-load.d/dummy.conf | ||
*echo "options dummy numdummies=1" > /etc/modprobe.d/dummy.conf | *echo "options dummy numdummies=1" > /etc/modprobe.d/dummy.conf | ||
*modprobe dummy numdummies=1 | *modprobe dummy numdummies=1 | ||
| + | |||
| + | == Alte Reste entfernen (optional bei Neuaufbau) == | ||
| + | *nmcli connection delete vmbr0 2>/dev/null | ||
| + | *nmcli connection delete dummy0 2>/dev/null | ||
| + | *nmcli connection delete bridge-slave-dummy0 2>/dev/null | ||
| + | *ip link delete vmbr0 2>/dev/null | ||
| + | *ip link delete dummy0 2>/dev/null | ||
| + | |||
| + | == Dummy über NetworkManager erstellen == | ||
| + | *nmcli connection add type dummy ifname dummy0 con-name dummy0 | ||
| + | *nmcli connection up dummy0 | ||
== Bridge erstellen == | == Bridge erstellen == | ||
*nmcli connection add type bridge ifname vmbr0 con-name vmbr0 | *nmcli connection add type bridge ifname vmbr0 con-name vmbr0 | ||
| − | *nmcli connection modify vmbr0 ipv4.addresses 192.168.16. | + | *nmcli connection modify vmbr0 ipv4.addresses 192.168.16.254/24 |
*nmcli connection modify vmbr0 ipv4.method manual | *nmcli connection modify vmbr0 ipv4.method manual | ||
*nmcli connection modify vmbr0 ipv6.method ignore | *nmcli connection modify vmbr0 ipv6.method ignore | ||
| + | |||
| + | == Dummy als Bridge-Port anbinden == | ||
| + | *nmcli connection add type bridge-slave ifname dummy0 master vmbr0 | ||
| + | |||
| + | == Bridge aktivieren == | ||
*nmcli connection up vmbr0 | *nmcli connection up vmbr0 | ||
| − | |||
| − | |||
| − | |||
| − | |||
== Kontrolle == | == Kontrolle == | ||
| Zeile 34: | Zeile 48: | ||
*sysctl --system | *sysctl --system | ||
| − | == | + | == Zonen über NetworkManager setzen == |
| − | ;Bridge als | + | ;Bridge als internal |
| − | * | + | *nmcli connection modify vmbr0 connection.zone internal |
| + | *nmcli connection up vmbr0 | ||
| + | |||
| + | ;Uplink (Beispiel WLAN XINUX-LAN) als public | ||
| + | *nmcli connection modify XINUX-LAN connection.zone public | ||
| + | *nmcli connection up XINUX-LAN | ||
| − | + | == NAT konfigurieren == | |
*firewall-cmd --permanent --zone=public --add-masquerade | *firewall-cmd --permanent --zone=public --add-masquerade | ||
| − | |||
| − | |||
*firewall-cmd --permanent --zone=internal --add-forward | *firewall-cmd --permanent --zone=internal --add-forward | ||
| − | |||
| − | |||
*firewall-cmd --reload | *firewall-cmd --reload | ||
== Ergebnis == | == Ergebnis == | ||
| − | *vmbr0 | + | *vmbr0 permanent state UP |
*192.168.16.0/24 wird genattet | *192.168.16.0/24 wird genattet | ||
| − | * | + | *NAT funktioniert mit jedem Interface in Zone public |
| − | * | + | *Keine Kernel-Manipulation notwendig |
Version vom 2. März 2026, 11:14 Uhr
Fedora – Interne Bridge vmbr0 mit generischem NAT
Ziel
- Bridge vmbr0 mit 192.168.16.254/24
- Internes Netz 192.168.16.0/24
- Permanenter Carrier über dummy0
- NAT unabhängig vom aktiven Uplink
- Vollständig NetworkManager-konform
- Keine ip-link-Manipulation
Dummy-Modul beim Boot laden
- echo dummy > /etc/modules-load.d/dummy.conf
- echo "options dummy numdummies=1" > /etc/modprobe.d/dummy.conf
- modprobe dummy numdummies=1
Alte Reste entfernen (optional bei Neuaufbau)
- nmcli connection delete vmbr0 2>/dev/null
- nmcli connection delete dummy0 2>/dev/null
- nmcli connection delete bridge-slave-dummy0 2>/dev/null
- ip link delete vmbr0 2>/dev/null
- ip link delete dummy0 2>/dev/null
Dummy über NetworkManager erstellen
- nmcli connection add type dummy ifname dummy0 con-name dummy0
- nmcli connection up dummy0
Bridge erstellen
- nmcli connection add type bridge ifname vmbr0 con-name vmbr0
- nmcli connection modify vmbr0 ipv4.addresses 192.168.16.254/24
- nmcli connection modify vmbr0 ipv4.method manual
- nmcli connection modify vmbr0 ipv6.method ignore
Dummy als Bridge-Port anbinden
- nmcli connection add type bridge-slave ifname dummy0 master vmbr0
Bridge aktivieren
- nmcli connection up vmbr0
Kontrolle
- ip link show vmbr0
- Erwartet
- state UP
- kein NO-CARRIER
IP-Forwarding dauerhaft aktivieren
- echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-ipforward.conf
- sysctl --system
Zonen über NetworkManager setzen
- Bridge als internal
- nmcli connection modify vmbr0 connection.zone internal
- nmcli connection up vmbr0
- Uplink (Beispiel WLAN XINUX-LAN) als public
- nmcli connection modify XINUX-LAN connection.zone public
- nmcli connection up XINUX-LAN
NAT konfigurieren
- firewall-cmd --permanent --zone=public --add-masquerade
- firewall-cmd --permanent --zone=internal --add-forward
- firewall-cmd --reload
Ergebnis
- vmbr0 permanent state UP
- 192.168.16.0/24 wird genattet
- NAT funktioniert mit jedem Interface in Zone public
- Keine Kernel-Manipulation notwendig