Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:archlinux_-_minimal_systemd-networkd_bridge

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
tachtler:archlinux_-_minimal_systemd-networkd_bridge [2020/01/29 15:29] – [Überprüfung] klaustachtler:archlinux_-_minimal_systemd-networkd_bridge [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
-====== ArchLinux - systemd-networkd - Bridge ====== 
- 
-Eine Ethernet **Bridge** (Brücke) ermöglicht es, z.B. via [[https://www.linux-kvm.org|KVM]] erstellte Gast-Systemen, Verbindungen über die zugrundeliegenden Netzwerkkarten des Wirt-Systems herzustellen. 
- 
-^ Beschreibung      ^ Externer Link                                                                   ^ 
-| Homepage          | [[https://www.archlinux.de/]]                                                   | 
-| Herunterladen     | [[https://www.archlinux.de/download]]                                           | 
-| Dokumentation     | [[https://wiki.archlinux.de/title/Hauptseite]]                                  | 
-| Installation      | [[https://wiki.archlinux.de/title/Anleitung_f%C3%BCr_Einsteiger|https://wiki.archlinux.de/title/Anleitung_für_Einsteiger]]               | 
-| - Network-Bridge  | [[https://wiki.archlinux.org/index.php/Systemd-networkd#Bridge_interface]]      | 
- 
-Als **Beispiel** sollen hier **zwei Ethernet-Bridges** konfiguriert werden: 
-  - ''br0'' - physische Netzwerkkarte ''eth0'' - Weg in eine z.B. **DMZ** 
-  - ''br1'' - physische Netzwerkkarte ''eth1'' - Weg ins **Internet** 
- 
-Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um der Benutzer ''root'' zu werden, geben Sie bitte nachfolgenden Befehl ein: 
-<code> 
-$ su - 
-Password:  
-</code> 
- 
-Nachfolgende Konfigurationsdatei sind zu erstellen um mittels **''systemd-networkd''** eine Netzwerk-**Bridge** (Brücke) zu erstellen und zu betreiben. 
- 
-===== Konfiguration: br0 ===== 
- 
-==== /etc/systemd/network/br0.netdev ==== 
- 
-Es soll zunächst eine virtuelle **Bridge** (Brücken)-schnittstelle in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br0.netdev''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br0.netdev 
-</code> 
-<code ini> 
-[NetDev] 
-Name=br0 
-Kind=bridge 
-</code> 
- 
-Anschließend wird **''systemd-networkd''** angewiesen, ein **Device** (Gerät) mit dem Namen **''br0''** zu erstellen, das als **Ethernet-Bridge** (Netzwerk-Brücke) fungiert, was durch **Neustart** des Dienstes/Daemons ''systemd-networkd.service'' erfolgt. 
-<code> 
-[root@archlinux]# systemctl restart systemd-networkd.service  
-</code>  
- 
-Durch Ausführung des nachfolgenden Befehls kann überprüfe werden, ob die **Ethernet-Bridge** erstellt wurde und sollte eine Ausgabe in etwa wie die nachfolgende erzeugen: 
-<code> 
-[root@archlinux]# ip a | grep -A 1 br0 
-12: br0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 
-    link/ether 12:34:56:78:9a:bc brd ff:ff:ff:ff:ff:ff 
-</code> 
- 
-==== /etc/systemd/network/br0-eth0.network ==== 
- 
-Als nächstes muss die **Verbindung** der **Ethernet-Bridge** zu der darunter liegenden **physischen  Netzwerkkarte** in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br0-eth0.network''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br0-eth0.network 
-</code> 
-<code ini> 
-[Match] 
-Name=eth0 
- 
-[Network] 
-Bridge=br0 
-</code> 
- 
-==== /etc/systemd/network/br0.network ==== 
- 
-Zum Abschluss der Konfiguration der **Ethernet-Bridge** muss diese selbst noch als **Netzwerk-Interface** in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br0.network''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br0.network 
-</code> 
-<code ini> 
-[Match] 
-Name=br0 
- 
-[Network] 
-Address=192.168.0.54/24 
-</code> 
- 
-===== Konfiguration: br1 ===== 
- 
-==== /etc/systemd/network/br1.netdev ==== 
- 
-Es soll zunächst auch hier eine virtuelle **Bridge** (Brücken)-schnittstelle in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br1.netdev''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br1.netdev 
-</code> 
-<code ini> 
-[NetDev] 
-Name=br1 
-Kind=bridge 
-</code> 
- 
-Anschließend wird **''systemd-networkd''** wieder angewiesen, ein **Device** (Gerät) mit dem Namen **''br1''** zu erstellen, das als **Ethernet-Bridge** (Netzwerk-Brücke) fungiert, was durch erneuten **Neustart** des Dienstes/Daemons ''systemd-networkd.service'' erfolgt. 
-<code> 
-[root@archlinux]# systemctl restart systemd-networkd.service  
-</code>  
- 
-Durch Ausführung des nachfolgenden Befehls kann überprüfe werden, ob die **Ethernet-Bridge** erstellt wurde und sollte eine Ausgabe in etwa wie die nachfolgende erzeugen: 
-<code> 
-[root@archlinux]# ip a | grep -A 1 br1 
-14: br1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 
-    link/ether cb:a9:87:65:43:21 brd ff:ff:ff:ff:ff:ff 
-</code> 
- 
-==== /etc/systemd/network/br1-eth1.network ==== 
- 
-Als nächstes muss die **Verbindung** der **Ethernet-Bridge** zu der darunter liegenden **physischen  Netzwerkkarte** in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br1-eth1.network''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br1-eth1.network 
-</code> 
-<code ini> 
-[Match] 
-Name=eth1 
- 
-[Network] 
-Bridge=br1 
-</code> 
- 
-==== /etc/systemd/network/br1.network ==== 
- 
-Zum Abschluss der Konfiguration der **Ethernet-Bridge** muss diese selbst noch als **Netzwerk-Interface** in nachfolgender Konfigurationsdatei 
-  * **''/etc/systemd/network/br1.network''** 
-mit nachfolgendem Inhalt konfiguriert werden. 
-<code> 
-[root@archlinux]# vim /etc/systemd/network/br1.network 
-</code> 
-<code ini> 
-[Match] 
-Name=br1 
- 
-[Network] 
-Address=192.168.1.54/25 
-Gateway=192.168.1.1 
-DNS=212.18.0.5 
-DNS=212.18.3.5 
-</code> 
- 
-===== Neustart: systemd-networkd ===== 
- 
-Nach erfolgreicher Konfiguration der **beiden Ethernet-Bridges** - **''br0''** und **''br1''**, muss eine erneuter **Neustart** des Dienstes/Daemons ''systemd-networkd.service'' erfolgen. 
-<code> 
-[root@archlinux]# systemctl restart systemd-networkd.service  
-</code>  
- 
-===== Überprüfung ===== 
- 
-Nach Abschluss aller Konfigurationen und des Neustarts des Dienstes/Daemons ''systemd-networkd.service'', kann mit nachfolgendem Befehl überprüft werden, ob **beiden Ethernet-Bridges** - **''br0''** und **''br1''** sich erfolgreich in Betrieb befinden: 
-<code> 
-[root@archlinux]# ip a | grep -A 5 -E ^*:.br.:.*$ 
-2: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 
-    link/ether 12:34:56:78:9a:bc brd ff:ff:ff:ff:ff:ff 
-    inet 192.168.0.54/24 brd 192.168.1.255 scope global br0 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::28dc:88ff:fe35:1f6c/64 scope link  
-       valid_lft forever preferred_lft forever 
-3: br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 
-    link/ether cb:a9:87:65:43:21 brd ff:ff:ff:ff:ff:ff 
-    inet 192.168.1.54/25 brd 192.168.1.127 scope global br1 
-       valid_lft forever preferred_lft forever 
-    inet6 fe80::c4ab:deff:fe98:37f7/64 scope link  
-       valid_lft forever preferred_lft forever 
-</code> 
- 
-Ob die **Routen** ebenfalls korrekt gesetzt sind, kann mit nachfolgendem Befehl überprüft werden und sollte eine Ausgabe ähnlich wie diese zur Anzeige bringen: 
-<code> 
-[root@archlinux]# ip ro 
-default via 192.168.1.1 dev br1 proto static  
-192.168.0.0/24 dev br0 proto kernel scope link src 192.168.0.54  
-192.168.1.0/25 dev br1 proto kernel scope link src 192.168.1.54  
-</code> 
- 
-:!: **WICHTIG** - **Es sollte __nur eine__ ''default''-Route vorhanden sein!**