Ada banyak kasus di mana kita mungkin ingin menetapkan IP statis untuk antarmuka jaringan. Di RHEL 8 / CentOS 8, koneksi jaringan dikelola oleh daemon NetworkManager, jadi dalam tutorial ini kita melihat bagaimana kita dapat melakukan tugas tersebut dengan mengedit file antarmuka secara langsung, dengan menggunakan utilitas baris perintah, nmcli
, atau melalui antarmuka pengguna teks, nmtui
.
Dalam tutorial ini Anda akan mempelajari:
- Cara menyetel alamat IP statis dengan langsung mengedit file antarmuka
- Cara menyetel alamat IP statis menggunakan utilitas nmcli
- Cara menyetel alamat IP statis menggunakan nmtui
File antarmuka jaringan yang diedit
Persyaratan dan Konvensi Perangkat Lunak yang Digunakan
Kategori | Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan |
---|---|
Sistem | RHEL 8 / CentOS 8 |
Perangkat Lunak | Semua perangkat lunak yang disebutkan dalam tutorial ini termasuk dalam instalasi minimal RHEL 8 atau CentOS 8. |
Lainnya | Izin untuk menjalankan perintah dengan hak akses root. |
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 |
Pengantar
Di Red Hat Enterprise Linux 8, antarmuka jaringan dikelola oleh NetworkManager
daemon, jadi untuk mengubah pengaturan antarmuka jaringan, kita harus berinteraksi dengannya. Dalam tutorial ini kita akan melihat bagaimana kita dapat mengatur alamat IP statis, gateway dan server dns untuk NIC dengan menggunakan tiga metode yang berbeda.
Mengidentifikasi antarmuka kita
Hal pertama yang ingin kita lakukan adalah menemukan antarmuka yang ingin kita modifikasi. Untuk membuat daftar semua antarmuka di sistem kami, kami dapat menggunakan ip addr
perintah:
$ ip addr 1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0: <broadcast,multicast,up,lower_up> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 192.168.122.189/24 brd 192.168.122.255 scope global dynamic noprefixroute enp1s0 valid_lft 3004sec preferred_lft 3004sec inet6 fe80::9ab6:ba48:1ddd:a8e1/64 scope link noprefixroute valid_lft forever preferred_lft forever </broadcast,multicast,up,lower_up></loopback,up,lower_up>
Pada output di atas, yang merupakan hasil menjalankan perintah pada mesin virtual rhel8 saya, kita dapat melihat dua antarmuka:lo
dan enp1s0
. Yang pertama adalah antarmuka "virtual", yang digunakan oleh sistem untuk "berbicara" dengan dirinya sendiri. Yang kedua adalah yang menarik bagi kami, dan saat ini alamat IPv4-nya adalah 192.168.122.189:kami ingin mengubahnya.
Metode 1 – memodifikasi file konfigurasi antarmuka secara manual
Untuk setiap antarmuka jaringan yang dikelola oleh daemon NetworkManager, file konfigurasi dibuat di dalam /etc/sysconfig/network-scripts
direktori. Nama file disusun oleh ifcfg-
awalan ditambah nama antarmuka. Jika kami memeriksa file yang terkait dengan NIC kami, kami dapat melihat pengaturan sebenarnya:
$ cat /etc/sysconfig/network-scrIPts/ifcfg-enp1s0 TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="dhcp" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="enp1s0" UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58" DEVICE="enp1s0" ONBOOT="yes"
BOOTPROTO
opsi disetel ke dhcp
:opsi menyetel protokol yang akan digunakan saat boot untuk menyetel alamat IP antarmuka. Opsi yang memungkinkan untuk digunakan adalah:
- none – Protokol tidak boleh digunakan
- bootp – Gunakan protokol bootp
- dhcp – Gunakan protokol dhcp
Karena kami ingin menetapkan alamat IPv4 statis, kami ingin mengubah nilai BOOTPROTO menjadi none
dan konfigurasikan IP, awalan rute, gateway, dan server dns kami secara statis. Kita dapat melakukannya dengan menggunakan masing-masing IPADDR
, PREFIX
, GATEWAY
dan DNS
pilihan. Karena banyak server dns dapat ditentukan, DNS
opsi harus dilaporkan bersama dengan nomor progresif, mulai dari 1. Setelah modifikasi yang diperlukan, file kita akan terlihat seperti
ini:
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="enp1s0" UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58" DEVICE="enp1s0" ONBOOT="yes" IPADDR=192.168.122.66 PREFIX=24 GATEWAY=192.168.122.1 DNS1=192.168.122.1
Kami mengatur IP statis kami ke 192.168.122.66
dan atur gateway dan server dns kami ke 192.168.122.1
. Sekarang, untuk membuat perubahan kita efektif, kita harus meletakkan dan memasang kembali antarmuka jaringan. Ketahuilah bahwa ini akan mengganggu koneksi ssh yang ada melalui antarmuka tersebut:
$ sudo nmcli connection down enp1s0 && sudo nmcli connection up enp1s0
Dengan menjalankan ip addr
perintah lagi kami dapat memverifikasi IP telah berubah:
IP addr|grep enp1s0|grep inet inet 192.168.122.66/24 brd 192.168.122.255 scope global noprefix
Metode 2 – menggunakan nmcli
Nmcli
adalah alat baris perintah yang digunakan untuk mengontrol NetworkManager. Dengan menggunakannya, kita dapat, antara lain, mengubah pengaturan jaringan untuk antarmuka tertentu. Dalam kasus kami, kami harus menggunakan nmcli dengan connection
subperintah dengan modify
atau edit
tindakan. Yang pertama memungkinkan kita mengubah pengaturan secara langsung, sedangkan yang kedua meluncurkan shell nmcli, tempat kita dapat beroperasi secara interaktif.
Menggunakan nmcli secara langsung
Untuk mengubah alamat IP antarmuka “enp1s0” dengan perintah nmcli langsung, kita jalankan:
$ sudo nmcli connection modify enp1s0 IPv4.address 192.168.122.66/24
Perhatikan bahwa kami menentukan awalan perutean bersama dengan IP menggunakan apa yang disebut CIDR
notasi (Perutean Antar-Domain Kelas). Kami menggunakan sintaks serupa untuk mengubah gateway dan pengaturan dns:
$ sudo nmcli connection modify enp1s0 IPv4.gateway 192.168.122.1 $ sudo nmcli connection modify enp1s0 IPv4.dns 192.168.122.1
Terakhir, kami mengatur metode ke manual
untuk menghindari penggunaan protokol boot lain untuk antarmuka. Perintah ini menyetel opsi BOOTPROTO ke none di file konfigurasi antarmuka:
$ sudo nmcli connection modify enp1s0 IPv4.method manual
Menggunakan nmcli shell
Seperti yang kami sebutkan di atas, kami juga dapat menggunakan metode interaktif untuk melakukan perubahan yang sama. Untuk memasukkan nmcli shell
kami menggunakan edit
action, diikuti dengan nama interface yang ingin kita edit:
$ sudo nmcli connection edit enp1s0 ===| nmcli interactive connection editor |=== Editing existing '802-3-ethernet' connection: 'enp1s0' Type 'help' or '?' for available commands. Type 'print' to show all the connection properties. Type 'describe [.]' 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>
Kursor yang berkedip memberitahu kita bahwa shell menerima perintah:kita dapat mengetikkan help
untuk mendapatkan daftar yang tersedia, print
untuk melihat semua properti koneksi atau describe
diikuti oleh pengaturan dan salah satu propertinya (diwakili dengan notasi titik), untuk mendapatkan deskripsi yang terakhir. Misalnya:
nmcli> nmcli> describe IPv4.address === [addresses] === [NM property descrIPtion] Array of IP addresses. [nmcli specific descrIPtion] Enter a list of IPv4 addresses formatted as: IP[/prefix], IP[/prefix],... Missing prefix is regarded as prefix of 32. Example: 192.168.1.5/24, 10.0.0.11/24
Untuk mengubah alamat antarmuka kami:
nmcli> set IPv4.address 192.168.122.66/24
Prinsip yang sama digunakan untuk mengubah properti lainnya:
nmcli> set IPv4.gateway 192.168.122.1 nmcli> set IPv4.dns 192.168.122.1 nmcli> set IPv4.method manual
Untuk menyimpan modifikasi yang kita buat, kita perlu mengeluarkan satu perintah terakhir:
nmcli> save Connection 'enp1s0' (d5f41bf4-de0a-43b3-b633-7e2ec6212e58) successfully updated.
Untuk keluar dari shell nmcli cukup ketik quit
dan tekan enter:
nmcli> quit
Sekali lagi, untuk membuat perubahan efektif, kita harus memuat ulang antarmuka dengan perintah yang sama yang kita gunakan sebelumnya.
Metode 3 – menggunakan nmtui
Selain mengubah parameter antarmuka jaringan dengan memodifikasi file secara manual atau dengan menggunakan utilitas nmcli, kita juga dapat mengontrol NetworkManager dengan menggunakan antarmuka pengguna teks. Untuk meluncurkannya, kita cukup memanggil nmtui
di terminal kami:
$ sudo nmtui
Antarmuka pengguna teks nmtui
Kami Pilih Edit a connection
dan kemudian nama antarmuka yang ingin kita manipulasi; kami kemudian melanjutkan dalam mengubah nilai yang diinginkan. Misalnya:
Mengedit pengaturan koneksi dengan nmtui
Setelah kita puas, kita pilih OK
dan tekan enter :kita akan dibawa kembali ke menu pilihan interface. Kali ini kita pilih back
, lalu pilih quit
untuk keluar. Untuk menerapkan pengaturan, kita perlu memuat ulang koneksi antarmuka:
$ sudo nmcli connection down enp1s0 && sudo nmcli connection up enp1s0
Kesimpulan
Dalam tutorial ini kita melihat tiga metode yang dapat kita gunakan untuk mengatur alamat IP statis pada Red Hat Enterprise Linux 8. Kita melihat opsi apa yang harus kita ubah dan apa yang harus kita tambahkan dalam file konfigurasi antarmuka saat mengeditnya secara manual, dan bagaimana melakukan perubahan yang sama menggunakan nmcli dan nmtui, yang masing-masing merupakan utilitas baris perintah dan antarmuka pengguna teks:keduanya digunakan untuk mengontrol daemon NetworkManager.