Debian netwerkinterface instellen

Debian Network Interface Setup



De kennis met betrekking tot het opzetten van een netwerkinterface in Debian GNU/Linux en Debian-gerelateerde distributies is essentieel voor elke Linux-ingenieur. In dit artikel leggen we u uit waar u de juiste informatie kunt vinden en hoe u deze instelt voor IPv4 IPv4 [2] en IPv6 [3] . Het aantal opties is vrij lang maar geeft je veel flexibiliteit voor jouw specifieke situatie.

Debian Netwerkconfiguratie

De volledige configuratie voor de netwerkinterfaces wordt opgeslagen in platte tekstbestanden in een enkele map met de naam /etc/network. Deze map bevat een aantal bestanden en submappen om zowel de instellingen voor IPv4 als IPv6 te dekken.







  • interfaces en interfaces.d: algemene configuratie per interface
  • if-down.d: scripts die worden uitgevoerd als de interface uitvalt
  • if-post-down.d: scripts die worden uitgevoerd nadat de interface uitvalt
  • if-up.d: scripts die worden uitgevoerd als de interface omhoog gaat
  • if-pre-up.d: scripts die worden uitgevoerd voordat de interface omhoog gaat

De specifieke configuratie gebeurt per netwerkinterface. U kunt alles opslaan in het enkele bestand met de naam interfaces, of als afzonderlijke bestanden in de map interfaces.d. Hieronder wordt een typische IPv4-configuratie van een draagbaar apparaat weergegeven. Het bestaat uit een loopback-interface |_+_|, een ethernet-interface |_+_| en een draadloze interface |_+_|. Regel 1 verwijst naar het opnemen van alle scripts die zijn opgeslagen in de directory |_+_|. De regels 3 tot 5 configureren |_+_|, regels 7 tot 9 /dev/eth0 en regel 11 de interface /dev/wlan0. Een gedetailleerde uitleg voor de enkele commando's wordt hieronder gegeven.



1 bron /enzovoort/netwerk/interfaces.d/ *
2
3 # De loopback-netwerkinterface
4auto het
5iface lo inet loopback
6
7 # De primaire netwerkinterface
8toestaan-hotplug eth0
9iface eth0 inet dhcp
10
elfiface wlan0 inet dhcp

Voor andere Debian GNU/Linux-releases of daarop gebaseerde distributies kunnen de bestandsinterfaces er hetzelfde uitzien, maar met verschillende namen voor de netwerkapparaten. Vanaf Debian 9 Rek de oude netwerknamen uit, zoals |__+_| en |_+_| zijn verdwenen omdat de apparaatnaam kan veranderen. De nieuwe namen lijken op deze: |_+_|, |_+_|, |_+_| en |_+_| [1] . Bekijk voor de beschikbare netwerkinterfaces het bestand /sys/class/net — in ons geval heten de interfaces |__+_| en |__+_|.



De lijst met beschikbare netwerkinterfaces:


De configuratie voor deze interfaces ziet er als volgt uit. De afbeelding hieronder is afkomstig van een Debian GNU/Linux 9.5.'





De basis netwerkconfiguratie op een Debian GNU/Linux 9.5:


Als volgende stap zullen we de enkele instructies bekijken om een ​​gewenste interface te configureren.

Debian netwerkconfiguratie in detail

Automatisch inschakelen van een interface bij het opstarten

Bij het opstarten van uw systeem doorlopen de setup-scripts de configuratiebestanden voor de netwerkinterfaces. Om een ​​interface automatisch in te schakelen, voegt u het trefwoord auto (afkorting van allow-auto) toe, gevolgd door de logische naam van de interface(s). De setup-scripts zullen het commando ifup -a (afkorting van –all) aanroepen om de genoemde interfaces te activeren. De volgende regel zal alleen de loopback-interface /dev/lo oproepen:



auto het

De netwerkinterfaces worden weergegeven in de volgorde waarin ze worden vermeld. De volgende regel geeft /dev/lo weer, gevolgd door /dev/wlan0, en uiteindelijk /dev/eth0.

automatisch laag wlan0 eth0

Activeer een interface als de netwerkkabel is aangesloten

Het trefwoord allow-hotplug leidt naar een gebeurtenis op basis van een fysieke verbinding. De genoemde netwerkinterface wordt geactiveerd zodra de netwerkkabel wordt aangesloten en gedeactiveerd zodra de netwerkkabel wordt losgekoppeld. De volgende regel demonstreert dit voor de Ethernet-interface /dev/eth0 (vergelijkbaar met regel 8 van lijst 1).

toestaan-hotplug eth0

Statische interfaceconfiguratie

Om te communiceren met andere computers in een netwerk krijgt een interface een IP-adres toegewezen. Dit adres wordt ofwel dynamisch (via DHCP) verkregen of op een vaste manier ingesteld (statische configuratie). Daarom begint de declaratie van de interface met het trefwoord iface gevolgd door de logische naam van de netwerkinterface, het verbindingstype en de methode die wordt gebruikt om het IP-adres te verkrijgen. Het volgende voorbeeld laat dit zien voor de netwerkinterface /dev/eth0 met het statische IPv4-adres 192.168.1.5.

iface eth0 inet statisch
adres 192.168.1.5
netmasker 255.255.255.0
gateway 192.168.1.1

Na de interface-aangifte wordt u uitgenodigd om een ​​aantal opties op te geven (optienaam tussen haakjes). Dit omvat waarden zoals het IP-adres (adres), het netmasker (netmasker), het uitzendbereik (broadcast), de routeringsmetriek voor de standaardgateway (metrisch), de standaardgateway (gateway), het adres van het andere eindpunt (pointtopoint), het lokale linkadres (hwaddress), de pakketgrootte (mtu) en het adresgeldigheidsbereik (scope). Het volgende voorbeeld toont de configuratie voor IPv6 voor de netwerkinterface /dev/enp0s3 [4] .

iface enp0s3 inet6 statisch
adres fd4e:a32c:3873:9e59:0004::254
netmasker80
gateway fd4e:a32c:3873:9e59:0004::1

Dynamische interfaceconfiguratie via DHCP

Verbinding maken met verschillende netwerken vereist flexibiliteit. Het Dynamic Host Control Protocol ( DHCP ) [5] maakt deze flexibiliteit mogelijk en de netwerkscripts wijzen het IP-adres toe aan de netwerkinterface die door de DHCP-server wordt overgedragen. De volgende regel demonstreert dit voor de wlan-interface met de naam /dev/wlan0:

iface wlan0 inet dhcp

#Gebruik voor IPv6 in plaats daarvan deze regel:
iface wlan0 inet6 dhcp

Net als bij de statische configuratie van hierboven zijn er een aantal opties in te stellen. Deze opties zijn afhankelijk van uw DHCP-configuratie. De lijst bevat onder andere de op te vragen hostnaam (hostnaam), de metriek voor toegevoegde routes (metrisch), de gewenste leasetijd in uren of seconden (lease-uren, leasetime), de client-identifier (client) of het hardware-adres (hwaddress ).

Andere opties

Het configuratiebestand /etc/interfaces staat ook instellingen toe voor het Bootstrap-protocol ( BOOTP ) [6] (bootp), PPP (ppp) evenals IPX [7].

De interfaceconfiguratie weergeven

Tot release 8 van Debian GNU/Linux gebruikt u het commando /sbin/ifconfig om de interfaceconfiguratie weer te geven. Zie de configuratie voor de eerste ethernet-interface hieronder.

Interfaceconfiguratie met behulp van ifconfig :

Vanaf release 9 is het commando ifconfig niet langer voorgeïnstalleerd en vervangen door zijn voorganger ip. Gebruik in plaats daarvan de opdracht ip addr show.

Interfaceconfiguratie met ip:

Een interface in- en uitschakelen

Zoals hierboven al beschreven, activeert de optie auto automatisch een interface bij het opstarten. Er zijn twee opdrachten om een ​​interface handmatig in en uit te schakelen. Gebruik tot Debian 8 ifconfig eth0 up of ifup eth0 om de interface in te schakelen. Gebruik vanaf Debian 9 alleen ifup eth0. De tegenhangers zijn ifconfig eth0 down en ifdown eth0. De onderstaande afbeelding toont de standaarduitvoer bij het inschakelen van een interface.

Interface-activering met ifup:

Extra opties toevoegen

Het is mogelijk om verdere actie toe te voegen als een interface wordt geactiveerd of gedeactiveerd. Deze scripts worden if-pre-up en if-post-down scripts genoemd en komen in het spel voor het inschakelen en na het uitschakelen van een interface.

Het volgende voorbeeld laat dit zien in combinatie met een firewall die actief is als de interface ook actief is. In regel 3 wordt het script /usr/local/sbin/firewall-enable.sh aangeroepen voordat de interface wordt geactiveerd (vandaar de tag pre-up, en in regel 4 het script /usr/local/sbin/firewall-disable.sh wordt aangeroepen nadat de interface is gedeactiveerd.

1toestaan-hotplug eth0
2iface eth0 inet dhcp
3pre-up/usr/lokaal/sbin/firewall-enable.sh
4post-down/usr/lokaal/sbin/firewall-disable.sh

Conclusie

De basisconfiguratie van netwerkinterfaces in Debian GNU/Linux is vergelijkbaar eenvoudig — een paar regels code, en het is klaar. Voor meer informatie over extra opties kunt u de onderstaande bronnen raadplegen.

Links en referenties

[1] Debian Wiki, Netwerkconfiguratie
[2] IPv4, Wikipedia
[3] IPv6, Wikipedia
[4] Debian Statisch IP-IPv4 en IPv6
[5] Dynamic Host Control Protocol (DHCP), Wikipedia
[6] Bootstrap-protocol (BOOTP), Wikipedia
[7] Internetwerkpakketuitwisseling (IPX), Wikipedia

Bedankt

De auteur wil Axel Beckert bedanken voor zijn hulp en kritische opmerkingen bij het opstellen van dit artikel.