Thứ hai, 02/05/2016 | 00:00 GMT+7

cách cấu hình bind làm server lưu trữ hoặc chuyển tiếp DNS trên Ubuntu 16.04

DNS, hay Hệ thống domain , thường là một thành phần khó thực hiện khi học cách cấu hình trang web và server . Mặc dù hầu hết mọi người có thể sẽ chọn sử dụng server DNS được cung cấp bởi công ty lưu trữ hoặc công ty đăng ký domain của họ, nhưng có một số lợi thế khi tạo server DNS của bạn .

Trong hướng dẫn này, ta sẽ thảo luận về cách cài đặt và cấu hình server DNS Bind9 làm server DNS chuyển tiếp hoặc bộ nhớ đệm trên các máy Ubuntu 16.04. Hai cấu hình này đều có lợi thế khi phục vụ mạng của các máy.

Yêu cầu và Mục tiêu

Để hoàn thành hướng dẫn này, trước tiên bạn cần phải làm quen với một số thuật ngữ DNS phổ biến. Hãy xem hướng dẫn này để tìm hiểu về một số khái niệm mà ta sẽ triển khai trong hướng dẫn này.

Ta sẽ trình bày hai cấu hình riêng biệt để thực hiện các mục tiêu tương tự: bộ nhớ đệm và server DNS chuyển tiếp.

Để làm theo, bạn cần có quyền truy cập vào hai máy tính (ít nhất một trong số đó phải là server Ubuntu 16.04). Một sẽ hoạt động như client và cái kia sẽ được cấu hình làm server DNS. Để đưa server vào trạng thái ban đầu tốt, hãy làm theo hướng dẫn cài đặt server ban đầu Ubuntu 16.04 .

Chi tiết cấu hình ví dụ của ta là:

Role Địa chỉ IP
Server DNS 192.0.2.2
Khách hàng 192.0.2.100

Ta sẽ hướng dẫn bạn cách cấu hình client để sử dụng server DNS cho các truy vấn. Ta sẽ hướng dẫn bạn cách cấu hình server DNS theo hai cấu hình khác nhau, tùy thuộc vào nhu cầu của bạn.

Cache DNS Server

Cấu hình đầu tiên sẽ dành cho server DNS trong bộ nhớ đệm . Loại server này còn gọi là trình phân giải vì nó xử lý các truy vấn đệ quy và nói chung có thể xử lý công việc theo dõi dữ liệu DNS từ các server khác.

Khi server DNS lưu vào bộ nhớ đệm theo dõi câu trả lời cho truy vấn của khách hàng, nó sẽ trả về câu trả lời cho client . Nhưng nó cũng lưu trữ câu trả lời trong bộ nhớ cache trong repository ảng thời gian được cho phép bởi giá trị TTL của bản ghi. Sau đó, bộ nhớ đệm được dùng làm nguồn cho các yêu cầu tiếp theo để tăng tốc tổng thời gian khứ hồi.

Hầu hết tất cả các server DNS mà bạn có thể có trong cấu hình mạng của bạn sẽ là các server DNS vào bộ nhớ đệm. Những điều này bù đắp cho việc thiếu các thư viện trình phân giải DNS đầy đủ được triển khai trên hầu hết các client . Server DNS bộ nhớ đệm là một lựa chọn tốt cho nhiều trường hợp. Nếu bạn không muốn dựa vào DNS của ISP hoặc các server DNS công khai khác, thì việc tạo server lưu trong bộ nhớ đệm của bạn là một lựa chọn tốt. Nếu nó ở gần client , nó cũng có khả năng cải thiện thời gian truy vấn DNS.

Server DNS chuyển tiếp

Cấu hình thứ hai mà ta sẽ giới thiệu là một server DNS chuyển tiếp . Server DNS chuyển tiếp sẽ trông gần giống với server bộ nhớ đệm từ góc nhìn của khách hàng, nhưng cơ chế và tải công việc khá khác nhau.

Server DNS chuyển tiếp cung cấp cùng một ưu điểm là duy trì cache để cải thiện thời gian phân giải DNS cho client . Tuy nhiên, nó thực sự không thực hiện truy vấn đệ quy. Thay vào đó, nó chuyển tiếp tất cả các yêu cầu đến một server phân giải bên ngoài và sau đó lưu kết quả vào bộ nhớ cache để sử dụng cho các truy vấn sau này.

Điều này cho phép server chuyển tiếp phản hồi từ bộ nhớ cache của nó, trong khi không yêu cầu nó thực hiện tất cả công việc của các truy vấn đệ quy. Điều này cho phép server chỉ thực hiện các yêu cầu đơn lẻ (yêu cầu client được chuyển tiếp) thay vì phải thực hiện toàn bộ quy trình đệ quy. Đây có thể là một lợi thế trong môi trường mà việc truyền băng thông ra bên ngoài rất tốn kém, nơi các server lưu trong bộ nhớ đệm của bạn có thể cần được thay đổi thường xuyên hoặc khi bạn muốn chuyển tiếp các truy vấn local đến một server và các truy vấn bên ngoài tới một server khác.

Cài đặt Bind trên Server DNS

Dù lựa chọn cấu hình nào bạn muốn sử dụng, bước đầu tiên trong việc triển khai server DNS Bind là cài đặt phần mềm thực tế.

Phần mềm Bind có sẵn trong repository lưu trữ mặc định của Ubuntu, vì vậy ta chỉ cần cập nhật index gói local của bạn và cài đặt phần mềm bằng apt . Ta cũng sẽ bao gồm tài liệu và một số tiện ích phổ biến:

  • sudo apt-get update
  • sudo apt-get install bind9 bind9utils bind9-doc

Bây giờ các thành phần Bind đã được cài đặt, ta có thể bắt đầu cấu hình server . Server chuyển tiếp sẽ sử dụng cấu hình server bộ nhớ đệm như một điểm khởi đầu, vì vậy, dù mục tiêu cuối cùng của bạn là gì, hãy cấu hình server làm server Cache ẩn trước.

Cấu hình làm Server DNS lưu vào cache

Đầu tiên, ta sẽ giới thiệu cách cấu hình Bind để hoạt động như một server DNS bộ nhớ đệm. Cấu hình này sẽ buộc server tìm kiếm một cách đệ quy câu trả lời từ các server DNS khác khi client đưa ra một truy vấn. Điều này nghĩa là nó đang thực hiện công việc truy vấn lần lượt từng server DNS liên quan cho đến khi tìm thấy toàn bộ phản hồi.

Các file cấu hình Bind được giữ theo mặc định trong một folder tại /etc/bind . Chuyển vào folder đó ngay bây giờ:

  • cd /etc/bind

Ta sẽ không quan tâm đến phần lớn các file trong folder này. Tệp cấu hình chính được gọi là named.conf ( namedbind là hai tên cho cùng một ứng dụng). File này chỉ đơn giản là lấy nguồn các named.conf.options file , các named.conf.local file , và các named.conf.default-zones file .

Đối với server DNS trong cache , ta sẽ chỉ sửa đổi file named.conf.options . Mở phần này trong editor của bạn với các quyền sudo:

  • sudo nano named.conf.options

Với các comment được loại bỏ để dễ đọc, file trông giống như sau:

/etc/bind/name.conf.options
options {         directory "/var/cache/bind";          dnssec-validation auto;          auth-nxdomain no;    # conform to RFC1035         listen-on-v6 { any; }; }; 

Để cấu hình bộ nhớ đệm, bước đầu tiên là cài đặt danh sách kiểm soát truy cập, hoặc ACL.

Là một server DNS sẽ được sử dụng để giải quyết các truy vấn đệ quy, ta không muốn server DNS bị lạm dụng bởi những user độc hại. Một cuộc tấn công được gọi là cuộc tấn công khuếch đại DNS đặc biệt rắc rối vì nó có thể khiến server của bạn tham gia vào các cuộc tấn công từ chối dịch vụ phân tán.

Tấn công khuếch đại DNS là một cách mà user độc hại cố gắng đánh sập các server hoặc trang web trên internet. Để làm như vậy, họ cố gắng tìm các server DNS công cộng sẽ giải quyết các truy vấn đệ quy. Chúng giả mạo địa chỉ IP của nạn nhân và gửi một truy vấn sẽ trả về một phản hồi lớn cho server DNS. Khi làm như vậy, server DNS phản hồi một yêu cầu nhỏ với trọng tải lớn hướng đến server nạn nhân, khuếch đại hiệu quả băng thông có sẵn của kẻ tấn công.

Lưu trữ một server DNS đệ quy, công cộng yêu cầu rất nhiều cấu hình và quản trị đặc biệt. Để tránh khả năng server của bạn bị sử dụng cho mục đích xấu, ta sẽ cấu hình danh sách địa chỉ IP hoặc dải mạng mà ta tin tưởng.

Phía trên khối options , ta sẽ tạo một khối mới có tên là acl . Tạo nhãn cho group ACL mà bạn đang cấu hình . Trong hướng dẫn này, ta sẽ gọi group là khách hàng tốt .

/etc/bind/name.conf.options
acl goodclients { };  options {     . . . 

Trong khối này, hãy liệt kê các địa chỉ IP hoặc mạng được phép sử dụng server DNS này. Vì cả server và client của ta đều hoạt động trong cùng một mạng con / 24 trong ví dụ của ta , ta sẽ giới hạn ví dụ cho mạng này. Bạn nên điều chỉnh điều này để bao gồm khách hàng của bạn và không có bên ngoài. Ta cũng sẽ thêm localhostlocalnets sẽ cố gắng thực hiện việc này tự động:

/etc/bind/name.conf.options
acl goodclients {     192.0.2.0/24;     localhost;     localnets; };  options {     . . . 

Bây giờ ta có ACL của các client mà ta muốn giải quyết yêu cầu, ta có thể cấu hình các khả năng đó trong khối options . Trong khối này, thêm các dòng sau:

/etc/bind/name.conf.options
. . .  options {     directory "/var/cache/bind";      recursion yes;     allow-query { goodclients; };     . . . 

Ta đã bật đệ quy một cách rõ ràng, và sau đó cấu hình tham số allow-query để sử dụng đặc tả ACL của ta . Ta có thể đã sử dụng một tham số khác, như allow-recursion để tham chiếu group ACL của ta . Nếu hiện tại và đệ quy được bật, allow-recursion sẽ chỉ ra danh sách các client có thể sử dụng các dịch vụ đệ quy.

Tuy nhiên, nếu allow-recursion không được đặt, thì Bind sẽ trở lại danh sách allow-query-cache , sau đó là danh sách allow-query và cuối cùng là mặc định chỉ dành localnetslocalhost . Vì ta đang cấu hình một server chỉ lưu vào bộ nhớ đệm (nó không có vùng có thẩm quyền riêng và không chuyển tiếp các yêu cầu), danh sách allow-query sẽ luôn chỉ áp dụng cho đệ quy. Ta đang sử dụng nó vì nó là cách chung nhất để chỉ định ACL.

Khi bạn thực hiện xong những thay đổi này, hãy lưu file .

Đây thực sự là tất cả những gì cần thiết cho một server DNS bộ nhớ đệm. Nếu bạn quyết định rằng đây là loại server bạn muốn sử dụng, vui lòng bỏ qua để tìm hiểu cách kiểm tra file cấu hình của bạn, khởi động lại dịch vụ và triển khai cấu hình client .

Nếu không, hãy tiếp tục đọc để tìm hiểu cách cài đặt server DNS chuyển tiếp.

Cấu hình làm Server DNS chuyển tiếp

Nếu server DNS chuyển tiếp phù hợp hơn với cơ sở hạ tầng của bạn, ta có thể dễ dàng cài đặt thay thế.

Ta sẽ bắt đầu với cấu hình mà ta đã bỏ qua trong cấu hình server bộ nhớ đệm. Tệp có named.conf.options sẽ giống như sau:

/etc/bind/name.conf.options
acl goodclients {         192.0.2.0/24;         localhost;         localnets; };  options {         directory "/var/cache/bind";          recursion yes;         allow-query { goodclients; };          dnssec-validation auto;          auth-nxdomain no;    # conform to RFC1035         listen-on-v6 { any; }; }; 

Ta sẽ sử dụng cùng một danh sách ACL để hạn chế server DNS của ta trong một danh sách khách hàng cụ thể. Tuy nhiên, ta cần thay đổi cấu hình để server không còn cố gắng thực hiện các truy vấn đệ quy nữa.

Để làm điều này, ta không thay đổi recursion thành không. Server chuyển tiếp vẫn đang cung cấp các dịch vụ đệ quy bằng cách trả lời các truy vấn cho các vùng mà nó không có thẩm quyền. Thay vào đó, ta cần cài đặt một danh sách các server bộ nhớ đệm để chuyển tiếp các yêu cầu của ta tới.

Điều này sẽ được thực hiện trong khối options {} . Đầu tiên, ta tạo một khối bên trong được gọi là bộ forwarders chứa địa chỉ IP của server định danh đệ quy mà ta muốn chuyển tiếp yêu cầu tới. Trong hướng dẫn của ta , ta sẽ sử dụng các server DNS công cộng của Google ( 8.8.8.88.8.4.4 ):

/etc/bind/name.conf.options
. . .  options {         directory "/var/cache/bind";          recursion yes;         allow-query { goodclients; };          forwarders {                 8.8.8.8;                 8.8.4.4;         };         . . . 

Sau đó, ta nên đặt lệnh forward thành “only” vì server này sẽ chuyển tiếp tất cả các yêu cầu và không nên cố gắng tự giải quyết các yêu cầu.

Tệp cấu hình sẽ trông như thế này khi bạn hoàn tất:

/etc/bind/name.conf.options
. . .  options {         directory "/var/cache/bind";          recursion yes;         allow-query { goodclients; };          forwarders {                 8.8.8.8;                 8.8.4.4;         };         forward only;          dnssec-validation auto;          auth-nxdomain no;    # conform to RFC1035         listen-on-v6 { any; }; }; 

Một thay đổi cuối cùng mà ta nên thực hiện là đối với các tham số dnssec . Với cấu hình hiện tại, tùy thuộc vào cấu hình của server DNS được chuyển tiếp, bạn có thể thấy một số lỗi giống như thế này trong log :

Jun 25 15:03:29 cache named[2512]: error (chase DS servers) resolving 'in-addr.arpa/DS/IN': 8.8.8.8#53 Jun 25 15:03:29 cache named[2512]: error (no valid DS) resolving '111.111.111.111.in-addr.arpa/PTR/IN': 8.8.4.4#53 

Để tránh điều này, hãy thay đổi cài đặt dnssec-validation thành “yes” và bật dnssec một cách rõ ràng:

/etc/bind/name.conf.options
. . .  forward only;  dnssec-enable yes; dnssec-validation yes;  auth-nxdomain no;    # conform to RFC1035 . . . 

Lưu file khi bạn hoàn tất. Đến đây bạn sẽ có một server DNS chuyển tiếp tại chỗ. Tiếp tục đến phần tiếp theo để xác thực các file cấu hình của bạn và khởi động lại daemon.

Kiểm tra cấu hình của bạn và khởi động lại ràng buộc

Đến đây bạn đã cấu hình server Bind của bạn làm server DNS bộ nhớ đệm hoặc server DNS chuyển tiếp, ta đã sẵn sàng áp dụng các thay đổi của bạn .

Trước khi bắt đầu và khởi động lại server Bind trên hệ thống của bạn , ta nên sử dụng các công cụ đi kèm của Bind để kiểm tra cú pháp của các file cấu hình.

Ta có thể làm điều này một cách dễ dàng bằng lệnh :

  • sudo named-checkconf

Nếu không có lỗi cú pháp nào trong cấu hình của bạn, dấu nhắc shell sẽ trả về ngay lập tức mà không hiển thị bất kỳ kết quả nào.

Nếu bạn có lỗi cú pháp trong file cấu hình của bạn , bạn sẽ được cảnh báo về lỗi và số dòng nơi nó xảy ra. Nếu điều này xảy ra, hãy quay lại và kiểm tra các file của bạn để tìm lỗi.

Khi bạn đã xác minh các file cấu hình của bạn không có bất kỳ lỗi cú pháp nào, hãy khởi động lại daemon Bind để thực hiện các thay đổi :

  • sudo systemctl restart bind9

Nếu bạn đã làm theo hướng dẫn cài đặt server ban đầu, firewall UFW được bật trên server của bạn. Ta cần cho phép lưu lượng DNS đến server của bạn để phản hồi các yêu cầu của khách hàng.

Bật một ngoại lệ đối với policy firewall cho Bind bằng lệnh :

  • sudo ufw allow Bind9

Sau đó, hãy theo dõi log server trong khi bạn cài đặt client của bạn đảm bảo rằng mọi thứ diễn ra suôn sẻ. Để nó chạy trên server :

  • sudo journalctl -u bind9 -f

Bây giờ, hãy mở một cửa sổ terminal mới để cấu hình các client của bạn.

Cấu hình Máy khách

Đến đây bạn đã cài đặt và chạy server của bạn , bạn có thể cấu hình client của bạn để sử dụng server DNS này cho các truy vấn.

Đăng nhập vào client của bạn. Đảm bảo rằng client bạn đang sử dụng đã được chỉ định trong group ACL mà bạn đặt cho server DNS của bạn . Nếu không, server DNS sẽ từ chối phục vụ các yêu cầu cho client .

Ta cần chỉnh sửa file /etc/resolv.conf để trỏ server của ta đến server định danh. Các thay đổi được thực hiện ở đây sẽ chỉ kéo dài cho đến khi khởi động lại, điều này rất tốt để thử nghiệm. Nếu hài lòng với kết quả kiểm tra của bạn , ta có thể thực hiện những thay đổi này vĩnh viễn.

Mở file với quyền sudo trong editor của bạn:

  • sudo nano /etc/resolv.conf

Tệp sẽ liệt kê các server DNS sẽ sử dụng để giải quyết các truy vấn bằng cách cài đặt các chỉ thị của nameserver . Comment tất cả các mục hiện tại và thêm một dòng nameserver trỏ đến server DNS của bạn:

/etc/resolv.conf
nameserver 192.0.2.2 # nameserver 8.8.4.4 # nameserver 8.8.8.8 # nameserver 209.244.0.3 

Lưu và đóng file .

Bây giờ, bạn có thể kiểm tra đảm bảo các truy vấn có thể giải quyết chính xác bằng cách sử dụng một số công cụ phổ biến.

Bạn có thể sử dụng ping để kiểm tra xem kết nối có thể được thực hiện với các domain :

  • ping -c 1 google.com
Output
PING google.com (173.194.33.1) 56(84) bytes of data. 64 bytes from sea09s01-in-f1.1e100.net (173.194.33.1): icmp_seq=1 ttl=55 time=63.8 ms --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 63.807/63.807/63.807/0.000 ms

Điều này nghĩa là khách hàng của ta có thể kết nối với google.com bằng server DNS của ta .

Ta có thể lấy thêm thông tin chi tiết bằng cách sử dụng các công cụ DNS cụ thể như dig . Hãy thử một domain khác lần này:

  • dig linuxfoundation.org
Output
; <<>> DiG 9.9.5-3-Ubuntu <<>> linuxfoundation.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35417 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;linuxfoundation.org. IN A ;; ANSWER SECTION: linuxfoundation.org. 6017 IN A 140.211.169.4 ;; Query time: 36 msec ;; SERVER: 192.0.2.2#53(192.0.2.2) ;; WHEN: Wed Jun 25 15:45:57 EDT 2014 ;; MSG SIZE rcvd: 64

Bạn có thể thấy rằng truy vấn mất 36 mili giây. Nếu ta thực hiện lại yêu cầu, server sẽ lấy dữ liệu từ bộ nhớ cache của nó, làm giảm thời gian phản hồi:

  • dig linuxfoundation.org
Output
; <<>> DiG 9.9.5-3-Ubuntu <<>> linuxfoundation.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18275 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;linuxfoundation.org. IN A ;; ANSWER SECTION: linuxfoundation.org. 6012 IN A 140.211.169.4 ;; Query time: 1 msec ;; SERVER: 192.0.2.2#53(192.0.2.2) ;; WHEN: Wed Jun 25 15:46:02 EDT 2014 ;; MSG SIZE rcvd: 64

Như bạn thấy , phản hồi được lưu trong bộ nhớ cache nhanh hơn đáng kể.

Ta cũng có thể kiểm tra tra cứu ngược bằng cách sử dụng địa chỉ IP mà ta đã tìm thấy ( 140.211.169.4 trong trường hợp của ta ) với tùy chọn dig's -x :

  • dig -x 140.211.169.4
Output
; <<>> DiG 9.9.5-3-Ubuntu <<>> -x 140.211.169.4 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61516 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;4.169.211.140.in-addr.arpa. IN PTR ;; ANSWER SECTION: 4.169.211.140.in-addr.arpa. 3402 IN CNAME 4.0-63.169.211.140.in-addr.arpa. 4.0-63.169.211.140.in-addr.arpa. 998 IN PTR load1a.linux-foundation.org. ;; Query time: 31 msec ;; SERVER: 192.0.2.2#53(192.0.2.2) ;; WHEN: Wed Jun 25 15:51:23 EDT 2014 ;; MSG SIZE rcvd: 117

Như bạn thấy, tra cứu ngược cũng thành công.

Quay lại server DNS, bạn sẽ xem có lỗi nào được ghi lại trong quá trình kiểm tra hay không. Một lỗi phổ biến có thể hiển thị như sau:

Output from sudo journalctl -u bind9 -f
. . . Jun 25 13:16:22 cache named[2004]: error (network unreachable) resolving 'ns4.apnic.net/A/IN': 2001:dc0:4001:1:0:1836:0:140#53 Jun 25 13:16:22 cache named[2004]: error (network unreachable) resolving 'ns4.apnic.com/A/IN': 2001:503:a83e::2:30#53 Jun 25 13:16:23 cache named[2004]: error (network unreachable) resolving 'sns-pb.isc.org/AAAA/IN': 2001:500:f::1#53 Jun 25 13:16:23 cache named[2004]: error (network unreachable) resolving 'ns3.nic.fr/A/IN': 2a00:d78:0:102:193:176:144:22#53

Những điều này cho biết server đang cố gắng phân giải thông tin IPv6 nhưng server không được cấu hình cho IPv6. Bạn có thể khắc phục sự cố này bằng cách yêu cầu Bind chỉ sử dụng IPv4.

Để làm điều này, ta có thể sửa đổi file đơn vị systemd khởi động Bind9:

  • sudo systemctl edit --full bind9

Bên trong file xuất hiện, thêm -4 vào cuối dòng ExecStart để hạn chế server đối với các yêu cầu IPv4:

Chỉnh sửa file đơn vị hệ thống bind9
[Unit] Description=BIND Domain Name Server Documentation=man:named(8) After=network.target  [Service] ExecStart=/usr/sbin/named -f -u bind -4 ExecReload=/usr/sbin/rndc reload ExecStop=/usr/sbin/rndc stop  [Install] WantedBy=multi-user.target 

Lưu file khi bạn hoàn tất.

Reload daemon systemd để đọc file đơn vị đã thay đổi vào hệ thống init:

  • sudo systemctl daemon-reload

Khởi động lại dịch vụ Bind9 để áp dụng các thay đổi :

  • sudo systemctl restart bind9

Bạn sẽ không thấy lại những lỗi này trong log .

Đặt Cài đặt DNS Máy khách vĩnh viễn

Như đã đề cập trước đây, cài đặt /etc/resolv.conf trỏ client đến server DNS của ta sẽ không tồn tại sau khi khởi động lại. Để áp dụng các thay đổi cuối cùng, ta cần sửa đổi các file được sử dụng để tạo file này.

Nếu client đang chạy Debian hoặc Ubuntu, hãy mở file /etc/network/interfaces với các quyền sudo:

  • sudo nano /etc/network/interfaces

Tìm tham số dns-nameservers . Bạn có thể xóa các giá trị đã nhập và thay thế chúng bằng server DNS của bạn hoặc chỉ cần thêm server DNS của bạn làm một trong các tùy chọn:

/ etc / network / interface
. . .  iface eth0 inet static         address 192.168.2.100         netmask 255.255.255.0         gateway 192.168.2.1         dns-nameservers 192.0.2.2  . . . 

Lưu file khi bạn hoàn tất. Lần tới khi bạn khởi động, cài đặt của bạn sẽ được áp dụng.

Nếu client đang chạy CentOS hoặc Fedora, bạn cần mở file /etc/sysconfig/network/network-scripts/ifcfg-eth0 :

  • sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

Bên trong, hãy tìm các dòng bắt đầu bằng DNS . Thay đổi DNS1 thành server DNS của bạn. Nếu bạn không muốn sử dụng các server DNS khác làm dự phòng, hãy xóa các mục nhập khác:

/ etc / sysconfig / network-scripts / ifcfg-eth0
. . . DNS1=192.0.2.2 . . . 

Lưu file khi bạn hoàn tất. Khách hàng của bạn nên sử dụng các cài đặt đó ở lần khởi động tiếp theo.

Kết luận

Đến đây bạn sẽ có server DNS chuyển tiếp hoặc bộ nhớ đệm được cấu hình để phục vụ các client của bạn . Đây có thể là một cách tốt để tăng tốc truy vấn DNS cho các máy bạn đang quản lý.


Tags:

Các tin liên quan

Cách cài đặt và cấu hình Postfix làm server SMTP chỉ gửi trên Ubuntu 16.04
2016-04-29
Cách lưu trữ server chia sẻ tệp bằng Pydio trên Ubuntu 14.04
2016-04-29
Thiết lập server ban đầu với Ubuntu 16.04
2016-04-21
Cách cài đặt Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 16.04
2016-04-21
Cách cài đặt Linux, Nginx, MySQL, PHP ( LEMP) trong Ubuntu 16.04
2016-04-21
Cách cài đặt Linux, Nginx, MySQL, PHP ( LEMP) trong Ubuntu 16.04
2016-04-21
Cách di chuyển một ứng dụng phân tích cú pháp sang server phân tích cú pháp trên Ubuntu 14.04
2016-02-20
Cách sử dụng Ansible và Tinc VPN để bảo mật cơ sở hạ tầng server của bạn
2016-02-18
Cách chạy server phân tích cú pháp trên Ubuntu 14.04
2016-02-03
Cách thiết lập server VNC trên Debian 8
2015-09-29