nmcli ڪنسول يوٽيليٽي استعمال ڪندي لينڪس ۾ نيٽ ورڪ ڪنيڪشن کي منظم ڪرڻ

nmcli يوٽيلٽي استعمال ڪندي لينڪس ڪمانڊ لائن تي نيٽ ورڪ مئنيجر نيٽ ورڪ مينيجمينٽ ٽول جو پورو فائدو وٺو.

nmcli ڪنسول يوٽيليٽي استعمال ڪندي لينڪس ۾ نيٽ ورڪ ڪنيڪشن کي منظم ڪرڻ

افاديت ايم نيٽ ورڪ مئنيجر جي ڪمن تائين رسائي حاصل ڪرڻ لاءِ سڌو API کي سڏي ٿو.

اهو 2010 ۾ ظاهر ٿيو ۽ ڪيترن ئي لاء نيٽ ورڪ انٽرفيس ۽ ڪنيڪشن کي ترتيب ڏيڻ لاء هڪ متبادل طريقو بڻجي چڪو آهي. جيتوڻيڪ ڪجهه ماڻهو اڃا تائين استعمال ڪن ٿا اسپيفگ. ڇاڪاڻ ته nmcli هڪ ڪمانڊ لائن انٽرفيس (CLI) اوزار آهي جيڪو ٽرمينل ونڊوز ۽ اسڪرپٽس ۾ استعمال لاءِ ٺهيل آهي، اهو سسٽم منتظمين لاءِ مثالي آهي جيڪي GUI کان سواءِ ڪم ڪري رهيا آهن.

ncmli حڪم نحو

عام طور تي، نحو هن طرح ڏسڻ ۾ اچي ٿو:

$ nmcli <options> <section> <action>

  • اختيارن جا پيرا ميٽر آھن جيڪي nmcli آپريشن جي ذخيري کي طئي ڪندا آھن،
  • سيڪشن (سيڪشن) - اهو طئي ڪري ٿو ته ڪهڙيون خاصيتون استعمال ڪرڻ لاءِ يوٽيلٽي،
  • عمل - توهان کي وضاحت ڪرڻ جي اجازت ڏئي ٿي ته اصل ۾ ڇا ڪرڻ جي ضرورت آهي.

مجموعي طور تي 8 حصا آهن، جن مان هر هڪ مخصوص حڪمن (عملن) سان لاڳاپيل آهي:

  • مدد ncmcli حڪمن ۽ انهن جي استعمال بابت مدد فراهم ڪري ٿي.
  • جنرل نيٽ ورڪ مئنيجر جي حيثيت ۽ عالمي ترتيب ڏي ٿو.
  • نيٽ ورڪنگ نيٽ ورڪ ڪنيڪشن اسٽيٽس جي پڇا ڳاڇا ڪرڻ ۽ ڪنيڪشن کي فعال/بند ڪرڻ جا حڪم شامل آهن.
  • ريڊيو وائي فائي نيٽ ورڪ ڪنيڪشن اسٽيٽس جي پڇا ڳاڇا ڪرڻ ۽ ڪنيڪشن کي فعال/بند ڪرڻ جا حڪم شامل آهن.
  • جي نگراني نيٽ ورڪ مئنيجر جي سرگرمي جي نگراني ۽ نيٽ ورڪ ڪنيڪشن جي حالت ۾ تبديلين کي ڏسڻ لاءِ حڪم شامل آهن.
  • ڪنيڪشن نيٽ ورڪ انٽرفيس کي منظم ڪرڻ، نوان ڪنيڪشن شامل ڪرڻ ۽ موجوده کي حذف ڪرڻ لاءِ حڪم شامل آهن.
  • ڊيوائس خاص طور تي ڊوائيس سان لاڳاپيل پيٽرولن کي تبديل ڪرڻ لاء استعمال ڪيو ويندو آهي (جهڙوڪ انٽرفيس جو نالو) يا موجوده ڪنيڪشن استعمال ڪندي ڊوائيسز کي ڳنڍڻ لاء.
  • خفيه nmcli کي هڪ نيٽ ورڪ مئنيجر ”خفيه ايجنٽ“ طور رجسٽر ڪري ٿو جيڪو ڳجهن پيغامن کي ٻڌندو آهي. ھي سيڪشن گھٽ ۾ گھٽ استعمال ڪيو ويندو آھي، ڇاڪاڻ⁠تہ nmcli ھن طريقي سان ڪم ڪندو آھي ڊفالٽ طور جڏھن نيٽ ورڪن سان ڳنڍجي.

سادو مثال

شروع ڪرڻ کان اڳ، پڪ ڪريو ته نيٽورڪ مئنيجر هلي رهيو آهي ۽ nmcli ان سان رابطو ڪري سگهي ٿو:

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

ڪم اڪثر ڪري سڀني نيٽ ورڪ ڪنيڪشن پروفائلز کي ڏسڻ سان شروع ٿئي ٿو:

$ 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

هي حڪم استعمال ڪري ٿو عمل ڏيکاريو ڪنيڪشن سيڪشن لاءِ.

ٽيسٽ مشين هلائي رهي آهي Ubuntu 20.04. هن حالت ۾، اسان ٽي وائرڊ ڪنيڪشن مليا: enp0s3، enp0s8، ۽ enp0s9.

ڪنيڪشن جو انتظام ڪريو

اهو سمجهڻ ضروري آهي ته nmcli ۾، Connection جي اصطلاح مان اسان جو مطلب هڪ ادارو آهي جنهن ۾ ڪنيڪشن بابت سموري معلومات شامل آهي. ٻين لفظن ۾، هي نيٽ ورڪ جي جوڙجڪ آهي. ڪنيڪشن سڀني ڪنيڪشن سان لاڳاپيل معلومات کي گڏ ڪري ٿو، بشمول لنڪ پرت ۽ IP پتي جي معلومات. اهي او ايس آئي نيٽ ورڪنگ ماڊل ۾ پرت 2 ۽ پرت 3 آهن.

جڏهن توهان لينڪس ۾ هڪ نيٽ ورڪ قائم ڪيو ٿا، توهان عام طور تي ڪنيڪشن قائم ڪري رهيا آهيو جيڪي نيٽ ورڪ ڊوائيسز سان ڳنڍيل هوندا، جنهن جي نتيجي ۾ ڪمپيوٽر تي نيٽ ورڪ انٽرنيٽ نصب ٿيل آهن. جڏهن هڪ ڊوائيس ڪنيڪشن استعمال ڪري رهيو آهي، اهو سمجهيو ويندو آهي فعال يا بلند. جيڪڏهن ڪو ڪنيڪشن استعمال ۾ نه آهي، اهو غير فعال يا ري سيٽ آهي.

نيٽ ورڪ ڪنيڪشن شامل ڪرڻ

ncmli افاديت توهان کي جلدي شامل ڪرڻ ۽ فوري طور تي ڪنيڪشن ترتيب ڏيڻ جي اجازت ڏئي ٿي. مثال طور، وائرڊ ڪنيڪشن 2 (enp0s8 سان) شامل ڪرڻ لاءِ، توھان کي ھيٺ ڏنل حڪم کي سپر يوزر طور هلائڻو پوندو.

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

ٽائيپ آپشن ۾ اسان ظاھر ڪريون ٿا ته اھو ھڪڙو Ethernet ڪنيڪشن ھوندو، ۽ ifname (interface name) آپشن ۾ اسان ان نيٽ ورڪ انٽرفيس کي ظاھر ڪندا آھيو جيڪو اسان استعمال ڪرڻ چاھيون ٿا.

اھو اھو آھي جيڪو حڪم هلائڻ کان پوء ٿيندو:

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

ھڪڙو نئون ڪنيڪشن ٺاھيو ويو آھي، ethernet-enp0s8. اهو هڪ UUID لڳايو ويو ۽ ڪنيڪشن جو قسم Ethernet هو. اچو ته ان کي مٿي ڪريو حڪم استعمال ڪندي:

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

اچو ته ٻيهر فعال ڪنيڪشن جي لسٽ چيڪ ڪريون:

$ 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

ھڪڙو نئون ڪنيڪشن ethernet-enp0s8 شامل ڪيو ويو آھي، اھو فعال آھي ۽ enp0s8 نيٽ ورڪ انٽرفيس استعمال ڪري ٿو.

ڪنيڪشن قائم ڪرڻ

ncmli افاديت توهان کي آساني سان موجوده ڪنيڪشن جا پيرا ميٽر تبديل ڪرڻ جي اجازت ڏئي ٿي. مثال طور، توھان کي پنھنجي متحرڪ (DHCP) IP پتي کي جامد IP پتي ۾ تبديل ڪرڻ جي ضرورت آھي.

اچو ته اسان کي IP پتي کي 192.168.4.26 تي سيٽ ڪرڻ جي ضرورت آهي. ائين ڪرڻ لاءِ اسان ٻه حڪم استعمال ڪندا آهيون. پهريون سڌو سنئون IP پتي کي سيٽ ڪندو، ۽ ٻيو IP پتي جي سيٽنگ جو طريقو مينوئل کي تبديل ڪندو:

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

Subnet ماسڪ پڻ سيٽ ڪرڻ نه وساريو. اسان جي ٽيسٽ ڪنيڪشن لاءِ هي 255.255.255.0 آهي، يا ڪلاس لیس روٽنگ (CIDR) لاءِ /24 سان.

تبديلين کي اثر انداز ڪرڻ لاء، توهان کي غير فعال ڪرڻ ۽ پوء ڪنيڪشن کي ٻيهر چالو ڪرڻ جي ضرورت آهي:

$ 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

جيڪڏهن، ان جي ابتڙ، توهان کي DHCP انسٽال ڪرڻ جي ضرورت آهي، دستياب جي بدران آٽو استعمال ڪريو:

$ nmcli connection modify ethernet-enp0s8 ipv4.method auto

ڊوائيسز سان ڪم ڪرڻ

ان لاءِ اسان ڊيوائس سيڪشن استعمال ڪريون ٿا.

ڊوائيس جي صورتحال جي جانچ ڪندي

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

ڊوائيس جي معلومات جي درخواست

هن کي ڪرڻ لاء، ڊيوائس سيڪشن مان شو ايڪشن استعمال ڪريو (توهان کي ڊوائيس جو نالو بيان ڪرڻ گهرجي). افاديت تمام گهڻي معلومات ڏيکاري ٿي، اڪثر ڪري ڪيترن ئي صفحن تي.
اچو ته ڏسو enp0s8 انٽرفيس جيڪو اسان جو نئون ڪنيڪشن استعمال ڪري ٿو. اچو ته پڪ ڪريو ته اهو بلڪل استعمال ڪري ٿو IP پتي جيڪو اسان اڳ ۾ سيٽ ڪيو آهي:

$ 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

ڪافي معلومات آهي. اچو ته مکيه شيء کي اجاگر ڪريون:

  • نيٽ ورڪ انٽرفيس جو نالو: enp0s8.
  • ڪنيڪشن جو قسم: وائرڊ Ethernet ڪنيڪشن.
  • اسان ڊوائيس جو MAC پتو ڏسو.
  • وڌ ۾ وڌ ٽرانسميشن يونٽ (MTU) بيان ڪيو ويو آهي - ھڪڙي پيڪٽ جي ھڪڙي مفيد ڊيٽا بلاڪ جي وڌ ۾ وڌ سائيز جيڪا پروٽوڪول ذريعي منتقل ٿي سگھي ٿي بغير تقسيم جي.
  • ڊوائيس هن وقت ڳنڍيل آهي.
  • ڪنيڪشن جو نالوڪهڙو ڊوائيس استعمال ڪري رهيو آهي: ethernet-enp0s8.
  • ڊوائيس استعمال ڪري ٿو IP پتي، جيڪو اسان اڳ ۾ نصب ڪيو: 192.168.4.26/24.

ٻي معلومات ڊفالٽ روٽنگ ۽ ڪنيڪشن گيٽ وي پيرا ميٽرز سان لاڳاپيل آهي. اهي مخصوص نيٽ ورڪ تي منحصر آهن.

انٽرويو nmcli ايڊيٽر

nmcli وٽ ھڪڙو سادو انٽرويو ايڊيٽر پڻ آھي، جيڪو ڪجھھ ڪم ڪرڻ لاءِ وڌيڪ آرام سان ٿي سگھي ٿو. ان کي هلائڻ لاءِ ethernet-enp0s8 ڪنيڪشن مثال طور، استعمال ڪريو عمل ترميم ڪريو

$ nmcli connection edit ethernet-enp0s8

اهو پڻ هڪ ننڍڙو مدد آهي، جيڪو، جيتوڻيڪ، ڪنسول ورزن کان سائيز ۾ ننڍو آهي:

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

جيڪڏھن توھان ٽائيپ ڪريو پرنٽ ڪمانڊ ۽ پريس ڪريو Enter، nmcli سڀ ڪنيڪشن جا خاصيتون ڏيکاريندو:

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

مثال طور، DHCP سان ڪنيڪشن سيٽ ڪرڻ لاء، ٽائپ ڪريو goto ipv4 ۽ ڪلڪ ڪريو شامل ڪريو:

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>

پوءِ لکو set method auto ۽ ڪلڪ ڪريو شامل ڪريو:

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

جيڪڏهن توهان جامد IP پتي کي صاف ڪرڻ چاهيو ٿا، ڪلڪ ڪريو شامل ڪريو. ٻي صورت ۾، نمبر ٽائيپ ڪريو ۽ داخل ڪريو پريس ڪريو. توهان ان کي بچائي سگهو ٿا جيڪڏهن توهان سوچيو ته توهان کي مستقبل ۾ ان جي ضرورت پوندي. پر اڃا به محفوظ ٿيل جامد IP پتي سان، DHCP استعمال ڪيو ويندو جيڪڏهن طريقو خودڪار تي سيٽ ڪيو وڃي.

پنھنجي تبديلين کي بچائڻ لاء محفوظ حڪم استعمال ڪريو:

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

nmcli Interactive Editor مان نڪرڻ لاءِ Quit ٽائپ ڪريو. جيڪڏهن توهان ڇڏڻ جي باري ۾ پنهنجو ذهن تبديل ڪريو، واپس ڪمانڊ استعمال ڪريو.

۽ اهو سڀ ڪجهه ناهي

nmcli Interactive Editor کوليو ۽ ڏسو ته ڪيتريون سيٽنگون آهن ۽ هر سيٽنگ ۾ ڪيتريون خاصيتون آهن. انٽرايڪٽو ايڊيٽر هڪ بهترين اوزار آهي، پر جيڪڏهن توهان استعمال ڪرڻ چاهيو ٿا nmcli هڪ-لائنرز يا اسڪرپٽ ۾، توهان کي ضرورت پوندي باقاعده ڪمانڊ لائن ورزن.

هاڻي ته توهان وٽ بنيادي شيون آهن، چيڪ ڪريو مرد صفحو nmcli ڏسو ته اهو ڪيئن توهان جي مدد ڪري سگهي ٿو.

اشتهارن جي حقن تي

ايپيڪ سرورز - هي آهي ونڊوز تي ورچوئل سرورز يا لينڪس طاقتور AMD EPYC خانداني پروسيسرز ۽ تمام تيز Intel NVMe ڊرائيو سان. آرڊر ڪرڻ لاء جلدي ڪريو!

nmcli ڪنسول يوٽيليٽي استعمال ڪندي لينڪس ۾ نيٽ ورڪ ڪنيڪشن کي منظم ڪرڻ

جو ذريعو: www.habr.com

تبصرو شامل ڪريو