Oppsett av Debian-nettverk
Hele konfigurasjonen for nettverksgrensesnittene er lagret i vanlige tekstfiler i en enkelt katalog med navnet / etc / network. Denne katalogen inneholder et antall filer og underkataloger for å dekke både oppsettet for IPv4 og IPv6.
- grensesnitt og grensesnitt.d: generell konfigurasjon per grensesnitt
- hvis-ned.d: skript som kjøres i tilfelle grensesnittet går ned
- if-post-down.d: skript som kjøres etter at grensesnittet går ned
- hvis-opp.d: skript som kjøres hvis grensesnittet går opp
- if-pre-up.d: skript som kjøres før grensesnittet går opp
Den spesifikke konfigurasjonen utføres per nettverksgrensesnitt. Du kan lagre det hele i grensesnittene med én fil, eller som separate filer i kataloggrensesnittene.d. En typisk IPv4-konfigurasjon fra en bærbar enhet er vist nedenfor. Den består av ett loopback-grensesnitt (/ dev / lo)
, et Ethernet-grensesnitt (/ dev / eth0)
, og et trådløst grensesnitt (/ dev / wlan0)
. Linje 1 refererer til å inkludere alle skriptene som er lagret i katalogen / etc / nettverk / grensesnitt.d /
. Linjene 3 til 5 konfigureres / dev / lo
, linjene 7 til 9 / dev / eth0, og linje 11 grensesnittet / dev / wlan0. En detaljert forklaring på enkeltkommandoene er gitt nedenfor.
2
3 # Loopback nettverksgrensesnitt
4 auto lo
5 iface lo inet loopback
6
7 # Det primære nettverksgrensesnittet
8 tillat-hotplug eth0
9 iface eth0 inet dhcp
10
11 iface wlan0 inet dhcp
For andre Debian GNU / Linux-utgivelser eller distribusjoner basert på det, kan filgrensesnittene se like ut, men med forskjellige navn for nettverksenhetene. Fra og med Debian 9 “Strekk” de gamle nettverksnavnene som / dev / eth0, / dev / eth1
og / dev / wlan0
har gått bort siden enhetsnavnet kan endres. De nye navnene ligner på disse - / dev / enp6s0
, / dev / enp8s0
, / dev / enp0s31f6
, og / dev / enp5s0
[1]. For tilgjengelige nettverksgrensesnitt kan du se på filen “/ sys / class / net” - i vårt tilfelle heter grensesnittene / dev / lo
og / dev / enp0s3
.
Listen over tilgjengelige nettverksgrensesnitt:
Konfigurasjonen for disse grensesnittene ser ut som følger. Bildet nedenfor er hentet fra en Debian GNU / Linux 9.5.'
Den grunnleggende nettverkskonfigurasjonen på en Debian GNU / Linux 9.5:
Som neste trinn vil vi se på enkeltsetningene for å konfigurere et ønsket grensesnitt.
Debian nettverkskonfigurasjon i detalj
Automatisk aktivering av et grensesnitt ved oppstart
Ved oppstart av systemet går installeringsskriptene gjennom konfigurasjonsfilene for nettverksgrensesnittene. For å automatisk aktivere et grensesnitt, legg til nøkkelordet "auto" (forkortelse for "allow-auto") etterfulgt av det logiske navnet på grensesnittet (e). Oppsettskriptene vil kalle kommandoen "ifup -a" (forkortelse for "-all") som vil aktivere de nevnte grensesnittene. Følgende linje viser bare loopback-grensesnittet / dev / lo:
auto loNettverksgrensesnittene blir tatt opp i den rekkefølgen de er oppført. Følgende linje tar opp / dev / lo etterfulgt av / dev / wlan0, og / dev / eth0, til slutt.
auto lo wlan0 eth0Aktiver et grensesnitt hvis nettverkskabelen er koblet til
Nøkkelordet "tillat-hotplug" fører til en hendelse basert på en fysisk forbindelse. Det nevnte nettverksgrensesnittet aktiveres så snart nettverkskabelen er koblet til, og deaktivert så snart nettverkskabelen er koblet fra. Neste linje demonstrerer dette for Ethernet-grensesnittet / dev / eth0 (ligner linje 8 i liste 1).
tillat-hotplug eth0Statisk grensesnittkonfigurasjon
For å kommunisere med andre datamaskiner i et nettverk, tildeles et grensesnitt en IP-adresse. Denne adressen oppnås enten dynamisk (via DHCP) eller angis på en fast måte (statisk konfigurasjon). Derfor starter erklæringen av grensesnittet med nøkkelordet "iface" etterfulgt av det logiske navnet på nettverksgrensesnittet, tilkoblingstypen og metoden som brukes for å få IP-adressen. Det neste eksemplet viser dette for nettverksgrensesnittet / dev / eth0 med den statiske IPv4-adressen 192.168.1.5.
iface eth0 inet statiskadresse 192.168.1.5
nettmaske 255.255.255.0
inngangsport 192.168.1.1
Etter grensesnitterklæringen blir du invitert til å spesifisere et antall alternativer (alternativnavn i parentes). Dette inkluderer verdier som IP-adresse (adresse), nettmaske (nettmaske), kringkastingsområde (kringkasting), rutingsmåling for standard gateway (metrisk), standard gateway (gateway), adressen til det andre sluttpunktet (pointtopoint), linkens lokale adresse (hwaddress), pakkestørrelsen (mtu) samt adressens gyldighetsområde (scope). Neste eksempel viser konfigurasjonen for IPv6 for nettverksgrensesnittet / dev / enp0s3 [4].
iface enp0s3 inet6 statiskadresse fd4e: a32c: 3873: 9e59: 0004 :: 254
nettmaske 80
gateway fd4e: a32c: 3873: 9e59: 0004 :: 1
Dynamisk grensesnittkonfigurasjon via DHCP
Koble til forskjellige nettverk krever fleksibilitet. Dynamic Host Control Protocol (DHCP) [5] gjør denne fleksibiliteten mulig og nettverksskriptene tilordner IP-adressen til nettverksgrensesnittet som blir overlevert fra DHCP-serveren. Følgende linje viser dette for wlan-grensesnittet med navnet / dev / wlan0:
iface wlan0 inet dhcp#For IPv6 bruk denne linjen, i stedet:
iface wlan0 inet6 dhcp
I likhet med den statiske konfigurasjonen ovenfra er det mulig å angi en rekke alternativer. Disse alternativene avhenger av DHCP-oppsettet. Blant annet inkluderer listen vertsnavnet som skal forespørres (vertsnavn), beregningen for tilleggte ruter (beregning), foretrukket leietid i timer eller sekunder (leietider, leietid), klientidentifikatoren (klienten) eller maskinvareadressen ).
Andre muligheter
Konfigurasjonsfilen / etc / grensesnittene tillater også oppsett for Bootstrap Protocol (BOOTP) [6] (bootp), PPP (ppp) samt IPX [7].
Viser grensesnittkonfigurasjonen
Opp til utgivelsen 8 av Debian GNU / Linux, bruk kommandoen “/ sbin / ifconfig” for å vise grensesnittkonfigurasjonen. Se konfigurasjonen for det første Ethernet-grensesnittet nedenfor.
Grensesnittkonfigurasjon ved hjelp av ifconfig:
Fra versjon 9 og utover er ikke kommandoen “ifconfig” lenger forhåndsinstallert, og erstattet av forgjengeren “ip”. Bruk i stedet kommandoen “ip addr show”.
Grensesnittkonfigurasjon ved hjelp av ip:
Aktivere og deaktivere et grensesnitt
Som allerede beskrevet ovenfor aktiverer alternativet “auto” automatisk et grensesnitt ved oppstart. Det er to kommandoer for å aktivere og deaktivere et grensesnitt, manuelt. Opp til Debian 8, bruk “ifconfig eth0 up” eller “ifup eth0” for å aktivere grensesnittet. Fra Debian 9, bruk bare “ifup eth0”. Motpartene er “ifconfig eth0 down” og “ifdown eth0”. Bildet nedenfor viser standardutdata når du aktiverer et grensesnitt.
Grensesnittaktivering ved bruk av ifup:
Legger til flere alternativer
Det er mulig å legge til ytterligere handling i tilfelle et grensesnitt aktiveres eller deaktiveres. Disse skriptene kalles skript for if-pre-up og if-post-down og kommer i spill før aktivering og etter deaktivering av et grensesnitt.
Det neste eksemplet viser dette i kombinasjon med en brannmur som er aktiv i tilfelle grensesnittet også er aktivt. I linje 3 aktiveres skriptet / usr / local / sbin / firewall.sh kalles før grensesnittet aktiveres (derav koden "pre-up", og i linje 4 skriptet "/ usr / local / sbin / firewall-disable.sh ”kalles etter at grensesnittet er deaktivert.
1 tillat-hotplug eth02 iface eth0 inet dhcp
3 pre-up / usr / local / sbin / firewall-enable.sh
4 post-down / usr / local / sbin / firewall-disable.sh
Konklusjon
Den grunnleggende konfigurasjonen av nettverksgrensesnitt i Debian GNU / Linux er sammenlignbar enkel - noen få linjer med kode, og det er gjort. For mer informasjon om flere alternativer, kan du se på ressursene nedenfor.
Lenker og referanser
[1] Debian Wiki, nettverkskonfigurasjon
[2] IPv4, Wikipedia
[3] IPv6, Wikipedia
[4] Debian Static Ip IPv4 og IPv6
[5] Dynamic Host Control Protocol (DHCP), Wikipedia
[6] Bootstrap Protocol (BOOTP), Wikipedia
[7] Internetwork Packet Exchange (IPX), Wikipedia
Takk
Forfatteren vil takke Axel Beckert for hans hjelp og kritiske kommentarer mens han forbereder denne artikkelen.