Kuidas hallata võrguühendust RHEL/CentOS 8 võrgus NetworkManager
RHEL-is ja CentOS 8-s haldab võrguteenust NetworkManageri deemon ning seda kasutatakse võrguseadmete dünaamiliseks konfigureerimiseks ja juhtimiseks ning ühenduste üleval ja aktiivseks hoidmiseks, kui need on saadaval.
NetworkManageril on mitmeid eeliseid, nagu tugi võrgu hõlpsaks seadistamiseks ja haldamiseks nii käsurea liidese kui ka graafiliste kasutajaliideste tööriistade abil, pakub D-Bus'i kaudu API-d, mis võimaldab päringuid ja juhtimist võrgu konfiguratsioonil, tugi konfiguratsiooni paindlikkusele ja palju muud.
Pealegi saab NetworkManageri konfigureerida ka failide ja Cockpit'i veebikonsooli abil ning see toetab kohandatud skriptide kasutamist muude teenuste käivitamiseks või peatamiseks ühenduse oleku põhjal.
Enne kui läheme kaugemale, on järgmised olulised punktid, mida märkida CentOS/RHEL 8 võrgu loomise kohta:
- Traditsioonilisi ifcfg tüüpi konfiguratsiooni faile (nt ifcfg-eth0, ifcfg-enp0s3) toetatakse endiselt.
- Võrgukriptid on aegunud ja neid ei pakuta enam vaikimisi.
- Minimaalne install pakub uue versiooni ifup- ja ifdown-skriptidest, mis kutsuvad NetworkManageri tööriista nmcli kaudu.
- ifup- ja ifdown-skriptide käitamiseks peab töötama NetworkManager.
NetworkManageri installimine CentOS/RHEL 8-le
NetworkManager peaks olema eelinstallitud CentOS/RHEL 8 põhiinstallile, vastasel juhul saate selle installida DNF-i paketihalduri abil, nagu näidatud.
# dnf install NetworkManager
NetworkManageri üldine konfiguratsioonifail asub aadressil /etc/NetworkManager/NetworkManager.conf ja täiendavaid konfiguratsioonifaile leiate kataloogist/etc/NetworkManager /.
NetworkManageri haldamine Systemctl abil CentOS/RHEL 8-l
CentOS/RHEL 8-s ja teistes kaasaegsetes Linux-süsteemides, mis on süsteemd (süsteemi- ja teenushaldur) kasutusele võtnud, hallatakse teenuseid tööriista systemctl abil.
Järgnevad on kasulikud systemctl käsud teenuse NetworkManager haldamiseks.
CentOS/RHEL 8 minimaalsel installimisel peaks olema NetworkManager käivitatud ja lubatud vaikimisi käivitamisel automaatselt käivitamisel. Järgmiste käskude abil saate kontrollida, kas NetworkManager on aktiivne, lubatud ja printige NetworkManageri käitusaja teavet.
# systemctl is-active NetworkManager # systemctl is-enabled NetworkManager # systemctl status NetworkManager
Kui NetworkManager ei tööta, saate selle käivitada lihtsalt käivitades.
# systemctl start NetworkManager
NetworkManageri peatamiseks või desaktiveerimiseks ühel või teisel põhjusel väljastage järgmine käsk.
# systemctl stop NetworkManager
Kui olete liidese konfiguratsioonifailides või NetworkManageri deemoni konfiguratsioonis (mis asub tavaliselt kataloogi/etc/NetworkManager/kataloogis) muudatusi teinud, saate muudatuste rakendamiseks NetworkManageri taaskäivitada (peatada ja seejärel käivitada), nagu näidatud.
# systemctl restart NetworkManager
NetworkManageri deemoni konfiguratsiooni (kuid mitte systemd üksuse konfiguratsioonifaili) uuesti laadimiseks teenust taaskäivitamata käivitage järgmine käsk.
# systemctl reload NetworkManager
NetworkManageri tööriistade kasutamine ja ifcfg-failidega töötamine
NetworkManager toetab kasutajatel sellega suhtlemiseks mõningaid tööriistu:
- nmcli - käsurea tööriist, mida kasutatakse võrgu seadistamiseks.
- nmtui - lihtne needuspõhine teksti kasutajaliides, mida kasutatakse ka newtwork liideseühenduste konfigureerimiseks ja haldamiseks.
- Muud tööriistad hõlmavad nm-ühenduse redaktorit, juhtimiskeskust ja võrguühenduse ikooni (kõik GUI all).
NetworkManageri tuvastatud seadmete loetlemiseks käivitage käsk nmcli.
# nmcli device OR # nmcli device status
Kõigi aktiivsete ühenduste kuvamiseks käivitage järgmine käsk (pange tähele, et ilma -a
-ta loetletakse saadaolevad ühenduse profiilid).
# nmcli connection show -a
Võrguliidese spetsiifilised konfiguratsioonifailid asuvad kataloogis/etc/sysconfig/network-scripts /. Kõiki neid faile saate redigeerida, näiteks oma CentOS/RHEL 8 serveri staatilise IP-aadressi määramiseks.
# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
Siin on näidiskonfiguratsioon staatilise IP-aadressi määramiseks.
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=enp0s3 UUID=e81c46b7-441a-4a63-b695-75d8fe633511 DEVICE=enp0s3 ONBOOT=yes IPADDR=192.168.0.110 PREFIX=24 GATEWAY=192.168.0.1 DNS1=8.8.8.8 PEERDNS=no
Pärast muudatuste salvestamist peate uute muudatuste rakendamiseks kõik ühenduse profiilid uuesti laadima või taaskäivitama NetworkManageri.
# nmcli connection reload OR # systemctl restart NetworkManager
Võrguteenuste/skriptide käivitamine või peatamine võrguühenduse põhjal
NetworkManageril on kasulik võimalus, mis võimaldab kasutajatel teostada teenuseid (näiteks NFS, SMB jne) või lihtsaid skripte, mis põhinevad võrguühendusel.
Näiteks kui soovite pärast võrkude vahetamist NFS-i aktsiad automaatselt ühendada. Võite soovida, et sellised võrguteenused käivitataks alles siis, kui NetworkManager töötab ja töötab (kõik ühendused on aktiivsed).
Selle funktsiooni pakub NetworkManageri-dispetšeriteenus (mis tuleb süsteemi käivitamisel käivitada ja lubada, et see automaatselt käivitada). Kui teenus töötab, saate skriptid kataloogi /etc/NetworkManager/dispatcher.d lisada.
Kõik skriptid peavad olema käivitatavad ja kirjutatavad ning kuuluvad rootile, näiteks:
# chown root:root /etc/NetworkManager/dispatcher.d/10-nfs-mount.sh # chmod 755 /etc/NetworkManager/dispatcher.d/10-nfs-mount.sh
Tähtis: Dispetšeri skriptid täidetakse ühenduse ajal tähestikulises järjekorras ja katkestamise ajal vastupidises tähestikulises järjekorras.
Nagu me varem mainisime, on võrguskriptid CentOS/RHEL 8-s vananenud ja neid ei installita vaikimisi. Kui soovite ikkagi võrguskripte kasutada, peate installima võrgukriptide paketi.
# yum install network-scripts
Pärast installimist pakub see pakett ifup- ja ifdown-skriptide uut versiooni, mis kutsuvad NetworkManagerit ülaltoodud nmcli tööriista kaudu. Pange tähele, et nende skriptide käitamiseks peaks töötama NetworkManager.
Lisateavet leiate systemctl ja NetworkManageri käsulehtedelt.
# man systemctl # man NetworkManager
See on kõik, mida me selles artiklis ette valmistasime. Allpool oleva tagasiside vormi kaudu saate küsida selgitusi mis tahes punktide kohta või esitada küsimusi või teha juhendis täiendusi.