Hướng dẫn cấu hình IP tĩnh trên CentOS 7

Nội dung đã rõ như tiêu đề của bài viết, đó là bạn có 1 hệ thống CentOS 7 hoặc RHEL 7 và bạn muốn tìm cách để cấu hình IP tĩnh trên CentOS 7 hoặc RHEL 7. Vậy mình sẽ trình bày cho các bạn 2 cách cực kì cơ bản và phổ biến để cấu hình static IP trên card mạng của CentOS/RHEL 7 nhé.

Các bạn lưu ý trên, hệ thống ‘systemd‘ như CentOS 7 thì mặc định ban đầu khi cài đặt, tên card mạng sẽ không có dạng ‘eth[x]‘ như CentOS 6 mà có thể là ‘ens[x]‘ hoặc những cái tên khó nhớ khác. Vậy nếu bạn muốn khôi phục lại tên cũ ‘eth[x]‘ cho card mạng để thuận bề cấu hình IP tĩnh thì hãy xem qua bài viết này : Làm thể nào để khôi phục tên card mạng eth-x trên CentOS 7/RHEL 7 .

Ở trong các ví dụ dưới đây mình vẫn sẽ giữ nguyên tên ‘ens[x]‘ để sử dụng cấu hình nhé. Ok chúng ta cùng đến với 2 cách để cấu hình IP tĩnh trên CentOS 7/RHEL 7 nào.

1. Liệt kê thông tin các card mạng trên CentOS 7

– Hãy sử dụng câu lệnh sau.

# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 62:33:62:64:32:33 brd ff:ff:ff:ff:ff:ff
3: ens19: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 32:65:33:64:35:65 brd ff:ff:ff:ff:ff:ff

 
– Hoặc cũng có thể sử dụng lệnh ‘nmcli‘ của chương trình dịch vụ NetworkManager. Nếu card cần cấu hình hiển thị trạng thái ‘connected‘ là card mạng đó đã được cấu hình để được quả lý bởi chương trình Network Manager.

# nmcli -p dev
============================================
             Status of devices
============================================
DEVICE  TYPE      STATE         CONNECTION 
--------------------------------------------
ens19   ethernet  disconnected  --         
ens18   ethernet  connected     --         
lo      loopback  unmanaged     --

2. Cấu hình ip tĩnh cho card mạng bằng tay truyền thống

2.1 Chỉnh sửa file cấu hình IP tĩnh trên CentOS 7 cho card mạng tương ứng

– Giờ ta có card mạng ‘ens18‘ thì ta cần tạo 1 file cấu hình có tên tiền tố là ‘ifcfg-<tên card mạng>‘ trong thư mục ‘/etc/sysconfig/network-scripts/‘. Ví dụ dưới đây thì ta sẽ tạo file ‘ifcfg-ens18‘ .

# vi /etc/sysconfig/network-scripts/ifcfg-ens18
DEVICE=ens18
NAME=ens18
HWADDR=00:08:A2:0A:BA:B8
UUID=41171a6f-bce1-44de-8a6e-cf5e782f8bd6
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=static
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPADDR=192.168.99.101
PREFIX=24
GATEWAY=192.168.99.1
DNS1=8.8.8.8
DNS2=8.8.4.4
DEFROUTE=yes

Chú thích:
– Dưới đây là các option bạn nên lưu ý khi cấu hình, còn lại để mặc định cũng được.

  • DEVICE : tên card mạng đã được liệt kê ở phần 1, nên điền chính xác tên card mạng thì hệ thống mới nhận biết được card nào để cấu hình card mạng cho nó.
  • NAME : nội dung y như phần DEVICE.
  • ONBOOT : phải để option ‘yes‘ thì khi reboot hệ thống, network mới tự động được bật lên với cấu hình card mạng tương ứng.
  • BOOTPROTO : cấu hình IP tĩnh hay DHCP. Nếu là DHCP thì để giá trị ‘dhcp’.
  • IPV6INIT : tắt chức năng hỗ trợ sử dụng IPv6 trên card mạng ens18.
  • IPADDR : địa chỉ IP tĩnh.
  • PREFIX : subnet mask của lớp mạng IP sử dụng.
  • GATEWAY : địa chỉ IP cổng gateway.
  • DNS1 : thông tin DNS server.

Lưu ý:
– Các dòng cấu hình không phân biệt hay ưu tiên thứ tự, chỉ cần có nội dung cấu hình cần thiết là được.

2.2. Cấu hình static IP với chương trình dịch vụ Network Manager

Network Manager là một chương trình/dịch vụ hỗ trợ điều khiển quản lý mạng cũng như cấu hình hệ thống mạng trên CentOS 7. Mặc định khi sử dụng OS CentOS 7/RHEL 7 thì chương trình này đã được cài đặt từ ban đầu. Nhưng bạn cần phải cài đặt chương trình ‘NetworkManager Text User Interface (TUI) – nmtui‘, nhằm cung cấp cho chúng ta một giao diện text cấu hình linh động tương tác với Network Manager ngay trên Terminal hoặc Console kết nối đến hệ thống thay vì phải dùng lệnh riêng của NetworkManager.

Từ chương trình nmtui, chúng ta có thể cấu hình IP tĩnh cho card mạng, tắt mở kết nối mạng, thiết lập hostname cho OS, tạo card bonding, cấu hình VLAN bằng NM,… rất là tiện lợi vô cùng.

– Để cài đặt chương trình ‘nmtui‘ ta dùng lệnh sau:

# yum install NetworkManager-tui -y

 
– Nếu bạn muốn dùng Network Manager để quản lý các card mạng trên CentOS 7, trước tiên bạn phải thêm dòng “NM_CONTROLLED=yes” vào file /etc/sysconfig/network-scripts/ifcfg-ens18

# vi /etc/sysconfig/network-scripts/ifcfg-ens18
DEVICE=ens18
NAME=ens18
...
...
NM_CONTROLLED=yes
...
...

 
– Khởi động dịch vụ Network Manager.

# systemctl start NetworkManager.service

 
– Bây giờ ta sẽ tiến hành cấu hình static ip (ip tĩnh) cho card mạng ens18 nhé.

# nmtui edit ens18

 
– Bạn sẽ thấy xuất hiện một cửa sổ giao diện trên terminal của Network Manager, cho phép chúng ta cấu hình địa chỉ IP của ‘ens18‘. Giao diện này hoạt động y hệt như cách 1, chúng ta là chỉnh sửa trực tiếp trên file /etc/sysconfig/network-scripts/ifcfg-ens18.

network manager cấu hình địa chỉ IP tĩnh trên centos 7 
– Bạn có thể sử dụng các phím tab, space, di chuyển bàn phím lên xuống trái phải và nhấn enter để thay đổi chỉnh sửa các giá trị cấu hình. Sau khi đã ok hết tất cả thì chỉ cần bấm chọn nút “OK” phía dưới bên phải hình.

– Sau khi chỉnh sửa hoàn tất thì hãy thực hiện tiếp tục nội dung khởi động lại dịch vụ network và kiểm tra network trên Linux (CentOS) ở phần kế.

3 Khởi động network và kiểm tra cấu hình

– Sau khi đã hoàn tất cấu hình IP tĩnh như trên thì ta sẽ khởi động lại dịch vụ network trên CentOS 7.

# systemctl restart network

– Kiểm tra thông tin IP tĩnh đã cấu hình cho card mạng ens18 .

# ip a s ens18
2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:08:A2:0A:BA:B8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.99.101/24 brd 192.168.99.255 scope global ens18
       valid_lft forever preferred_lft forever
    inet6 fe80::6033:62ff:fe64:3233/64 scope link 
       valid_lft forever preferred_lft forever

– Kiểm tra thông tin routing trên CentOS 7.

# ip r
default via 192.168.99.1 dev ens18 
192.168.99.0/24 dev ens18 proto kernel scope link src 192.168.99.101
169.254.0.0/16 dev ens18 scope link metric 1002

– Kiểm tra thông tin DNS.

# cat /etc/resolv.conf 
nameserver 8.8.8.8
nameserver 8.8.4.4

– Ping gateway.

# ping 192.168.99.1

Vậy là bạn đã hoàn tất các thao tác để có thể tự cài đặt địa chỉ IP tĩnh trên CentOS 7 rồi. Chúc các bạn thành công.

Previous articleHướng dẫn sử dụng hàm max() List trên Python
Next article5 cách để lấy thông tin IP Public từ Linux Terminal
Bạn đang theo dõi website "https://cuongquach.com/" nơi lưu trữ những kiến thức tổng hợp và chia sẻ cá nhân về Quản Trị Hệ Thống Dịch Vụ & Mạng, được xây dựng lại dưới nền tảng kinh nghiệm của bản thân mình, Quách Chí Cường. Hy vọng bạn sẽ thích nơi này !