GNU/Linux >> Belajar Linux >  >> Cent OS

Cara mengkonfigurasi ikatan antarmuka jaringan pada RHEL 8 / CentOS 8 Linux

Ikatan antarmuka jaringan terdiri dari agregasi dua atau lebih antarmuka jaringan fisik, yang disebut slaves , di bawah satu antarmuka logis yang disebut master atau bond antarmuka. Tergantung pada mode ikatan, pengaturan tersebut dapat berguna untuk mencapai toleransi kesalahan dan/atau penyeimbangan beban. Dalam tutorial ini kita akan mempelajari mode bonding yang tersedia dan cara membuat bonding jaringan di RHEL 8 / CentOS 8.

Dalam tutorial ini Anda akan mempelajari:

  • Apa yang dimaksud dengan ikatan antarmuka jaringan
  • Cara mengonfigurasi ikatan antarmuka jaringan pada RHEL 8 / CentOS 8
  • Apa saja mode ikatan yang berbeda


Status Obligasi seperti yang terlihat oleh kernel Linux

Persyaratan dan Konvensi Perangkat Lunak yang Digunakan

Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan
Sistem RHEL 8 / CentOS 8
Perangkat Lunak Utilitas nmtui untuk mengontrol daemon NetworkManager. Aplikasi ini termasuk dalam instalasi sistem minimal.
Lainnya Hak istimewa root untuk mengubah pengaturan sistem
Konvensi # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa

Mode ikatan apa?

Pada dasarnya ada 7 mode bonding yang bisa kita gunakan:

Robin Bulat

Paket didistribusikan secara merata, secara berurutan, ke semua antarmuka budak (dari yang pertama hingga yang terakhir). Mode ini menyediakan penyeimbangan beban dan toleransi kesalahan, tetapi membutuhkan dukungan pada sakelar.

Cadangan Aktif

Hanya antarmuka budak utama yang digunakan. Jika gagal, budak lain digunakan sebagai gantinya. Itu hanya memberikan toleransi kesalahan; tidak ada persyaratan khusus.

XOR (Eksklusif ATAU)

Paket ditransmisikan dan ditetapkan ke salah satu antarmuka budak tergantung pada hash alamat MAC sumber dan tujuan, dihitung dengan rumus berikut:

[(source MAC address XOR’d with destination MAC address) modulo slave count]

Mode ini menyediakan toleransi kesalahan dan penyeimbangan beban.

Siaran

Saat mode ini digunakan, semua paket ditransmisikan pada semua antarmuka slave, memberikan toleransi kesalahan tetapi tidak load balancing.

802.3 iklan

Mode ini menggunakan agregasi tautan IEEE 802.3ad yang harus didukung pada sakelar. Membuat grup agregasi yang berbagi pengaturan kecepatan dan dupleks yang sama. Mengirim dan menerima pada semua budak di grup aktif. Menyediakan penyeimbangan beban dan toleransi kesalahan.

Penyeimbangan beban transmisi adaptif

Paket keluar ditransmisikan melalui antarmuka budak tergantung pada bebannya, dan lalu lintas masuk diterima oleh budak saat ini. Jika yang terakhir gagal, budak lain mengambil alih alamat MAC-nya. Mode ini memberikan toleransi kesalahan dan penyeimbangan beban.

Penyeimbangan beban adaptif

Bekerja seperti Adaptive Transmit Load Balancing , tetapi juga menyediakan inbound penyeimbangan melalui ARP (Address Resolution Protocol) negosiasi.

Lingkungan

Demi tutorial ini kita akan bekerja pada sistem virtual Red Hat Enterprise Linux 8. Untuk membuat ikatan jaringan kami, kami akan bekerja dengan nmtui , utilitas antarmuka pengguna teks yang digunakan untuk mengontrol NetworkManager daemon. Namun, operasi yang sama dapat dilakukan dengan nmcli utilitas baris perintah atau melalui GUI dengan Network Manager Connection Editor .

Sistem saat ini memiliki dua ethernet tautan, enp1s0
dan enp7s0 :

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:cb:25:82 brd ff:ff:ff:ff:ff:ff
3: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:32:37:9b brd ff:ff:ff:ff:ff:ff

Membuat ikatan jaringan

Sebagai hal pertama, kami akan menghapus konfigurasi yang ada saat ini untuk antarmuka budak. Ini tidak sepenuhnya diperlukan, karena kami dapat mengedit konfigurasi seperti itu, tetapi untuk memulai dari awal, kami akan melanjutkan dengan cara ini. Mari kita panggil nmtui :

$ sudo nmtui

Dari menu utama kami memilih “Edit koneksi” dan konfirmasi.



Menu utama nmtui.

Kami pertama-tama memilih koneksi yang akan dihapus dalam daftar, lalu melanjutkan <Delete> . Akhirnya kami mengkonfirmasi:



Daftar koneksi Nmtui.

Terakhir, kami mengonfirmasi bahwa kami ingin menghapus koneksi:



Konfirmasi Nmtui meminta untuk menghapus koneksi yang ada.

Kami mengulangi operasi untuk antarmuka lainnya. Setelah kami menghapus semua konfigurasi yang ada, kami dapat membuat bond antarmuka. Kami memilih <Add> di menu, dan dari daftar jenis koneksi, kami memilih Bond :



Menu pemilihan jenis koneksi Nmtui.

Sebuah jendela baru akan terbuka di mana kita dapat mengkonfigurasi antarmuka kita. Dalam hal ini, meskipun itu benar-benar opsional, saya akan menggunakan bond0 baik sebagai profil dan nama perangkat. Bagian terpenting, bagaimanapun, adalah pemilihan antarmuka budak yang akan ditambahkan ke ikatan. Dalam BOND Slaves menu, klik <Add> , dan pilih jenis koneksi budak yang akan ditambahkan, dalam hal ini ethernet .



Menu Nmtui untuk memilih jenis koneksi budak.

Masukkan nama perangkat, pilih <OK> dan konfirmasi. Operasi harus diulang untuk setiap antarmuka slave.



Antarmuka Nmtui untuk mengedit koneksi budak.

Langkah selanjutnya adalah memilih bonding mode :untuk tutorial ini kita akan menggunakan Active Backup satu. Kami memilih opsi terkait di menu dan di bidang "Utama" kami menentukan nama antarmuka budak utama. Terakhir, kita tinggal pilih <OK> untuk mengonfirmasi pembuatan antarmuka ikatan.



Pengaturan ikatan jaringan.

Sekarang kita dapat keluar dari nmtui aplikasi. Untuk memverifikasi bahwa pembuatan ikatan berhasil, kita dapat meluncurkan perintah berikut:

$ ip addr show bond0

Hasilnya adalah sebagai berikut:

4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 52:54:00:cb:25:82 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.164/24 brd 192.168.122.255 scope global dynamic noprefixroute bond0
       valid_lft 3304sec preferred_lft 3304sec
    inet6 fe80::48:d311:96c1:89dc/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

ifcfg file konfigurasi yang terkait dengan konfigurasi kami telah dibuat di dalam /etc/sysconfig/network-scripts direktori:

$ ls /etc/sysconfig/network-scripts
ifcfg-bond0  ifcfg-enp1s0  ifcfg-enp7s0

Untuk melihat status bond0 saat ini antarmuka seperti yang terlihat oleh kernel, kita dapat menjalankan:

$ cat /proc/net/bonding/bond0

Output dari perintah dilaporkan di bawah ini:

Ethernet Channel Bonding Driver: v3.7.1 (April
27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: enp1s0 (primary_reselect always)
Currently Active Slave: enp1s0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: enp1s0
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 52:54:00:cb:25:82
Slave queue ID: 0

Slave Interface: enp7s0
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 52:54:00:32:37:9b
Slave queue ID: 0

Kita dapat melihat bagaimana kedua antarmuka budak aktif, tetapi hanya enp1s0 aktif, karena ini adalah yang digunakan sebagai budak utama.

Menguji Cadangan Aktif

Bagaimana kami dapat memverifikasi bahwa konfigurasi kami berfungsi? Kita dapat meletakkan antarmuka slave utama dan melihat apakah mesin masih merespons ping. Untuk meletakkan antarmuka, kami menjalankan:

$ sudo ip link set enp1s0 down

Apakah mesin masih merespons? Mari kita verifikasi:

$ ping -c3 192.168.122.164
PING 192.168.122.164 (192.168.122.164) 56(84) bytes of data.
64 bytes from 192.168.122.164: icmp_seq=1 ttl=64 time=0.385 ms
64 bytes from 192.168.122.164: icmp_seq=2 ttl=64 time=0.353 ms
64 bytes from 192.168.122.164: icmp_seq=3 ttl=64 time=0.406 ms

--- 192.168.122.164 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 88ms
rtt min/avg/max/mdev = 0.353/0.381/0.406/0.027 ms

Itu benar! Mari kita lihat bagaimana status obligasi berubah:

Ethernet Channel Bonding Driver: v3.7.1 (April
27, 2011)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: enp1s0 (primary_reselect always)
Currently Active Slave: enp7s0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: enp1s0
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 1
Permanent HW addr: 52:54:00:cb:25:82
Slave queue ID: 0

Slave Interface: enp7s0
MII Status: up
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 52:54:00:32:37:9b
Slave queue ID: 0

Seperti yang Anda lihat, karena kami meletakkan antarmuka slave utama (enp1s0 ), budak lainnya, enp7s0 digunakan sebagai cadangan dan sekarang aktif. Selain itu, Link Failure Count untuk budak utama meningkat, dan sekarang 1 .

Kesimpulan

Dalam tutorial ini kita mempelajari apa itu network bonding dan apa saja cara yang mungkin untuk mengkonfigurasi network bonding. Kami juga membuat ikatan jaringan antara dua antarmuka ethernet menggunakan Active Backup mode. Dengan Red Hat Enterprise Linux 7, sebuah konsep baru telah diperkenalkan, network teaming . Dalam beberapa aspek, bekerja sama mirip dengan ikatan, tetapi diimplementasikan secara berbeda dan memiliki lebih banyak fitur. Kami akan membahasnya di artikel mendatang.


Cent OS
  1. CentOS / RHEL 7 :Cara membuat Network Bonding (NIC teaming) menggunakan nmcli

  2. CentOS / RHEL 5:Cara mengonfigurasi ikatan Antarmuka (tim NIC)

  3. CentOS / RHEL 4 :Cara mengonfigurasi ikatan antarmuka (tim NIC)

  1. CentOS / RHEL 7 :Cara mengubah nama Antarmuka Jaringan

  2. CentOS / RHEL 7 :Cara mengonfigurasi Network Bonding atau NIC teaming

  3. Cara mengonfigurasi antarmuka dalam "Mode Promiscuous" di CentOS/RHEL

  1. Cara Mengonfigurasi Teaming Jaringan di CentOS/RHEL 7

  2. Cara Mengonfigurasi Antarmuka dalam mode promiscuous di CentOS/RHEL 7 (terus-menerus)

  3. Cara Mengonfigurasi Teaming Antarmuka Jaringan di CentOS/RHEL 7 dan 8