README.md aktualisiert

This commit is contained in:
2026-06-04 05:27:07 +00:00
parent 2ac8c83bed
commit 5bbc94e3d9

118
README.md
View File

@@ -1,27 +1,40 @@
# Statische IP mit Netplan konfigurieren # Home Server IP ändert sich nach Neustart
Anleitung zur Einrichtung einer statischen IP-Adresse unter Ubuntu/Debian mit Netplan ohne die bestehende `50-cloud-init.yaml` anzufassen. ## Was war das Problem?
Ubuntu 24.04 nutzt **Netplan** zur Netzwerkkonfiguration.
Es gab zwei widersprüchliche Netplan-Dateien:
| Datei | Inhalt | Problem |
|---|---|---|
| `01-static.yaml` | Feste IP für `ens18` | Falsches Interface (Interface heißt `eno1`) |
| `50-cloud-init.yaml` | DHCP für `eno1` | Überschrieb die statische Konfig |
`cloud-init` hat die DHCP-Datei bei jedem Boot neu erstellt → der Server bekam jedes Mal eine zufällige IP vom Router.
--- ---
## 1. Neue Netplan-Datei anlegen ## Angewandte Lösung
Bestehende Dateien bleiben unverändert. Stattdessen eine neue Konfigurationsdatei erstellen:
### 1. cloud-init für Netzwerk deaktiviert
```bash ```bash
sudo nano /etc/netplan/01-static.yaml echo "network: {config: disabled}" > /etc/cloud/cloud.cfg.d/99-disable-network.cfg
``` ```
**Inhalt:** ### 2. DHCP-Datei gelöscht
```bash
rm /etc/netplan/50-cloud-init.yaml
```
### 3. Statische Konfig korrigiert (`/etc/netplan/01-static.yaml`)
```yaml ```yaml
network: network:
version: 2 version: 2
ethernets: ethernets:
ens18: eno1:
dhcp4: no dhcp4: no
addresses: addresses:
- 192.168.178.88/24 - 192.168.178.57/24
routes: routes:
- to: default - to: default
via: 192.168.178.1 via: 192.168.178.1
@@ -29,59 +42,62 @@ network:
addresses: [192.168.178.1, 8.8.8.8] addresses: [192.168.178.1, 8.8.8.8]
``` ```
> **Hinweis:** Netplan verarbeitet Konfigurationsdateien in alphabetischer Reihenfolge. Die `01-static.yaml` überschreibt dabei die DHCP-Einstellung aus der `50-cloud-init.yaml` effektiv. ### 4. Berechtigungen gesetzt und angewendet
---
## 2. Konfiguration testen (empfohlen)
Vor dem endgültigen Anwenden zunächst testen:
```bash ```bash
sudo netplan try chmod 600 /etc/netplan/01-static.yaml
netplan apply
``` ```
Der Befehl wendet die Konfiguration temporär an und macht sie nach 120 Sekunden automatisch rückgängig, falls keine Bestätigung erfolgt. So bleibt der Zugang auch bei einem Fehler erhalten.
--- ---
## 3. Konfiguration anwenden ## Wenn das Problem wieder auftritt
### Schritt 1 Aktuelle IP und Interface prüfen
```bash ```bash
sudo netplan apply ip addr show eno1
``` ```
Richtige IP: `192.168.178.57`
Wenn `dynamic` in der Ausgabe steht → DHCP ist wieder aktiv.
--- ### Schritt 2 Netplan-Dateien prüfen
## 4. SSH-Verbindung nach dem Apply
> ⚠️ **Wichtig bei Remote-Zugriff via SSH!**
>
> Nach dem Apply ist die alte IP nicht mehr erreichbar.
>
> | Vorher | Nachher |
> |--------|---------|
> | `192.168.178.123` | `192.168.178.88` |
>
> Neue Verbindung aufbauen mit:
> ```bash
> ssh user@192.168.178.88
> ```
---
## Option: cloud-init dauerhaft deaktivieren
Für Homeserver (kein Cloud/VPS-Umfeld) empfiehlt es sich, cloud-init's Netzwerkverwaltung vollständig abzuschalten:
```bash ```bash
sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg cat /etc/netplan/*.yaml
```
Es darf **nur eine Datei** existieren (`01-static.yaml`) mit `dhcp4: no`.
Wenn `50-cloud-init.yaml` wieder da ist → cloud-init hat sie neu erstellt.
### Schritt 3 cloud-init-Sperre prüfen
```bash
cat /etc/cloud/cloud.cfg.d/99-disable-network.cfg
```
Ausgabe muss sein: `network: {config: disabled}`
Wenn die Datei fehlt → neu anlegen:
```bash
echo "network: {config: disabled}" > /etc/cloud/cloud.cfg.d/99-disable-network.cfg
``` ```
**Inhalt:** ### Schritt 4 DHCP-Datei wieder löschen
```bash
```yaml rm -f /etc/netplan/50-cloud-init.yaml
network: {config: disabled}
``` ```
Danach verwaltet cloud-init das Netzwerk nicht mehr und die eigene Netplan-Datei ist alleinige Quelle der Wahrheit. ### Schritt 5 Statische Konfig prüfen und anwenden
```bash
cat /etc/netplan/01-static.yaml # Inhalt kontrollieren
chmod 600 /etc/netplan/01-static.yaml
netplan apply
ip addr show eno1 # Prüfen: kein "dynamic", valid_lft forever
```
---
## Server-Infos
| Eigenschaft | Wert |
|---|---|
| Betriebssystem | Ubuntu 24.04.4 LTS |
| Hostname | minecraft |
| Netzwerkkarte | `eno1` (MAC: `ac:e2:d3:05:b8:46`) |
| Feste IP | `192.168.178.57` |
| Gateway / DNS | `192.168.178.1` (Fritzbox) |
| Netplan-Konfig | `/etc/netplan/01-static.yaml` |