Standardmäßig wird nach einer frischen Installation von Debian Stretch/Buster/Bullseye ein DHCP-Klient vorbereitet. Dieser DHCP-Klient ist für die automatische Vergabe einer IP-Adresse, eines Subnetz, eines Gateways und eines DNS-Server zuständig. Manchmal ist es gewünscht, dass ein Rechner oder Server immer mit derselben IP-Adresse im Netzwerk erreichbar bleibt und nicht unbemerkt eine neue interne IP-Adresse vom DHCP-Server des Routers erhält.
Folgende Schritte zum Wechsel von einem DHCP-Klient auf eine statische IP-Adresse:
- Greife auf das Terminal des jeweiligen Servers zu.
- Erstelle eine Sicherung der Konfigurationsdatei "sudo cp /etc/network/interfaces /root/".
- Finde den Ethernet-Namen und IP-Adresse für die auf deinem Server bereitgestellten Ethernet-Schnittstelle.
- Editiere nun die Konfigurationsdatei "sudo vim /etc/network/interfaces".
- Setze die Subnetz-Maske mit der Befehlszeile "netmask 255.255.255.0"
- Setze die IP-Adresse des Gateways "gateway 192.168.178.1"
- Setze die IP-Adresse/n des DNS-Auflösers "dns-nameservers 192.168.178.1 8.8.8.8"
- Starte den Netzwerkdienst mit der Befehlszeile "sudo systemctl restart networking.service" neu und überprüfe mit der Befehlszeile "sudo systemctl status networking.service", ob alles reibungslos geklappt hat.
Detailreiche Erläuterung zu den Schritten:
Zu Schritt 1
Der Zugriff auf das jeweilige Terminal des Servers kann auch mittels SSH geschehen. Der Befehl dazu lautet für gewöhnlich "ssh <Benutzername>@<IP-Adresse Server>".
Zu Schritt 3
Finde heraus und merke, wie der Name der Ethernet-Schnittstelle heißt, in meinem Fall ist es "eno1".
Befehlszeile: ip -c link show
user@debian:~$ ip -c link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether --:--:--:--:--:ad brd ff:ff:ff:ff:ff:ff
altname --
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether --:--:--:--:--:74 brd ff:ff:ff:ff:ff:ff
Danach wollen wir den Namen der Schnittstelle nutzen, um die momentan vergebene IP-Adresse durch den DHCP-Server herauszufinden.
Befehlszeile: ip -c addr show eno1
user@debian:~$ ip -c addr show eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether --:--:--:--:--:ad brd ff:ff:ff:ff:ff:ff
altname --
inet 192.168.178.144/24 brd 192.168.178.255 scope global noprefixroute eno1
valid_lft forever preferred_lft forever
inet6 fe80::1ac0:4dff:fe27:73ad/64 scope link
valid_lft forever preferred_lft forever
Zu Schritt 4 bis 7
Bearbeite die Konfigurationsdatei mit der Befehlszeile:
"sudo vim /etc/network/interfaces" oder "sudo nano /etc/network/interfaces".
Finde die Befehlszeilen, welche "allow-hotplug" und "dhcp" beinhalten und entferne bzw. kommentiere die jeweils komplette Zeile aus. So sieht meine Konfigurationsdatei aus:
# The loopback network interface
auto lo
iface lo inet loopback
# allow-hotplug eno1
# iface eno1 inet dhcp
# The primary network interface
auto eno1
iface eno1 inet static
address 192.168.178.144
netmask 255.255.255.0
gateway 192.168.178.1
dns-domain local.home
dns-nameservers 192.168.178.1