Hướng dẫn thay đổi resolv.conf vĩnh viễn trong Ubuntu 18.04

Hướng dẫn thay đổi resolv.conf vĩnh viễn trong Ubuntu
Hướng dẫn thay đổi resolv.conf vĩnh viễn trong Ubuntu 21.04, 20.10,18.04

Khi bạn thay đổi cấu hình DNS bằng cách sử dụng tập tin /etc/resolv.conf, các thay đổi này không phải là vĩnh viễn. Khởi động lại và các thay đổi của bạn có thể hoàn nguyên trở về cài đặt ban đầu. Mình đã gặp vấn đề này khi mình thay đổi thiết lập DNS để xem Netflix, mình cảm thấy rất khó chịu phải cài lại mỗi lần khi restart máy. Chỉnh sửa file resolv.conf đã giải quyết được sự cố của mình nhưng chỉ trong thời điểm này hiện tại nếu như bạn không restart máy. Việc thay đổi của mình không phải là vĩnh viễn và khi mình mở file resolv.conf một lần nữa, mình thấy lý do tại sao nó lại như vậy. Các tập tin đã đề cập rõ ràng và mình đã không chú ý đến nó 🙁 .

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE OVERWRITTEN

Vì vậy, như đã nói ở trên, những thay đổi của mình đã bị ghi đè. Chỉnh sửa resolv.conf là để thử nghiệm ngay lập tức nhưng câu hỏi đặt ra làm thế nào để thực hiện thay đổi resolv.conf vĩnh viễn trong Ubuntu hoặc bất kỳ hệ thống Linux nào khác?.

Hướng dẫn thay đổi resolv.conf vĩnh viễn trong Ubuntu 18.04

Trong bài hướng dẫn này, mình sẽ thảo luận về giải pháp mà bạn có thể sử dụng để thực hiện các thay đổi trong resolv.conf vĩnh viễn. Mình cũng có 1 bài viết trước đây về thay đổi DNS cho ubuntu nếu bạn muốn thử 😀 .

Thực hiện các thay đổi vĩnh viễn trong resolv.conf:

Để thực hiện các thay đổi liên quan đến DNS trong resolv.conf vĩnh viễn, bạn cần phải thay đổi file cấu hình DHCP có tên là dhclient.conf. Bạn có thể tìm thấy tập tin ở vị trí này: /etc/dhcp/dhclient.conf .

Bạn sẽ thấy các dòng như sau:

#supersede domain-name "fugue.com home.vix.com";
#prepend domain-name-servers 127.0.0.1;

Loại bỏ dấu “#” trước dòng , sử dụng domain-name và domain-name-servers mà bạn muốn. Lưu nó. Bây giờ các thay đổi liên quan đến DNS sẽ là vĩnh viễn.

Giải pháp thay thế để thực hiện thay đổi vĩnh viễn trong resolv.conf:

Cách giải quyết này cần một chương trình resolvconf được cài đặt trong hệ thống của bạn. Thông thường, chương trình này được cài đặt trong nhiều hệ thống Linux theo mặc định nhưng để đảm bảo nó đã được cài đặt hay chưa thì sử dụng lệnh terminal sau (Ctrl +Alt +T) trong Ubuntu:

sudo apt-get install resolvconf

Một khi bạn đã chắc chắn rằng resolvconf đã được cài đặt, hãy chỉnh sửa tập tin cấu hình bằng cách sử dụng lệnh sau đây:

sudo gedit /etc/resolvconf/resolv.conf.d/base

Ở bài viết này mình sử dụng 1.1.1.1 DNS service của Cloudflare là: nameserver 1.1.1.1 , nameserver 1.0.0.1

Tham khảo thêm: Tút tăng tốc độ wifi với DNS 1.1.1.1 của Cloudflare

Lưu lại. Bây giờ các thiết lập trong resolv.conf sẽ là vĩnh viễn.

Update thêm cách mới trên ubuntu 18.04

Cách này mình thực hiện và cấu hình qua Netplan cho Ubuntu 18 trở lên nha.

Các tệp cấu hình Netplan được lưu trữ trong thư mục /etc/netplan. Bạn có thể tìm thấy một hoặc hai tệp YAML trong thư mục này. Tên tệp có thể khác nhau từ thiết lập để thiết lập. Thông thường, tệp được đặt tên là 01-netcfg.yaml hoặc 50-cloud-init.yaml nhưng trong hệ thống của bạn, nó có thể khác.

Để định cấu hình DNS nameservers, hãy mở tệp cấu hình bằng trình soạn thảo văn bản của bạn trong Terminal:

sudo nano /etc/netplan/01-netcfg.yaml

Các nội dung của tập tin sẽ trông giống như sau:

network:  version: 2  renderer: networkd  ethernets:    ens3:      dhcp4: no      addresses:        - 192.168.1.10/24      gateway4: 192.168.1.1      nameservers:          addresses: [8.8.8.8, 8.8.4.4]

Để định cấu hình DNS nameservers và thay đổi địa chỉ IP hiện tại với các DNS nameservers ưa thích của bạn.

Ví dụ: nếu bạn muốn sử dụng máy chủ DNS của Cloudflare, bạn sẽ thay đổi dòng địa chỉ thành:

nameservers:          addresses: [1.1.1.1, 1.0.0.1]

Sau khi lưu xong tệp và áp dụng các thay đổi với dòng lệnh sau:

sudo netplan apply

Netplan sẽ tạo các tệp cấu hình cho dịch vụ phân giải systemd.

Để xác minh rằng các bộ phân giải DNS mới được đặt, hãy chạy lệnh sau:

systemd-resolve --status | grep 'DNS Servers' -A2

Chạy lệnh bên trên sẽ trả kết quả như sau là thành công:

         DNS Servers: 1.1.1.1                      1.0.0.1

Phần kết luận

Netplan là công cụ quản lý mạng mặc định trên Ubuntu 18.04, thay thế các tệp cấu hình /etc/resolv.conf/etc/network/ giao diện đã được sử dụng để định cấu hình mạng trong các phiên bản Ubuntu trước.

Mình hy vọng hướng dẫn nhanh này đã giúp bạn thay đổi cài đặt DNS và thực hiện những thay đổi đó vĩnh viễn. Bất kỳ câu hỏi, đề xuất nào vui lòng cmt bên dưới nhé. Thanks.

Chiasefree

I am passionate about blogging and sharing good tips to readers, I like random web programming. Never back down.

Đăng nhận xét (0)
Mới hơn Cũ hơn