Fedora – Interne Bridge vmbr0 mit NAT
Zur Navigation springen
Zur Suche springen
Fedora – Interne Bridge vmbr0 mit generischem NAT
Ziel
- Bridge vmbr0 mit 192.168.16.254/24
- Permanenter Carrier über dummy0
- NAT für 192.168.16.0/24
- Vollständig NetworkManager-konform
- Keine doppelte Dummy-Connection
- Kein manuelles ip link add
Alte Konfiguration vollständig entfernen
- 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-Kernelmodul dauerhaft laden
- echo dummy > /etc/modules-load.d/dummy.conf
- echo "options dummy numdummies=1" > /etc/modprobe.d/dummy.conf
- modprobe dummy numdummies=1
Prüfen ob dummy0 existiert
- ip link show dummy0
- dummy0 muss sichtbar sein
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 hinzufügen
- nmcli connection add type bridge-slave ifname dummy0 master vmbr0 con-name bridge-slave-dummy0
Bridge starten
- 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
Aktive Uplink-Connection ermitteln
- nmcli connection show --active
- Name der aktiven Connection mit Default-Route merken
Zonen setzen
- nmcli connection modify vmbr0 connection.zone internal
- nmcli connection modify "<AKTIVE-CONNECTION>" connection.zone public
- nmcli connection up vmbr0
- nmcli connection up "<AKTIVE-CONNECTION>"
NAT aktivieren
- 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 jeder Connection in Zone public