Ukuphatha ukuxhumana kwenethiwekhi ku-Linux usebenzisa insiza ye-nmcli console

Thatha ngokugcwele ithuluzi lokuphatha inethiwekhi ye-NetworkManager kumugqa womyalo we-Linux usebenzisa insiza ye-nmcli.

Ukuphatha ukuxhumana kwenethiwekhi ku-Linux usebenzisa insiza ye-nmcli console

Okusetshenziswayo nmcli ngokuqondile ibiza i-API ukuze ifinyelele imisebenzi ye-NetworkManager.

Ivele ngo-2010 futhi kwabaningi isiphenduke enye indlela yokumisa ukuxhumana kwenethiwekhi nokuxhumana. Nakuba abanye abantu basasebenzisa ifconfig. Ngenxa yokuthi i-nmcli iyithuluzi lokusebenzisa umugqa womyalo (CLI) elakhelwe ukusetshenziswa kumafasitela agcinayo nemibhalo, ilungele abaphathi besistimu abasebenza ngaphandle kwe-GUI.

I-syntax yomyalo we-ncmli

Ngokuvamile, i-syntax ibonakala kanje:

$ nmcli <options> <section> <action>

  • izinketho ziyimingcele enquma ubuqili bokusebenza kwe-nmcli,
  • isigaba (isigaba) - sinquma ukuthi yiziphi izici zokusetshenziswa okufanele zisetshenziswe,
  • isenzo - ikuvumela ukuthi ucacise ukuthi yini ngempela okudingeka yenziwe.

Kunezigaba eziyi-8 sezizonke, ngayinye ehlotshaniswa nesethi yemiyalo ethile (izenzo):

  • Usizo inikeza usizo mayelana nemiyalo ye-ncmcli nokusetshenziswa kwayo.
  • General ibuyisela isimo se-NetworkManager nokucushwa komhlaba wonke.
  • Izingosi kufaka phakathi imiyalo yokubuza isimo sokuxhumaniseka kwenethiwekhi futhi uvule/ukhubaze ukuxhumana.
  • Radio ihlanganisa imiyalo yokubuza isimo sokuxhunywa kwenethiwekhi ye-WiFi futhi uvule/ukhubaze ukuxhumana.
  • Gada ihlanganisa imiyalo yokuqapha umsebenzi we-NetworkManager kanye nokubheka izinguquko esimweni sokuxhumaniseka kwenethiwekhi.
  • Connection kufaka phakathi imiyalo yokuphatha ukuxhumana kwenethiwekhi, ukwengeza ukuxhumana okusha nokususa okukhona.
  • Idivayisi esetshenziswa kakhulu ukushintsha amapharamitha ahlobene nedivayisi (njengegama lesixhumi esibonakalayo) noma ukuxhuma amadivaysi kusetshenziswa uxhumano olukhona.
  • secret ibhalisa i-nmcli njenge-NetworkManager "i-ejenti eyimfihlo" elalela imilayezo eyimfihlo. Lesi sigaba asivamile ukusetshenziswa, ngoba i-nmcli isebenza ngale ndlela ngokuzenzakalelayo lapho ixhuma kumanethiwekhi.

Izibonelo ezilula

Ngaphambi kokuthi uqale, qiniseka ukuthi i-NetworkManager iyasebenza futhi i-nmcli ingaxhumana nayo:

$ nmcli general
STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled

Umsebenzi uvamise ukuqala ngokubuka wonke amaphrofayili okuxhumana kwenethiwekhi:

$ nmcli connection show
NAME                UUID                                  TYPE      DEVICE
Wired connection 1  ac3241e4-b424-35d6-aaa7-07498561688d  ethernet  enp0s3
Wired connection 2  2279d917-fa02-390c-8603-3083ec5a1d3e  ethernet  enp0s8
Wired connection 3  52d89737-de92-35ec-b082-8cf2e5ac36e6  ethernet  enp0s9

Lo myalo uyasetshenziswa isenzo bonisa engxenyeni ethi Ukuxhumana.

Umshini wokuhlola usebenzisa Ubuntu 20.04. Kulokhu, sithole ukuxhumana okunezintambo ezintathu: enp0s3, enp0s8, kanye ne-enp0s9.

Phatha ukuxhumana

Kubalulekile ukuqonda ukuthi ku-nmcli, ngegama elithi Connection sisho ibhizinisi eliqukethe lonke ulwazi mayelana noxhumo. Ngamanye amazwi, lokhu ukucushwa kwenethiwekhi. Uxhumano luhlanganisa lonke ulwazi oluhlobene nokuxhumeka, okuhlanganisa isendlalelo sesixhumanisi nolwazi lwamakheli e-IP. Lezi yi-Layer 2 kanye ne-Layer 3 kumodeli yenethiwekhi ye-OSI.

Uma usetha inethiwekhi ku-Linux, uvamise ukusetha uxhumo oluzogcina luboshelwe kumadivayisi enethiwekhi, nawo abe yizindawo zokusebenzelana zenethiwekhi ezifakwe kukhompuyutha. Uma idivayisi isebenzisa uxhumano, ibhekwa njengesebenzayo noma iphakanyisiwe. Uma uxhumano lungasebenzi, alusebenzi noma lusethwa kabusha.

Ingeza ukuxhumana kwenethiwekhi

Insiza ye-ncmli ikuvumela ukuthi wengeze ngokushesha futhi ulungise ngokushesha ukuxhumana. Isibonelo, ukwengeza uxhumano Lwezintambo 2 (nge-enp0s8), udinga ukusebenzisa umyalo olandelayo njengomsebenzisi omkhulu:

$ sudo nmcli connection add type ethernet ifname enp0s8
Connection 'ethernet-enp0s8' (09d26960-25a0-440f-8b20-c684d7adc2f5) successfully added.

Kulolu hlobo lwenketho sibonisa ukuthi lokhu kuzoba ukuxhumana kwe-Ethernet, futhi kunketho ye-ifname (igama lesixhumi esibonakalayo) sibonisa isixhumi esibonakalayo senethiwekhi esifuna ukusisebenzisa.

Nakhu okuzokwenzeka ngemva kokwenza umyalo:

$ nmcli connection show
NAME                UUID                                  TYPE      DEVICE
Wired connection 1  ac3241e4-b424-35d6-aaa7-07498561688d  ethernet  enp0s3
Wired connection 2  2279d917-fa02-390c-8603-3083ec5a1d3e  ethernet  enp0s8
Wired connection 3  52d89737-de92-35ec-b082-8cf2e5ac36e6  ethernet  enp0s9
ethernet-enp0s8     09d26960-25a0-440f-8b20-c684d7adc2f5  ethernet  --  

Uxhumo olusha lwenziwe, i-ethernet-enp0s8. Yabelwe i-UUID futhi uhlobo lokuxhuma kwakuyi-Ethernet. Masiyiphakamise sisebenzisa i-up command:

$ nmcli connection up ethernet-enp0s8
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)

Ake sihlole uhlu loxhumo olusebenzayo futhi:

$ nmcli connection show --active
NAME                UUID                                  TYPE      DEVICE
Wired connection 1  ac3241e4-b424-35d6-aaa7-07498561688d  ethernet  enp0s3
ethernet-enp0s8     09d26960-25a0-440f-8b20-c684d7adc2f5  ethernet  enp0s8
Wired connection 3  52d89737-de92-35ec-b082-8cf2e5ac36e6  ethernet  enp0s9

Uxhumo olusha lwe-ethernet-enp0s8 lwengeziwe, luyasebenza futhi lisebenzisa isixhumi esibonakalayo senethiwekhi ye-enp0s8.

Isetha ukuxhumana

Insiza ye-ncmli ikuvumela ukuthi uguqule kalula imingcele yokuxhuma okukhona. Isibonelo, udinga ukushintsha ikheli lakho le-IP eliguqukayo (DHCP) libe ikheli le-IP elimile.

Ake sithi sidinga ukusetha ikheli le-IP ku-192.168.4.26. Ukwenza lokhu sisebenzisa imiyalo emibili. Eyokuqala izosetha ngokuqondile ikheli lasesizindeni se-inthanethi, futhi eyesibili izoshintsha indlela yokusetha ikheli le-IP ibe mathupha:

$ nmcli connection modify ethernet-enp0s8 ipv4.address 192.168.4.26/24
$ nmcli connection modify ethernet-enp0s8 ipv4.method manual

Ungakhohlwa futhi ukusetha imaski ye-subnet. Ngokuxhumeka kwethu kokuhlola lokhu kungu-255.255.255.0, noma nge /24 yomzila ongenaklasi (CIDR).

Ukuze izinguquko zisebenze, udinga ukuvala bese wenza kusebenze uxhumano:

$ nmcli connection down ethernet-enp0s8
Connection 'ethernet-enp0s8' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
$ nmcli connection up ethernet-enp0s8
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveC

Uma, ngokuphambene nalokho, udinga ukufaka i-DHCP, sebenzisa i-auto esikhundleni semanuwali:

$ nmcli connection modify ethernet-enp0s8 ipv4.method auto

Ukusebenza ngamadivayisi

Kulokhu sisebenzisa isigaba Sedivayisi.

Ihlola isimo sedivayisi

$ nmcli device status
DEVICE  TYPE      STATE      CONNECTION        
enp0s3  ethernet  connected  Wired connection 1
enp0s8  ethernet  connected  ethernet-enp0s8    
enp0s9  ethernet  connected  Wired connection 3
lo      loopback  unmanaged  --  

Icela ulwazi lwedivayisi

Ukuze wenze lokhu, sebenzisa isenzo sombukiso esivela esigabeni Sedivayisi (kufanele ucacise igama ledivayisi). Uhlelo lubonisa ulwazi oluningi, ngokuvamile emakhasini amaningana.
Ake sibheke isixhumi esibonakalayo se-enp0s8 esisetshenziswa uxhumo lwethu olusha. Masiqinisekise ukuthi isebenzisa ngqo ikheli lasesizindeni se-inthanethi esilimise ngaphambilini:

$ nmcli device show enp0s8
GENERAL.DEVICE:                         enp0s8
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         08:00:27:81:16:20
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     ethernet-enp0s8
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/6
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         192.168.4.26/24
IP4.GATEWAY:                            --
IP4.ROUTE[1]:                           dst = 192.168.4.0/24, nh = 0.0.0.0, mt = 103
IP6.ADDRESS[1]:                         fe80::6d70:90de:cb83:4491/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 103
IP6.ROUTE[2]:                           dst = ff00::/8, nh = ::, mt = 256, table=255

Kunolwazi oluningi impela. Ake sigqamise into esemqoka:

  • Igama lenethiwekhi: enp0s8.
  • Uhlobo lokuxhuma: uxhumano lwe-Ethernet olunentambo.
  • Sibona ikheli le-MAC ledivayisi.
  • Iyunithi yokudlulisela ephezulu (MTU) icacisiwe β€” usayizi omkhulu webhulokhi yedatha ewusizo yephakethe elilodwa elingadluliswa ngephrothokholi ngaphandle kokuhlukana.
  • Idivayisi ixhunyiwe njengamanje.
  • Igama lokuxhumaiyiphi idivayisi esetshenziswayo: ethernet-enp0s8.
  • Idivayisi isebenzisa i- Ikheli le-IP, esiyifake ngaphambili: 192.168.4.26/24.

Olunye ulwazi luhlobene namapharamitha omzila ozenzakalelayo kanye nesango lokuxhuma. Zincike kunethiwekhi ethile.

Umhleli we-nmcli osebenzayo

I-nmcli iphinde ibe nesihleli esisebenzisanayo esilula, esingaba lula kwabanye ukusebenza ngaso. Ukuze uyiqalise kuxhumo lwe-ethernet-enp0s8 njengesibonelo, sebenzisa isenzo hlela:

$ nmcli connection edit ethernet-enp0s8

Iphinde ibe nosizo oluncane, okuthi, nokho, incane ngosayizi kunenguqulo ye-console:

===| nmcli interactive connection editor |===
Editing existing '802-3-ethernet' connection: 'ethernet-enp0s8'
Type 'help' or '?' for available commands.
Type 'print' to show all the connection properties.
Type 'describe [<setting>.<prop>]' for detailed property description.
You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, sriov, ethtool, match, ipv4, ipv6, tc, proxy
nmcli>

Uma uthayipha umyalo wokuphrinta bese ucindezela u-Enter, i-nmcli izobonisa zonke izici zokuxhuma:

===============================================================================
                 Connection profile details (ethernet-enp0s8)
===============================================================================
connection.id:                          ethernet-enp0s8
connection.uuid:                        09d26960-25a0-440f-8b20-c684d7adc2f5
connection.stable-id:                   --
connection.type:                        802-3-ethernet
connection.interface-name:              enp0s8
connection.autoconnect:                 yes
connection.autoconnect-priority:        0
connection.autoconnect-retries:         -1 (default)
connection.multi-connect:               0 (default)
connection.auth-retries:                -1
connection.timestamp:                   1593967212
connection.read-only:                   no
connection.permissions:                 --
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:                 --

Isibonelo, ukusetha uxhumano ku-DHCP, thayipha i-goto ipv4 bese uchofoza Faka:

nmcli> goto ipv4
You may edit the following properties: method, dns, dns-search, 
dns-options, dns-priority, addresses, gateway, routes, route-metric, 
route-table, routing-rules, ignore-auto-routes, ignore-auto-dns, 
dhcp-client-id, dhcp-iaid, dhcp-timeout, dhcp-send-hostname, 
dhcp-hostname, dhcp-fqdn, dhcp-hostname-flags, never-default, may-fail, 
dad-timeout
nmcli ipv4>

Bese ubhala indlela yokusetha ngokuzenzakalelayo bese uchofoza Faka:

nmcli ipv4> set method auto
Do you also want to clear 'ipv4.addresses'? [yes]:

Uma ufuna ukusula ikheli le-IP elimile, chofoza Faka. Uma kungenjalo, thayipha cha bese ucindezela u-Enter. Ungayilondoloza uma ucabanga ukuthi uzoyidinga esikhathini esizayo. Kodwa ngisho nekheli le-IP elimile elilondoloziwe, i-DHCP izosetshenziswa uma indlela isethelwe ku-auto.

Sebenzisa umyalo wokulondoloza ukuze ulondoloze izinguquko zakho:

nmcli ipv4> save
Connection 'ethernet-enp0s8' (09d26960-25a0-440f-8b20-c684d7adc2f5) successfully updated.
nmcli ipv4>

Thayipha ukuyeka ukuze uphume ku-nmcli Interactive Editor. Uma ushintsha umqondo wakho mayelana nokushiya, sebenzisa umyalo wangemuva.

Futhi akugcini lapho

Vula i-nmcli Interactive Editor futhi ubone ukuthi zingaki izilungiselelo ezikhona nokuthi zingaki izakhiwo isilungiselelo ngasinye. Isihleli esisebenzisanayo siyithuluzi elihle, kepha uma ufuna ukusebenzisa i-nmcli kumalayini owodwa noma emibhalweni, uzodinga inguqulo yomugqa womyalo ojwayelekile.

Manje njengoba usunezisekelo, hlola ikhasi lomuntu nmcli ukuze ubone ukuthi ingakusiza kanjani.

Emalungelo Wokukhangisa

Amaseva ama-Epic Ingabe amaseva abonakalayo ku-Windows noma i-Linux enamaphrosesa omndeni we-AMD EPYC anamandla namadrayivu e-Intel NVMe ashesha kakhulu. Shesha uku-oda!

Ukuphatha ukuxhumana kwenethiwekhi ku-Linux usebenzisa insiza ye-nmcli console

Source: www.habr.com

Engeza amazwana