Tutoriel Linux

Vast IP-adres op Debian: de meest efficiënte methode, afhankelijk van uw netwerkconfiguratie.

Débutant4 min de lecture
À retenirLinux n'est pas réservé aux experts. Le bon point de départ : une distribution accessible, une sauvegarde propre et quelques commandes comprises.

Het instellen van een statisch IP-adres op Debian lijkt misschien eenvoudig. In de praktijk kan het echter een wijziging zijn die je SSH-toegang kan blokkeren als je het verkeerde bestand bewerkt of de verkeerde netwerkservice opnieuw opstart.

Voordat de configuratie wordt gewijzigd, is het daarom noodzakelijk om vast te stellen wie de netwerkkaart daadwerkelijk beheert: Netwerkmanager, systemd-networkd of het oude bestand /etc/network/interfacesDe juiste methode hangt van dit punt af.

Begin met het identificeren van de interface en de gateway.

Noteer op Debian eerst de netwerkinterface, het huidige adres en de standaardroute:

ip adres
IP-route

Je bent hoofdzakelijk op zoek naar drie soorten informatie:

  • de naam van de interface, bijvoorbeeld enp0s3, ens18 Of eth0 ;
  • de voetbrug, zichtbaar op de lijn standaard via ;
  • het netwerkvoorvoegsel, bijvoorbeeld /24.

Voorbeeld :

standaard via 192.168.1.1 dev enp0s3
inet 192.168.1.42/24 brd 192.168.1.255 scope global dynamic enp0s3

Hier zou een consistente statische configuratie mogelijk zijn. 192.168.1.50/24 met een loopbrug 192.168.1.1Pas de waarden altijd aan uw netwerk aan; kopieer deze adressen niet zonder meer naar een productieserver.

Weten welke tool het netwerk beheert

Controleer voordat u wijzigingen aanbrengt welke services momenteel zijn geïnstalleerd:

systemctl is-active NetworkManager
systemctl is-active systemd-networkd
ls -l /etc/network/interfaces /etc/network/interfaces.d/ 2>/dev/null

Op een Debian-machine met een grafische omgeving, Netwerkmanager is gebruikelijk. Op een minimale server kunt u het volgende tegenkomen. systemd-networkd of op alsomlaag met /etc/network/interfaces.

Gebruik geen verschillende methoden door elkaar. Als NetworkManager de interface al beheert, vermijd dan het tegelijkertijd aanmaken van een systemd-networkd-bestand voor dezelfde netwerkadapter. Dit is namelijk de beste manier om na de volgende herstart een inconsistente configuratie te krijgen.

Als u via SSH bent verbonden, open dan een tweede sessie voordat u verdergaat. Zorg er ook voor dat u consoletoegang behoudt als de machine zich op afstand bevindt. Als SSH na een wijziging niet meer reageert, raadpleeg dan onze handleiding voor meer informatie. SSH opnieuw installeren op Ubuntu is een schone installatie. Het geeft je ook goede reflexen om service- en firewallinstellingen te controleren.

NetworkManager-methode met nmcli

Als NetworkManager actief is, begin dan met het opzoeken van de verbindingsnaam:

nmcli verbindingsweergave

Je kunt de verbinding vervolgens overschakelen naar een statisch IPv4-adres. Bijvoorbeeld met een verbinding genaamd Bedrade verbinding 1 :

sudo nmcli connection modify "Wired connection 1" 
  ipv4.addresses 192.168.1.50/24 
  ipv4.gateway 192.168.1.1 
  ipv4.dns "1.1.1.1 8.8.8.8" 
  ipv4.methode handleiding

Herlaad vervolgens de verbinding:

sudo nmcli connection up "Bekabelde verbinding 1"

Op een externe machine kan deze opdracht de sessie enkele seconden onderbreken. Als u ook het netwerk of de gateway wijzigt, voer de bewerking dan uit vanaf een lokale console of via een out-of-band beheerdersaccount.

systemd-networkd-methode

Als uw Debian-systeem systemd-networkd gebruikt, omvat de configuratie vaak een bestand in /etc/systemd/network/Voorbeeld voor de interface enp0s3 :

sudo nano /etc/systemd/network/20-wired.network

Mogelijke inhoud:

Naam=enp0s3

Adres=192.168.1.50/24
Gateway=192.168.1.1
DNS=1.1.1.1
DNS=8.8.8.8

Controleer vervolgens de bestandsrechten:

sudo chmod 644 /etc/systemd/network/20-wired.network

Laad vervolgens voorzichtig opnieuw:

sudo networkctl reload
sudo systemctl restart systemd-networkd

Doe dit wederom niet blindelings op een server waar je alleen SSH-toegang hebt. Een verkeerde interfacenaam of een onjuiste gateway kan al genoeg zijn om je de toegang tot de machine te ontzeggen.

Methode /etc/network/interfaces

Op sommige Debian-installaties, met name oudere of zeer minimalistische, wordt het netwerk nog steeds beheerd door /etc/network/interfacesSla het bestand op voordat je het wijzigt:

sudo cp /etc/network/interfaces /etc/network/interfaces.bak

Voorbeeld van een statische configuratie:

auto enp0s3
iface enp0s3 inet static
    adres 192.168.1.50/24
    gateway 192.168.1.1
    dns-nameservers 1.1.1.1 8.8.8.8

Afhankelijk van de geïnstalleerde pakketten kan de DNS-regel het volgende vereisen: resolvconf Of moet worden vervangen door een aparte DNS-configuratie. Ga er op recente Debian-systemen niet van uit dat deze methode actief is, alleen omdat het bestand bestaat.

Om een ​​aanvraag in te dienen, kiest u een onderhoudsperiode:

sudo systemctl restart networking

Controleer of het vaste adres werkt.

Ga er na het aanbrengen van wijzigingen niet zomaar vanuit dat de SSH-sessie nog open is. Controleer het adres, de route, de DNS en de netwerkuitvoer:

ip addr show enp0s3
IP-route
resolvectl dns 2>/dev/null || cat /etc/resolv.conf
ping -c 3 192.168.1.1
ping -c 3 1.1.1.1
curl -I https://www.debian.org/

Als het pingen van de gateway wel lukt, maar de internetverbinding niet, controleer dan de standaardroute. Als internettoegang via het IP-adres wel werkt, maar via de domeinnaam niet, ligt het probleem waarschijnlijk bij de DNS.

Voor meer informatie kunt u de Debian-documentatie raadplegen. netwerkconfiguratie, documentatie nmcli en de handleidingpagina systemd.network.

Voordat u uw SSH-sessie sluit

Ik raad u aan om nog een laatste test uit te voeren vanaf een andere terminal:

ssh [email protected]

Als de nieuwe verbinding werkt, de standaardroute correct is en de DNS reageert, kunt u de oude sessie sluiten. Als er iets misgaat, ga dan onmiddellijk terug naar de back-up in plaats van verdere wijzigingen aan te brengen.

Een statisch IP-adres moet de server voorspelbaarder maken, niet kwetsbaarder. De juiste volgorde blijft hetzelfde: identificeer de netwerkbeheerder, maak een back-up van de instellingen, wijzig slechts één methode, pas de wijzigingen toe en controleer vervolgens of alles werkt.

sudo apt update && sudo apt upgrade