Ngatur sambungan jaringan dina Linux nganggo utilitas konsol nmcli

Ngamangpaatkeun pinuh ku NetworkManager alat manajemén jaringan dina garis paréntah Linux Ubuntu ngagunakeun utiliti nmcli.

Ngatur sambungan jaringan dina Linux nganggo utilitas konsol nmcli

Utiliti nmcli langsung nelepon API pikeun ngakses fungsi NetworkManager.

Éta muncul dina 2010 sareng pikeun seueur parantos janten jalan alternatif pikeun ngonpigurasikeun antarmuka sareng sambungan jaringan. Sanajan sababaraha urang masih ngagunakeun ifconfig. Kusabab nmcli mangrupikeun alat antarmuka garis paréntah (CLI) anu dirancang pikeun dianggo dina windows terminal sareng skrip, éta idéal pikeun pangurus sistem anu damel tanpa GUI.

sintaksis paréntah ncmli

Sacara umum, sintaksis sapertos kieu:

$ nmcli <options> <section> <action>

  • Pilihan nyaéta parameter anu nangtukeun subtleties operasi nmcli,
  • bagian (bagian) - nangtoskeun fitur naon tina utilitas anu dianggo,
  • action - ngidinan Anjeun pikeun nangtukeun naon sabenerna kudu dipigawé.

Jumlahna aya 8 bagian, masing-masing dikaitkeun sareng sakumpulan paréntah (aksi) anu tangtu.

  • Tulung nyadiakeun pitulung ngeunaan paréntah ncmcli sarta pamakéan maranéhna.
  • umum mulihkeun status NetworkManager sareng konfigurasi global.
  • jaringan kalebet paréntah pikeun naroskeun status sambungan jaringan sareng ngaktifkeun / nganonaktipkeun sambungan.
  • radio kalebet paréntah pikeun naroskeun status sambungan jaringan WiFi sareng aktipkeun / nganonaktipkeun sambungan.
  • Monitor ngawengku paréntah pikeun ngawas aktivitas NetworkManager sarta observasi parobahan dina kaayaan sambungan jaringan.
  • hubungan ngawengku paréntah pikeun ngatur interfaces jaringan, nambahkeun sambungan anyar jeung mupus nu geus aya.
  • pakakas utamana dipaké pikeun ngarobah parameter patali alat (saperti ngaran panganteur) atawa pikeun nyambungkeun alat maké sambungan nu geus aya.
  • rasiah ngadaptar nmcli salaku NetworkManager "agén rusiah" anu ngadangukeun pesen rusiah. Bagian ieu jarang dianggo, sabab nmcli jalanna ku cara ieu sacara standar nalika nyambung ka jaringan.

conto basajan

Sateuacan anjeun ngamimitian, pastikeun NetworkManager dijalankeun sareng nmcli tiasa komunikasi sareng éta:

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

Karya sering dimimitian ku ningali sadaya profil sambungan jaringan:

$ 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

paréntah ieu ngagunakeun epek némbongkeun pikeun bagian Connection.

Mesin uji ngajalankeun Ubuntu 20.04. Dina hal ieu, kami mendakan tilu sambungan kabel: enp0s3, enp0s8, sareng enp0s9.

Atur sambungan

Penting pikeun ngarti yén dina nmcli, ku istilah Connection kami hartosna éntitas anu ngandung sadaya inpormasi ngeunaan sambungan éta. Dina basa sejen, ieu téh konfigurasi jaringan. Sambungan encapsulates sadaya inpormasi anu aya hubunganana, kalebet lapisan tautan sareng inpormasi alamat IP. Ieu Lapisan 2 sareng Lapisan 3 dina modél jaringan OSI.

Nalika anjeun nyetél jaringan dina Linux, anjeun biasana nyetél sambungan anu bakal dihijikeun ka alat jaringan, anu saterasna mangrupikeun antarmuka jaringan anu dipasang dina komputer. Lamun hiji alat keur make sambungan, alat eta dianggap aktip atawa elevated. Upami sambungan henteu dianggo, éta henteu aktip atanapi ngareset.

Nambahkeun sambungan jaringan

Utilitas ncmli ngamungkinkeun anjeun pikeun nambihan gancang sareng langsung ngonpigurasikeun sambungan. Salaku conto, pikeun nambihan sambungan kabel 2 (kalayan enp0s8), anjeun kedah ngajalankeun paréntah di handap ieu salaku superuser:

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

Dina pilihan tipe kami nunjukkeun yén ieu bakal sambungan Ethernet, sarta dina ifname (ngaran panganteur) pilihan urang nunjukkeun panganteur jaringan nu urang hoyong pake.

Ieu naon anu bakal kajadian saatos ngajalankeun paréntah:

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

Hiji sambungan anyar geus dijieun, ethernet-enp0s8. Ieu ditugaskeun UUID sarta jenis sambungan éta Ethernet. Hayu urang ngangkatna nganggo paréntah up:

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

Hayu urang pariksa deui daptar sambungan aktip:

$ 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

A sambungan anyar ethernet-enp0s8 geus ditambahkeun, éta aktip tur ngagunakeun panganteur jaringan enp0s8.

Nyetél sambungan

Utilitas ncmli ngamungkinkeun anjeun gampang ngarobih parameter sambungan anu tos aya. Salaku conto, anjeun kedah ngarobih alamat IP dinamis (DHCP) anjeun ka alamat IP statik.

Anggap urang kedah nyetél alamat IP ka 192.168.4.26. Jang ngalampahkeun ieu kami nganggo dua paréntah. Anu kahiji bakal langsung nyetél alamat IP, sareng anu kadua bakal ngalihkeun metode pangaturan alamat IP ka manual:

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

Tong hilap ogé nyetél subnet mask. Pikeun sambungan test kami ieu 255.255.255.0, atawa kalayan /24 pikeun classless routing (CIDR).

Pikeun parobihan tiasa dianggo, anjeun kedah nganonaktipkeun teras ngaktipkeun deui sambunganna:

$ 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

Upami, sabalikna, anjeun kedah masang DHCP, nganggo otomatis tibatan manual:

$ nmcli connection modify ethernet-enp0s8 ipv4.method auto

Gawe sareng alat

Pikeun ieu kami nganggo bagian Alat.

Mariksa status alat

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

Nyuhunkeun inpormasi alat

Jang ngalampahkeun ieu, make aksi acara ti bagian Alat (anjeun kudu nangtukeun ngaran alat). Utiliti nampilkeun seueur inpormasi, sering dina sababaraha halaman.
Hayu urang tingali antarmuka enp0s8 anu dianggo ku sambungan anyar urang. Hayu urang pastikeun yén éta ngagunakeun persis alamat IP anu urang setel saméméhna:

$ 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

Aya cukup loba informasi. Hayu urang nyorot hal utama:

  • Ngaran panganteur jaringan: enp0s8.
  • Jenis sambungan: sambungan Ethernet kabel.
  • Kami ningali alamat MAC alat.
  • Unit transmisi maksimum (MTU) dieusian - ukuran maksimum blok data mangpaat tina hiji pakét anu bisa dikirimkeun ku protokol tanpa fragméntasi.
  • pakakas ayeuna disambungkeun.
  • Ngaran sambunganalat nu ngagunakeun: ethernet-enp0s8.
  • Alatna nganggo Alamat IP, nu urang dipasang saméméhna: 192.168.4.26/24.

Inpo sejenna pakait jeung routing standar sarta parameter gateway sambungan. Aranjeunna gumantung kana jaringan husus.

Editor nmcli interaktif

nmcli ogé ngabogaan editor interaktif basajan, nu bisa jadi leuwih nyaman keur sababaraha karya. Pikeun ngajalankeun eta dina sambungan ethernet-enp0s8 contona, make epek édit:

$ nmcli connection edit ethernet-enp0s8

Éta ogé ngagaduhan bantosan anu alit, tapi ukuranana langkung alit tibatan versi konsol:

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

Upami anjeun ngetik paréntah cetak sareng pencét Enter, nmcli bakal ningalikeun sadaya sipat sambungan:

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

Contona, pikeun nyetél sambungan kana DHCP, ngetik goto ipv4 teras klik asup:

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>

Teras tulis set metode otomatis teras klik asup:

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

Upami anjeun hoyong mupus alamat IP statik, klik asup. Upami teu kitu, ngetik no terus pencét Lebetkeun. Anjeun tiasa ngahemat upami anjeun pikir anjeun peryogina di hareup. Tapi sanajan alamat IP statik disimpen, DHCP bakal dipaké lamun metoda disetel ka otomatis.

Anggo paréntah simpen pikeun nyimpen parobihan anjeun:

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

Ketik kaluar pikeun kaluar tina Editor Interaktif nmcli. Lamun robah pikiran anjeun ngeunaan miang, make paréntah balik.

Sareng éta sanés sadayana

Buka Editor Interaktif nmcli sareng tingali sabaraha setélan anu aya sareng sabaraha sipat anu masing-masing gaduh. Éditor interaktif mangrupikeun alat anu saé, tapi upami anjeun hoyong nganggo nmcli dina hiji garis atanapi skrip, anjeun peryogi versi garis paréntah biasa.

Ayeuna nu boga dasar, pariksa kaluar kaca lalaki nmcli pikeun ningali kumaha deui éta tiasa ngabantosan anjeun.

salaku iklan

server epik - eta server virtual dina Windows atanapi Linux kalayan prosesor kulawarga AMD EPYC anu kuat sareng drive Intel NVMe anu gancang pisan. Buru-buru mesen!

Ngatur sambungan jaringan dina Linux nganggo utilitas konsol nmcli

sumber: www.habr.com

Tambahkeun komentar