Denne delen gjelder kun hvis et nettverkskort skal konfigureres.
Fra og med versjon 209, inneholder systemd en
nettverkskonfigurasjons nisse (daemon) kalt systemd-networkd som kan brukes
til grunnleggende nettverkskonfigurasjon. I tillegg, siden versjon
213, DNS navneoppløsning kan håndteres av systemd-resolved i stedet for den
statiske /etc/resolv.conf
filen.
Begge tjenestene er aktivert som standard.
Hvis du ikke vil bruke systemd-networkd for nettverkskonfigurasjon (for eksempel når systemet ikke er koblet til et nettverk, eller du vil bruke et annet verktøy som NetworkManager for nettverkskonfigurasjonen), deaktiver en tjeneste for å forhindre en feilmelding under oppstart:
systemctl disable systemd-networkd-wait-online
Konfigurasjonsfiler for systemd-networkd (og systemd-resolved) kan plasseres i
/usr/lib/systemd/network
eller
/etc/systemd/network
. Filer i
/etc/systemd/network
har en høyere
prioritet enn de i /usr/lib/systemd/network
. Det finnes tre typer
konfigurasjonsfiler: .link
,
.netdev
og .network
filene. For detaljert beskrivelser og
eksempelinnhold i disse konfigurasjonsfilene, se systemd.link(5),
systemd.netdev(5),
og systemd.network(5)
manualsider.
Udev tildeler normalt nettverkskortgrensesnittnavn basert på fysiske systemegenskaper som enp2s1. Hvis du ikke er sikker på hva grensesnittnavnet ditt er, kan du alltid kjøre ip link etter at du har startet opp systemet.
Grensesnittnavnene avhenger av implementeringen og konfigurasjon av udev nissen som kjører på systemet. Udev nissen for LFS (systemd-udevd, installert i Section 8.75, “Systemd-255”) vil ikke kjøre med mindre LFS systemet er startet opp. Så det er upålitelig å bestemme grensesnittnavnet som brukes i LFS systemet ved å kjøre disse kommandoene på vertens distribusjon, selv om du er i chroot miljøet.
For de fleste systemer er det kun ett nettverksgrensesnitt for hver type tilkobling. For eksempel det klassiske grensesnittnavnet på en kablet tilkobling er eth0. En trådløs tilkobling vil vanligvis ha navnet wifi0 eller wlan0.
Hvis du foretrekker å bruke de klassiske eller tilpassede nettverksgrensesnittnavnene, det er tre alternative måter å gjøre det på:
Masker udev .link
filen for
standardregler:
ln -s /dev/null /etc/systemd/network/99-default.link
Lag et manuelt navneskjema, for eksempel ved å gi navn til
grensesnitt med noe som internet0
, dmz0
, eller lan0
. For å gjøre det, lag .link
filer i /etc/systemd/network/ som
velger et eksplisitt navn eller et bedre navneskjema for
nettverksgrensesnittene dine. For eksempel:
cat > /etc/systemd/network/10-ether0.link << "EOF"
[Match]
# Change the MAC address as appropriate for your network device
MACAddress=12:34:45:78:90:AB
[Link]
Name=ether0
EOF
Se systemd.link(5) for mer informasjon.
I /boot/grub/grub.cfg, send alternativet net.ifnames=0
på kjernekommandolinjen.
Kommandoen nedenfor oppretter en grunnleggende konfigurasjonsfil for et Statisk IP oppsett (bruker både systemd-networkd og systemd-resolved):
cat > /etc/systemd/network/10-eth-static.network << "EOF"
[Match]
Name=<network-device-name>
[Network]
Address=192.168.0.2/24
Gateway=192.168.0.1
DNS=192.168.0.1
Domains=<Your Domain Name>
EOF
Flere DNS oppføringer kan legges til hvis du har mer enn en DNS
server. Ikke inkluder DNS- eller Domainsoppføringer hvis du har
tenkt å bruke den statiske filen /etc/resolv.conf
file.
Hvis systemet skal kobles til Internett, vil det trenge noen form
for Domain Name Service (DNS) navneløsning for å løse Internett
domenenavn til IP adresser, og omvendt. Dette kan best oppnås ved å
plassere IP adressen til DNS serveren, tilgjengelig fra
Internett-leverandøren eller nettverksadministratoren til
/etc/resolv.conf
.
Hvis du bruker metoder som er inkompatible med systemd-resolved
til å konfigurere nettverksgrensesnittene dine (f.eks.: ppp,
etc.), eller hvis du bruker en type lokal løsning (f.eks. bind,
dnsmasq, ubundet, etc.), eller annen programvare som genererer
en /etc/resolv.conf
(eks: et
resolvconf
program annet enn det levert av systemd), systemd-resolved service bør
ikke brukes.
For å deaktivere systemd-resolved, utfør følgende kommando:
systemctl disable systemd-resolved
Når du bruker systemd-resolved for DNS
konfigurasjon, oppretter den filen /run/systemd/resolve/stub-resolv.conf
. Og hvis
/etc/resolv.conf
ikke finnes, blir
den opprettet av systemd-resolved som en
symbolkobling til /run/systemd/resolve/stub-resolv.conf
. Så det
er unødvendig å lage en /etc/resolv.conf
manuelt.
Hvis en statisk /etc/resolv.conf
er
ønsket, opprett den ved å kjøre følgende kommando:
cat > /etc/resolv.conf << "EOF"
# Begin /etc/resolv.conf
domain <Your Domain Name>
nameserver <IP address of your primary nameserver>
nameserver <IP address of your secondary nameserver>
# End /etc/resolv.conf
EOF
domain
erklæringen kan utelates
eller erstattet med en search
erklæring. Se mansiden for resolv.conf for flere detaljer.
Erstatt <IP address of the
nameserver>
med IP adressen til DNS serveren som
passer best for oppsettet ditt. Det vil ofte være mer enn en
oppføring (krever sekundær server for reservefunksjon). Hvis du
bare trenger eller ønsker en DNS-server, fjern den andre
nameserver linjen fra
filen. IP adressen kan også være en ruter på det lokale
nettverket. Et annet alternativ er å bruke Googles offentlige DNS
tjeneste ved å bruke IP adressene nedenfor som navneservere.
Google sine offentlige DNS adresser er 8.8.8.8
og 8.8.4.4
for IPv4, og 2001:4860:4860::8888
og
2001:4860:4860::8844
for IPv6.
Under oppstartsprosessen vil filen /etc/hostname
brukes til å etablere systemets
vertsnavn.
Opprett /etc/hostname
filen og skriv
inn et vertsnavn ved å kjøre:
echo "<lfs>
" > /etc/hostname
<lfs>
må erstattes
med navnet til datamaskinen. Ikke skriv inn det fullt kvalifiserte
domenenavnet (FQDN) her. Den informasjonen skal i /etc/hosts
filen.
Bestem deg for et fullt kvalifisert domenenavn (FQDN) og mulige
aliaser til bruk i /etc/hosts
filen.
Hvis du bruker statisk IP adresse, må du også bestemme deg for en
IP adresse. Syntaksen for en vertsfiloppføring er:
IP_address myhost.example.org aliases
Med mindre datamaskinen skal være synlig for Internett (dvs. det er et registrert domene og en gyldig blokk med tildelte IP adresser—de fleste brukere har ikke dette), sørg for at IP adressen er i den private nettverkets IP adresseområde. Gyldige områder er:
Private Network Address Range Normal Prefix
10.0.0.1 - 10.255.255.254 8
172.x.0.1 - 172.x.255.254 16
192.168.y.1 - 192.168.y.254 24
x kan være et hvilket som helst tall i området 16-31. y kan være et hvilket som helst tall i område 0-255.
En gyldig privat IP adresse kan være 192.168.1.1.
Hvis datamaskinen skal være synlig for Internett, en gyldig FQDN kan være selve domenenavnet, eller en streng som er resultatet av å sette sammen et prefiks (ofte vertsnavnet) og domenenavnet med “.” karakter. Og du må kontakte domeneleverandøren for å knytte FQDN til din offentlige IP-adresse.
Selv om datamaskinen ikke er synlig for Internett, er en FQDN
fortsatt nødvendig for at visse programmer, for eksempel MTA-er,
skal fungere ordentlig. En spesiell FQDN, localhost.localdomain
, kan bli brukt til dette
formålet.
Opprett /etc/hosts
filen ved å bruke
følgende kommando:
cat > /etc/hosts << "EOF"
# Begin /etc/hosts
<192.168.0.2>
<FQDN>
[alias1] [alias2] ...
::1 ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# End /etc/hosts
EOF
<192.168.0.2>
og
<FQDN>
verdier må
bli endret for spesifikke bruksområder eller krav (hvis tildelt en
IP adresse av en nettverks-/systemadministrator og maskinen kobles
til et eksisterende nettverk). De valgfrie aliasnavnene kan
utelates, og <192.168.0.2>
linjen kan
utelates hvis du bruker en tilkobling konfigurert med DHCP eller
IPv6 autokonfigurasjon, eller bruker localhost.localdomain
som FQDN.
/etc/hostname
inneholder ikke
oppføringer for localhost
,
localhost.localdomain
, eller
vertsnavnet (uten domene) fordi de håndteres av myhostname
NSS modul, les mansiden nss-myhostname(8)
for detaljer.
::1 oppføringen er IPv6 motstykket til 127.0.0.1 og representerer IPv6 loopback grensesnittet.