Pagdumala sa mga koneksyon sa network sa Linux gamit ang nmcli console utility

Pahimusli sa hingpit ang NetworkManager network management tool sa Linux command line gamit ang nmcli utility.

Pagdumala sa mga koneksyon sa network sa Linux gamit ang nmcli console utility

Gamit nmcli direkta nga nagtawag sa API aron ma-access ang mga function sa NetworkManager.

Kini nagpakita sa 2010 ug alang sa kadaghanan nahimong usa ka alternatibo nga paagi sa pag-configure sa mga interface sa network ug mga koneksyon. Bisan tuod ang ubang mga tawo naggamit gihapon ifconfig. Tungod kay ang nmcli usa ka tool sa command line interface (CLI) nga gidisenyo para gamiton sa terminal windows ug mga script, kini maayo alang sa mga administrador sa sistema nga nagtrabaho nga walay GUI.

ncmli command syntax

Sa kinatibuk-an, ang syntax ingon niini:

$ nmcli <options> <section> <action>

  • Ang mga kapilian mao ang mga parameter nga nagtino sa mga subtleties sa operasyon sa nmcli,
  • seksyon (seksyon) - nagtino kung unsang mga bahin sa utility ang gamiton,
  • aksyon - nagtugot kanimo sa pagtino kung unsa gyud ang kinahanglan buhaton.

Adunay 8 nga mga seksyon sa kinatibuk-an, ang matag usa adunay kalabotan sa usa ka piho nga hugpong sa mga mando (mga aksyon):

  • Tabangi naghatag og tabang mahitungod sa ncmcli nga mga sugo ug sa ilang paggamit.
  • Kinatibuk-ang mibalik sa NetworkManager status ug global configuration.
  • networking naglakip sa mga sugo sa pagpangutana sa kahimtang sa koneksyon sa network ug pagpagana/pag-disable sa mga koneksyon.
  • radyo naglakip sa mga sugo sa pagpangutana sa WiFi network connection status ug pagpagana/pag-disable sa mga koneksyon.
  • monitor naglakip sa mga sugo alang sa pagmonitor sa kalihokan sa NetworkManager ug pag-obserbar sa mga kausaban sa kahimtang sa mga koneksyon sa network.
  • Koneksyon naglakip sa mga sugo alang sa pagdumala sa mga interface sa network, pagdugang og bag-ong mga koneksyon ug pagtangtang sa mga anaa na.
  • device kasagarang gigamit sa pag-usab sa mga parameter nga may kalabutan sa device (sama sa interface name) o sa pagkonektar sa mga device gamit ang kasamtangan nga koneksyon.
  • Sekreto nagrehistro sa nmcli isip NetworkManager nga "sekreto nga ahente" nga naminaw sa mga sekretong mensahe. Kini nga seksyon panagsa ra nga gigamit, tungod kay ang nmcli nagtrabaho niini nga paagi pinaagi sa default kung magkonektar sa mga network.

Yano nga mga pananglitan

Sa dili ka pa magsugod, siguroha nga ang NetworkManager nagdagan ug ang nmcli makakomunikar niini:

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

Kanunay nga magsugod ang trabaho pinaagi sa pagtan-aw sa tanan nga mga profile sa koneksyon sa network:

$ 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

Kini nga sugo naggamit aksyon ipakita alang sa seksyon sa Koneksyon.

Ang makina sa pagsulay nagpadagan sa Ubuntu 20.04. Niini nga kaso, nakit-an namo ang tulo ka wired nga koneksyon: enp0s3, enp0s8, ug enp0s9.

Pagdumala sa mga koneksyon

Mahinungdanon nga masabtan nga sa nmcli, pinaagi sa termino nga Koneksyon gipasabut namon ang usa ka entidad nga adunay tanan nga kasayuran bahin sa koneksyon. Sa laing pagkasulti, kini ang configuration sa network. Ang koneksyon naglangkob sa tanang impormasyon nga may kalabutan sa koneksyon, lakip ang link layer ug impormasyon sa IP addressing. Kini ang Layer 2 ug Layer 3 sa OSI networking model.

Kung nag-set up ka og network sa Linux, kasagaran nag-set up ka og mga koneksyon nga matapos nga mahigot sa mga network device, nga sa baylo mao ang mga interface sa network nga na-install sa computer. Kung ang usa ka aparato naggamit usa ka koneksyon, kini giisip nga aktibo o taas. Kung ang usa ka koneksyon wala gigamit, kini dili aktibo o gi-reset.

Pagdugang mga koneksyon sa network

Ang utility sa ncmli nagtugot kanimo sa dali nga pagdugang ug pag-configure dayon sa mga koneksyon. Pananglitan, aron idugang ang Wired connection 2 (uban ang enp0s8), kinahanglan nimo nga ipadagan ang mosunud nga mando ingon superuser:

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

Sa kapilian nga tipo gipakita namon nga kini usa ka koneksyon sa Ethernet, ug sa kapilian nga ifname (pangalan sa interface) gipakita namon ang interface sa network nga gusto namon gamiton.

Mao kini ang mahitabo human sa pagpadagan sa sugo:

$ 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  --  

Usa ka bag-ong koneksyon ang nahimo, ethernet-enp0s8. Gi-assign kini og UUID ug ang tipo sa koneksyon mao ang Ethernet. Atong ipataas kini gamit ang up command:

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

Atong susihon pag-usab ang listahan sa mga aktibong koneksyon:

$ 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

Usa ka bag-ong koneksyon nga ethernet-enp0s8 ang gidugang, kini aktibo ug naggamit sa enp0s8 network interface.

Pag-set up sa mga koneksyon

Gitugotan ka sa utility nga ncmli nga dali nimo mabag-o ang mga parameter sa naa na nga mga koneksyon. Pananglitan, kinahanglan nimong usbon ang imong dynamic (DHCP) IP address ngadto sa static IP address.

Ingnon ta nga kinahanglan natong ibutang ang IP address sa 192.168.4.26. Sa pagbuhat niini kita sa paggamit sa duha ka mga sugo. Ang una direktang magtakda sa IP address, ug ang ikaduha mobalhin sa IP address setting nga pamaagi ngadto sa manwal:

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

Ayaw kalimti nga ibutang usab ang subnet mask. Alang sa among pagsulay nga koneksyon kini mao ang 255.255.255.0, o uban sa /24 alang sa walay klase nga ruta (CIDR).

Aron ma-epekto ang mga pagbag-o, kinahanglan nimo nga i-deactivate ug dayon i-reactivate ang koneksyon:

$ 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

Kung, sa sukwahi, kinahanglan nimo nga i-install ang DHCP, gamita ang awto imbis nga manwal:

$ nmcli connection modify ethernet-enp0s8 ipv4.method auto

Pagtrabaho uban sa mga himan

Alang niini among gigamit ang seksyon sa Device.

Pagsusi sa kahimtang sa device

$ 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  --  

Paghangyo sa impormasyon sa device

Aron mahimo kini, gamita ang pasundayag nga aksyon gikan sa seksyon sa Device (kinahanglan nimo ipiho ang ngalan sa aparato). Ang utility nagpakita sa daghang impormasyon, kasagaran sa daghang mga panid.
Atong tan-awon ang enp0s8 interface nga gigamit sa atong bag-ong koneksyon. Atong siguroon nga kini naggamit sa tukma nga IP address nga atong gitakda sa sayo pa:

$ 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

Adunay daghang impormasyon. Atong i-highlight ang nag-unang butang:

  • Ngalan sa interface sa network: enp0s8.
  • Uri sa koneksyon: koneksyon sa wired nga Ethernet.
  • Nakita namon ang MAC address sa aparato.
  • Gitakda ang maximum transmission unit (MTU). β€” ang labing kataas nga gidak-on sa usa ka mapuslanon nga bloke sa datos sa usa ka pakete nga mahimong ipadala sa protocol nga wala’y pagkabahinbahin.
  • Gunitanan konektado karon.
  • Ngalan sa koneksyonunsa nga device ang naggamit: ethernet-enp0s8.
  • Gigamit sa aparato ang IP address, nga among gi-install sa sayo pa: 192.168.4.26/24.

Ang ubang impormasyon may kalabotan sa default routing ug koneksyon gateway parameters. Nagdepende sila sa piho nga network.

Interactive nga editor sa nmcli

Ang nmcli usab adunay usa ka yano nga interactive nga editor, nga mahimong mas komportable alang sa uban nga magtrabaho. Sa pagdagan niini sa usa ka koneksyon sa ethernet-enp0s8 pananglitan, gamita aksyon edit:

$ nmcli connection edit ethernet-enp0s8

Adunay usab kini gamay nga tabang, nga, bisan pa, mas gamay sa gidak-on kaysa sa bersyon sa 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>

Kung imong i-type ang print command ug pindota ang Enter, ipakita sa nmcli ang tanan nga mga kabtangan sa koneksyon:

===============================================================================
                 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:                 --

Pananglitan, aron mabutang ang koneksyon sa DHCP, i-type ang goto ipv4 ug i-klik Pagsulod:

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>

Dayon isulat ang set method auto ug i-klik Pagsulod:

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

Kung gusto nimong limpyohan ang static nga IP address, i-klik Pagsulod. Kung dili, i-type ang dili ug pindota ang Enter. Mahimo nimong tipigan kini kung sa imong hunahuna kinahanglan nimo kini sa umaabot. Apan bisan sa usa ka gitipigan nga static nga IP address, ang DHCP magamit kung ang pamaagi gitakda sa awto.

Gamita ang save command aron i-save ang imong mga kausaban:

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

I-type ang quit aron mogawas sa nmcli Interactive Editor. Kung usbon nimo ang imong hunahuna bahin sa pagbiya, gamita ang back command.

Ug dili lang kana

Ablihi ang nmcli Interactive Editor ug tan-awa kung pila ang mga setting ug kung pila ang mga kabtangan sa matag setting. Ang interactive nga editor usa ka maayo nga himan, apan kung gusto nimo gamiton ang nmcli sa usa ka linya o mga script, kinahanglan nimo ang regular nga bersyon sa command-line.

Karon nga ikaw adunay mga sukaranan, susiha panid sa tawo nmcli aron makita kung giunsa pa kini makatabang kanimo.

Diha sa Mga Katungod sa Pagdukiduki

Epiko nga mga server Mao ba virtual nga mga server sa Windows o Linux nga adunay gamhanan nga AMD EPYC nga mga processor sa pamilya ug paspas kaayo nga Intel NVMe drive. Pagdali sa pag-order!

Pagdumala sa mga koneksyon sa network sa Linux gamit ang nmcli console utility

Source: www.habr.com

Idugang sa usa ka comment