Thứ tư, 29/04/2015 | 00:00 GMT+7

Cách cấu hình BIND làm server DNS Mạng riêng trên CentOS 7

Một phần quan trọng của việc quản lý cấu hình server và cơ sở hạ tầng bao gồm duy trì một cách dễ dàng để tra cứu network interface và địa chỉ IP theo tên, bằng cách cài đặt Hệ thống domain (DNS) thích hợp. Sử dụng domain đủ điều kiện (FQDN), thay vì địa chỉ IP, để chỉ định địa chỉ mạng giúp giảm bớt cấu hình của dịch vụ và ứng dụng, đồng thời tăng khả năng bảo trì của các file cấu hình. Cài đặt DNS của bạn cho mạng riêng của bạn là một cách tốt để cải thiện việc quản lý các server của bạn.

Trong hướng dẫn này, ta sẽ xem xét cách cài đặt server DNS nội bộ, sử dụng phần mềm server định danh BIND (BIND9) trên CentOS 7, được dùng bởi Server riêng ảo (VPS) của bạn để phân giải tên server riêng và IP riêng. các địa chỉ. Điều này cung cấp một cách trung tâm để quản lý tên server nội bộ và địa chỉ IP riêng của bạn, điều này không thể thiếu khi môi trường của bạn mở rộng đến nhiều server .

Phiên bản Ubuntu của hướng dẫn này có thể được tìm thấy tại đây .

Yêu cầu

Để hoàn thành hướng dẫn này, bạn cần những thứ sau:

  • Một số server đang chạy trong cùng một trung tâm dữ liệu và đã bật mạng riêng
  • VPS mới đóng role là server DNS chính, ns1
  • Tùy chọn: Một VPS mới để phục vụ như một server DNS phụ, ns2
  • Quyền truy cập root vào tất cả những điều trên ( bước 1-4 tại đây )

Nếu bạn không quen với các khái niệm DNS, bạn nên đọc ít nhất ba phần đầu tiên của Giới thiệu về Quản lý DNS của ta .

Server mẫu

Đối với các mục đích ví dụ, ta sẽ giả định như sau:

  • Ta có hai VPS hiện tại được gọi là “host1” và “host2”
  • Cả hai VPS đều tồn tại trong trung tâm dữ liệu nyc3
  • Cả hai VPS đều được kích hoạt mạng riêng (và nằm trên mạng con 10.128.0.0/16)
  • Cả hai VPS bằng cách nào đó đều liên quan đến ứng dụng web của ta chạy trên “example.com”

Với những giả định này, ta quyết định rằng việc sử dụng sơ đồ đặt tên sử dụng “nyc3.example.com” để tham chiếu đến mạng con hoặc vùng riêng tư của ta là hợp lý. Do đó, Tên Miền Tư nhân Đủ Điều kiện (FQDN) của host1 sẽ là “host1.nyc3.example.com”. Tham khảo bảng sau các chi tiết liên quan:

Tổ chức Role FQDN riêng Địa chỉ IP riêng
host1 Server lưu trữ chung 1 host1.nyc3.example.com 10.128.100.101
host2 Server lưu trữ chung 2 host2.nyc3.example.com 10.128.200.102

Lưu ý: Cài đặt hiện tại của bạn sẽ khác, nhưng tên và địa chỉ IP mẫu sẽ được sử dụng để trình bày cách cấu hình server DNS để cung cấp DNS nội bộ hoạt động. Bạn có thể dễ dàng điều chỉnh cài đặt này với môi trường của riêng mình bằng cách thay thế tên server và địa chỉ IP riêng bằng của bạn . Không nhất thiết phải sử dụng tên vùng của trung tâm dữ liệu trong sơ đồ đặt tên của bạn, nhưng ta sử dụng nó ở đây để biểu thị rằng các server này thuộc mạng riêng của trung tâm dữ liệu cụ thể. Nếu bạn sử dụng nhiều trung tâm dữ liệu, bạn có thể cài đặt một DNS nội bộ trong mỗi trung tâm dữ liệu tương ứng.

Mục tiêu của ta

Đến cuối hướng dẫn này, ta sẽ có một server DNS chính, ns1 và tùy chọn một server DNS phụ, ns2 , sẽ phục vụ như một bản backup .

Đây là một bảng với các tên và địa chỉ IP mẫu:

Tổ chức Role FQDN riêng Địa chỉ IP riêng
ns1 Server DNS chính ns1.nyc3.example.com 10.128.10.11
ns2 Server DNS phụ ns2.nyc3.example.com 10.128.20.12

Hãy bắt đầu bằng cách cài đặt server DNS chính của ta , ns1.

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

Lưu ý: Văn bản được tô màu đỏ rất quan trọng! Nó thường được sử dụng để biểu thị thứ gì đó cần được thay thế bằng cài đặt của bạn hoặc nó cần được sửa đổi hoặc thêm vào file cấu hình. Ví dụ: nếu bạn thấy thông tin như host1.nyc3.example.com , hãy thay thế nó bằng FQDN của server của bạn . Tương tự như vậy, nếu bạn thấy host1_private_IP , hãy thay thế nó bằng địa chỉ IP riêng của server của bạn .

Trên cả hai server DNS, ns1ns2 , hãy cài đặt BIND với yum:

  • sudo yum install bind bind-utils

Xác nhận dấu nhắc bằng lệnh y .

Bây giờ BIND đã được cài đặt, hãy cấu hình server DNS chính.

Cấu hình server DNS chính

Cấu hình của BIND bao gồm nhiều file , được bao gồm từ file cấu hình chính, named.conf . Các tên file này bắt đầu bằng “tên” vì đó là tên của quá trình BIND chạy. Ta sẽ bắt đầu với việc cấu hình file tùy chọn.

Cấu hình ràng buộc

Quá trình của BIND được gọi là được đặt tên . Do đó, nhiều file tham chiếu đến "được đặt tên" thay vì "BIND".

Trên ns1 , mở file named.conf để chỉnh sửa:

  • sudo vi /etc/named.conf

Phía trên khối options hiện có, tạo một khối ACL mới được gọi là “ tin cậy ”. Đây là nơi ta sẽ xác định danh sách các client mà ta sẽ cho phép truy vấn DNS đệ quy từ đó (tức là các server của bạn nằm trong cùng một trung tâm dữ liệu như ns1). Sử dụng các địa chỉ IP riêng tư mẫu của ta , ta sẽ thêm ns1 , ns2 , host1host2 vào danh sách các ứng dụng client tin cậy của ta :

/etc/name.conf - 1 trên 4
acl "trusted" {         10.128.10.11;    # ns1 - can be set to localhost         10.128.20.12;    # ns2         10.128.100.101;  # host1         10.128.200.102;  # host2 }; 

Bây giờ ta đã có danh sách các client DNS tin cậy , ta sẽ muốn chỉnh sửa khối options . Thêm địa chỉ IP riêng của ns1 vào lệnh listen-on port 53 và comment dòng listen-on-v6 :

/etc/name.conf - 2/4
options {         listen-on port 53 { 127.0.0.1; 10.128.10.11; }; #        listen-on-v6 port 53 { ::1; }; ... 

Bên dưới các mục nhập đó, hãy thay đổi chỉ thị allow-transfer thành từ “no” thành địa chỉ IP riêng của ns2 . Ngoài ra, hãy thay đổi chỉ thị allow-query từ “localhost” thành “trust”:

/etc/name.conf - 3/4
... options { ...         allow-transfer { 10.128.20.12; };      # disable zone transfers by default ...         allow-query { trusted; };  # allows queries from "trusted" clients ... 

Ở cuối file , thêm dòng sau:

/etc/name.conf - 4/4
include "/etc/named/named.conf.local"; 

Bây giờ, hãy lưu và thoát named.conf . Cấu hình trên chỉ định rằng chỉ server của bạn ( server “ tin cậy ”) mới có thể truy vấn server DNS của bạn.

Tiếp theo, ta sẽ cấu hình file local , để chỉ định các vùng DNS của ta .

Cấu hình file local

Trên ns1 , mở file named.conf.local để chỉnh sửa:

  • sudo vi /etc/named/named.conf.local

Tệp phải trống. Ở đây, ta sẽ chỉ định các vùng chuyển tiếp và đảo ngược của ta .

Thêm vùng chuyển tiếp với các dòng sau (thay thế tên vùng bằng tên của bạn ):

/etc/name/name.conf.local - 1 trong 2
zone "nyc3.example.com" {     type master;     file "/etc/named/zones/db.nyc3.example.com"; # zone file path }; 

Giả sử rằng mạng con riêng của ta là 10.128.0.0/16 , hãy thêm vùng đảo ngược bằng các dòng sau ( lưu ý tên vùng đảo ngược của ta bắt đầu bằng “128.10” là đảo ngược bát phân của “10.128”):

/etc/name/name.conf.local - 2 trên 2
zone "128.10.in-addr.arpa" {     type master;     file "/etc/named/zones/db.10.128";  # 10.128.0.0/16 subnet     }; 

Nếu server của bạn trải dài nhiều mạng con riêng tư nhưng nằm trong cùng một trung tâm dữ liệu, hãy đảm bảo chỉ định một vùng và file vùng bổ sung cho từng mạng con riêng biệt. Khi bạn hoàn tất việc thêm tất cả các vùng mong muốn của bạn , hãy lưu và thoát khỏi file named.conf.local .

Bây giờ các vùng của ta đã được chỉ định trong BIND, ta cần tạo các file vùng chuyển tiếp và đảo ngược tương ứng.

Tạo file vùng chuyển tiếp

Tệp vùng chuyển tiếp là nơi ta xác định các bản ghi DNS để tra cứu DNS chuyển tiếp. Nghĩa là, khi DNS nhận được một truy vấn tên, ví dụ: “host1.nyc3.example.com”, nó sẽ tìm trong file vùng chuyển tiếp để phân giải địa chỉ IP riêng tương ứng của host1 .

Hãy tạo folder chứa các file vùng của ta . Theo cấu hình tên.conf.local của ta , vị trí đó phải là /etc/named/zones :

  • sudo chmod 755 /etc/named
  • sudo mkdir /etc/named/zones

Bây giờ hãy chỉnh sửa file vùng chuyển tiếp của ta :

  • sudo vi /etc/named/zones/db.nyc3.example.com

Đầu tiên, bạn cần thêm bản ghi SOA. Thay thế ns1 FQDN được đánh dấu bằng FQDN của bạn , sau đó thay thế “nyc3.example.com” thứ hai bằng domain của bạn . Mỗi khi bạn chỉnh sửa file vùng, bạn nên tăng giá trị nối tiếp trước khi bạn khởi động lại quy trình đã named – ta sẽ tăng nó thành “3”. Nó trông giống như sau :

/etc/name/zones/db.nyc3.example.com - 1/3
@       IN      SOA     ns1.nyc3.example.com. admin.nyc3.example.com. (                               3         ; Serial              604800     ; Refresh               86400     ; Retry             2419200     ; Expire              604800 )   ; Negative Cache TTL 

Sau đó, thêm các bản ghi server định danh của bạn với các dòng sau (thay thế tên bằng tên của bạn ). Lưu ý cột thứ hai chỉ định rằng đây là các bản ghi "NS":

/etc/name/zones/db.nyc3.example.com - 2/3
; name servers - NS records     IN      NS      ns1.nyc3.example.com.     IN      NS      ns2.nyc3.example.com. 

Sau đó, thêm các bản ghi A cho các server của bạn thuộc vùng này. Điều này bao gồm bất kỳ server nào có tên mà ta muốn kết thúc bằng “.nyc3.example.com” (thay thế tên và địa chỉ IP riêng). Sử dụng tên mẫu và địa chỉ IP riêng của ta , ta sẽ thêm các bản ghi A cho ns1 , ns2 , host1host2 như sau:

/etc/name/zones/db.nyc3.example.com - 3/3
; name servers - A records ns1.nyc3.example.com.          IN      A       10.128.10.11 ns2.nyc3.example.com.          IN      A       10.128.20.12  ; 10.128.0.0/16 - A records host1.nyc3.example.com.        IN      A      10.128.100.101 host2.nyc3.example.com.        IN      A      10.128.200.102 

Lưu và thoát khỏi file db.nyc3.example.com .

Tệp vùng chuyển tiếp ví dụ cuối cùng của ta trông giống như sau:

/etc/name/zones/db.nyc3.example.com - hoàn thành
  • $TTL 604800
  • @ IN SOA ns1.nyc3.example.com. admin.nyc3.example.com. (
  • 3 ; Serial
  • 604800 ; Refresh
  • 86400 ; Retry
  • 2419200 ; Expire
  • 604800 ) ; Negative Cache TTL
  • ;
  • ; name servers - NS records
  • IN NS ns1.nyc3.example.com.
  • IN NS ns2.nyc3.example.com.
  • ; name servers - A records
  • ns1.nyc3.example.com. IN A 10.128.10.11
  • ns2.nyc3.example.com. IN A 10.128.20.12
  • ; 10.128.0.0/16 - A records
  • host1.nyc3.example.com. IN A 10.128.100.101
  • host2.nyc3.example.com. IN A 10.128.200.102

Bây giờ ta hãy chuyển sang (các) file vùng đảo ngược.

Tạo (các) file vùng đảo ngược

Tệp vùng ngược là nơi ta xác định bản ghi DNS PTR để tra cứu DNS ngược. Nghĩa là, khi DNS nhận được một truy vấn theo địa chỉ IP, ví dụ: “10.128.100.101”, nó sẽ tìm trong (các) file vùng đảo ngược để phân giải FQDN tương ứng, “host1.nyc3.example.com” trong trường hợp này .

Trên ns1 , đối với mỗi vùng đảo ngược được chỉ định trong file named.conf.local , hãy tạo file vùng đảo ngược.

Chỉnh sửa file vùng đảo ngược tương ứng với (các) vùng đảo ngược được xác định trong named.conf.local :

  • sudo vi /etc/named/zones/db.10.128

Theo cách tương tự như file vùng chuyển tiếp, hãy thay thế FQDN ns1 được đánh dấu bằng FQDN của bạn , sau đó thay thế “nyc3.example.com” thứ hai bằng domain của bạn . Mỗi khi bạn chỉnh sửa file vùng, bạn nên tăng giá trị nối tiếp trước khi bạn khởi động lại quy trình đã named – ta sẽ tăng nó thành “3”. Nó trông giống như sau :

/etc/name/zones/db.10.128 - 1/3
@       IN      SOA     ns1.nyc3.example.com. admin.nyc3.example.com. (                               3         ; Serial                          604800         ; Refresh                           86400         ; Retry                         2419200         ; Expire                          604800 )       ; Negative Cache TTL 

Sau đó, thêm các bản ghi server định danh của bạn với các dòng sau (thay thế tên bằng tên của bạn ). Lưu ý cột thứ hai chỉ định rằng đây là các bản ghi "NS":

/etc/name/zones/db.10.128 - 2/3
; name servers - NS records       IN      NS      ns1.nyc3.example.com.       IN      NS      ns2.nyc3.example.com. 

Sau đó, thêm các bản ghi PTR cho tất cả các server của bạn có địa chỉ IP trên mạng con của file vùng mà bạn đang chỉnh sửa. Trong ví dụ của ta , điều này bao gồm tất cả các server của ta vì chúng đều nằm trên mạng con 10.128.0.0/16. Lưu ý cột đầu tiên bao gồm hai octet cuối cùng của địa chỉ IP riêng của server của bạn theo thứ tự đảo ngược. Đảm bảo thay thế tên và địa chỉ IP riêng để trùng với server của bạn:

/etc/name/zones/db.10.128 - 3/3
; PTR Records 11.10   IN      PTR     ns1.nyc3.example.com.    ; 10.128.10.11 12.20   IN      PTR     ns2.nyc3.example.com.    ; 10.128.20.12 101.100 IN      PTR     host1.nyc3.example.com.  ; 10.128.100.101 102.200 IN      PTR     host2.nyc3.example.com.  ; 10.128.200.102 

Lưu và thoát khỏi file vùng đảo ngược (lặp lại phần này nếu bạn cần thêm nhiều file vùng đảo ngược).

Tệp vùng đảo ngược mẫu cuối cùng của ta trông giống như sau:

/etc/name/zones/db.10.128 - hoàn thành
  • $TTL 604800
  • @ IN SOA nyc3.example.com. admin.nyc3.example.com. (
  • 3 ; Serial
  • 604800 ; Refresh
  • 86400 ; Retry
  • 2419200 ; Expire
  • 604800 ) ; Negative Cache TTL
  • ; name servers
  • IN NS ns1.nyc3.example.com.
  • IN NS ns2.nyc3.example.com.
  • ; PTR Records
  • 11.10 IN PTR ns1.nyc3.example.com. ; 10.128.10.11
  • 12.20 IN PTR ns2.nyc3.example.com. ; 10.128.20.12
  • 101.100 IN PTR host1.nyc3.example.com. ; 10.128.100.101
  • 102.200 IN PTR host2.nyc3.example.com. ; 10.128.200.102

Kiểm tra cú pháp cấu hình BIND

Chạy lệnh sau để kiểm tra cú pháp của các file có named.conf* :

  • sudo named-checkconf

Nếu các file cấu hình được đặt tên của bạn không có lỗi cú pháp, bạn sẽ quay lại dấu nhắc shell và không thấy thông báo lỗi nào. Nếu có sự cố với file cấu hình của bạn, hãy xem lại thông báo lỗi và phần Định cấu hình server DNS chính , sau đó thử lại named-checkconf .

Lệnh named-checkzone được dùng để kiểm tra tính đúng đắn của các file vùng của bạn. Đối số đầu tiên của nó chỉ định tên vùng và đối số thứ hai chỉ định file vùng tương ứng, cả hai đều được xác định trong named.conf.local .

Ví dụ: để kiểm tra cấu hình vùng chuyển tiếp “ nyc3.example.com ”, hãy chạy lệnh sau (thay đổi tên để phù hợp với vùng chuyển tiếp và file của bạn):

  • sudo named-checkzone nyc3.example.com /etc/named/zones/db.nyc3.example.com

Và để kiểm tra cấu hình vùng đảo ngược “ 128.10 .in- addr.arpa ”, hãy chạy lệnh sau (thay đổi các số để trùng với vùng đảo ngược và file của bạn):

  • sudo named-checkzone 128.10.in-addr.arpa /etc/named/zones/db.10.128

Khi tất cả các file cấu hình và vùng của bạn không có lỗi trong chúng, bạn nên sẵn sàng khởi động lại dịch vụ BIND.

Bắt đầu BIND

Bắt đầu BIND:

  • sudo systemctl start named

Đến đây bạn sẽ muốn kích hoạt nó, vì vậy nó sẽ bắt đầu khi server khởi động :

  • sudo systemctl enable named

Server DNS chính của bạn hiện đã được cài đặt và sẵn sàng phản hồi các truy vấn DNS. Hãy chuyển sang tạo server DNS phụ.

Cấu hình server DNS phụ

Trong hầu hết các môi trường, bạn nên cài đặt một server DNS phụ sẽ phản hồi các yêu cầu nếu server chính không khả dụng. May mắn là server DNS phụ dễ cấu hình hơn nhiều.

Trên ns2 , chỉnh sửa file named.conf :

  • sudo vi /etc/named.conf

Lưu ý: Nếu bạn muốn bỏ qua các hướng dẫn này, bạn có thể sao chép file named.conf của ns1 và sửa đổi file đó để nghe trên địa chỉ IP riêng của ns2 và không cho phép chuyển.

Phía trên khối options hiện có, tạo một khối ACL mới được gọi là “ tin cậy ”. Đây là nơi ta sẽ xác định danh sách các client mà ta sẽ cho phép truy vấn DNS đệ quy từ đó (tức là các server của bạn nằm trong cùng một trung tâm dữ liệu như ns1). Sử dụng các địa chỉ IP riêng tư mẫu của ta , ta sẽ thêm ns1 , ns2 , host1host2 vào danh sách các ứng dụng client tin cậy của ta :

/etc/name.conf - 1 trên 4
acl "trusted" {         10.128.10.11;    # ns1 - can be set to localhost         10.128.20.12;    # ns2         10.128.100.101;  # host1         10.128.200.102;  # host2 }; 

Bây giờ ta đã có danh sách các client DNS tin cậy , ta sẽ muốn chỉnh sửa khối options . Thêm địa chỉ IP riêng của ns1 vào lệnh listen-on port 53 và comment dòng listen-on-v6 :

/etc/name.conf - 2/4
options {         listen-on port 53 { 127.0.0.1; 10.128.20.12; }; #        listen-on-v6 port 53 { ::1; }; ... 

Thay đổi chỉ thị allow-query từ “localhost” thành “trust”:

/etc/name.conf - 3/4
... options { ...         allow-query { trusted; }; # allows queries from "trusted" clients ... 

Ở cuối file , thêm dòng sau:

/etc/name.conf - 4/4
include "/etc/named/named.conf.local"; 

Bây giờ, hãy lưu và thoát named.conf . Cấu hình trên chỉ định rằng chỉ server của bạn ( server “ tin cậy ”) mới có thể truy vấn server DNS của bạn.

Tiếp theo, ta sẽ cấu hình file local , để chỉ định các vùng DNS của ta .

Lưu và thoát named.conf .

Bây giờ hãy chỉnh sửa file named.conf.local :

  • sudo chmod 755 /etc/named
  • sudo vi /etc/named/named.conf.local

Xác định các vùng phụ tương ứng với các vùng chính trên server DNS chính. Lưu ý loại là “ slaver ”, các file không chứa một con đường, và có một masters chỉ thị cần được cài đặt để IP riêng của server DNS chính. Nếu bạn đã xác định nhiều vùng đảo ngược trong server DNS chính, hãy đảm bảo thêm tất cả chúng tại đây:

/etc/name/name.conf.local
  • zone "nyc3.example.com" {
  • type slave;
  • file "slaves/db.nyc3.example.com";
  • masters { 10.128.10.11; }; # ns1 private IP
  • };
  • zone "128.10.in-addr.arpa" {
  • type slave;
  • file "slaves/db.10.128";
  • masters { 10.128.10.11; }; # ns1 private IP
  • };

Bây giờ lưu và thoát named.conf.local .

Chạy lệnh sau để kiểm tra tính hợp lệ của các file cấu hình của bạn:

  • sudo named-checkconf

Sau khi kiểm tra xong, hãy bắt đầu BIND:

  • sudo systemctl start named

Bật BIND để bắt đầu khi server khởi động :

sudo systemctl enable named 

Đến đây bạn có server DNS chính và phụ để phân giải tên mạng riêng và địa chỉ IP. Đến đây bạn phải cấu hình server của bạn để sử dụng server DNS riêng của bạn.

Cấu hình client DNS

Trước khi tất cả các server của bạn trong ACL “ tin cậy ” có thể truy vấn các server DNS của bạn, bạn phải cấu hình từng server đó để sử dụng ns1ns2 làm server định danh. Quá trình này khác nhau tùy thuộc vào hệ điều hành, nhưng đối với hầu hết các bản phân phối Linux, nó liên quan đến việc thêm server định danh của bạn vào file /etc/resolv.conf .

Khách hàng CentOS

Trên CentOS, RedHat và Fedora Linux VPS, chỉ cần chỉnh sửa resolv.conf :

  • sudo vi /etc/resolv.conf

Sau đó, thêm các dòng sau vào ĐẦU của file (thay thế domain riêng của bạn và địa chỉ IP riêng ns1ns2 ):

/etc/resolv.conf
search nyc3.example.com  # your private domain nameserver 10.128.10.11  # ns1 private IP address nameserver 10.128.20.12  # ns2 private IP address 

Bây giờ lưu và thoát. Máy khách của bạn hiện đã được cấu hình để sử dụng các server DNS của bạn.

Ứng dụng khách Ubuntu

Trên Ubuntu và Debian Linux VPS, bạn có thể chỉnh sửa file head , file này được thêm trước vào resolv.conf khi khởi động:

  • sudo vi /etc/resolvconf/resolv.conf.d/head

Thêm các dòng sau vào file (thay thế domain riêng của bạn và địa chỉ IP riêng ns1ns2 ):

/etc/resolvconf/resolv.conf.d/head
search nyc3.example.com  # your private domain nameserver 10.128.10.11  # ns1 private IP address nameserver 10.128.20.12  # ns2 private IP address 

Bây giờ, hãy chạy resolvconf để tạo ra một resolv.conf resolvconf mới:

  • sudo resolvconf -u

Máy khách của bạn hiện đã được cấu hình để sử dụng các server DNS của bạn.

Khách hàng thử nghiệm

Sử dụng nslookup — có trong gói “bind-utils” — để kiểm tra xem khách hàng của bạn có thể truy vấn server định danh của bạn hay không. Bạn có thể thực hiện việc này trên tất cả các client mà bạn đã cấu hình và nằm trong ACL “ tin cậy ”.

Tra cứu chuyển tiếp

Ví dụ: ta có thể thực hiện tra cứu chuyển tiếp để truy xuất địa chỉ IP của host1.nyc3.example.com bằng cách chạy lệnh sau:

  • nslookup host1

Truy vấn “host1” mở rộng thành “host1.nyc3.example.com do tùy chọn search được đặt thành domain phụ riêng tư của bạn và các truy vấn DNS sẽ cố gắng tìm kiếm domain phụ đó trước khi tìm kiếm server ở nơi khác. Đầu ra của lệnh trên sẽ giống như sau:

Output:
Server: 10.128.10.11 Address: 10.128.10.11#53 Name: host1.nyc3.example.com Address: 10.128.100.101

Tra cứu ngược

Để kiểm tra tra cứu ngược, hãy truy vấn server DNS với địa chỉ IP riêng của host1 :

  • nslookup 10.128.100.101

Bạn sẽ thấy kết quả giống như sau:

Output:
Server: 10.128.10.11 Address: 10.128.10.11#53 11.10.128.10.in-addr.arpa name = host1.nyc3.example.com.

Nếu tất cả tên và địa chỉ IP phân giải thành các giá trị chính xác, điều đó nghĩa là các file vùng của bạn được cấu hình đúng cách. Nếu bạn nhận được các giá trị không mong muốn, hãy nhớ xem lại các file vùng trên server DNS chính của bạn (ví dụ: db.nyc3.example.comdb.10.128 ).

Xin chúc mừng! Server DNS nội bộ của bạn hiện đã được cài đặt đúng cách! Bây giờ ta sẽ đề cập đến việc duy trì profile vùng của bạn.

Duy trì bản ghi DNS

Đến đây bạn có một DNS nội bộ đang hoạt động, bạn cần duy trì các bản ghi DNS của bạn để chúng phản ánh chính xác môi trường server của bạn.

Thêm server vào DNS

Khi nào bạn thêm một server lưu trữ vào môi trường của bạn (trong cùng một trung tâm dữ liệu), bạn cần thêm nó vào DNS. Dưới đây là danh sách các bước bạn cần thực hiện:

Server tên chính

  • Tệp vùng chuyển tiếp: Thêm bản ghi "A" cho server mới, tăng giá trị của "Serial"
  • Tệp vùng đảo ngược: Thêm bản ghi “PTR” cho server mới, tăng giá trị của “Serial”
  • Thêm địa chỉ IP riêng của server mới của bạn vào ACL " tin cậy " ( named.conf.options )

Sau đó reload BIND:

  • sudo systemctl reload named

Server tên phụ

  • Thêm địa chỉ IP riêng của server mới của bạn vào ACL " tin cậy " ( named.conf.options )

Sau đó reload BIND:

  • sudo systemctl reload named

Cấu hình server mới để sử dụng DNS của bạn

  • Cấu hình Resolutionv.conf để sử dụng các server DNS của bạn
  • Kiểm tra bằng nslookup

Xóa server khỏi DNS

Nếu bạn xóa một server khỏi môi trường của bạn hoặc chỉ muốn xóa nó khỏi DNS, chỉ cần xóa tất cả những thứ đã được thêm vào khi bạn thêm server vào DNS (tức là ngược lại với các bước ở trên).

Kết luận

Đến đây bạn có thể đề cập đến các network interface riêng của server của bạn theo tên, thay vì địa chỉ IP. Điều này làm cho việc cấu hình các dịch vụ và ứng dụng trở nên dễ dàng hơn vì bạn không còn phải nhớ địa chỉ IP riêng và các file sẽ dễ đọc và dễ hiểu hơn. Ngoài ra, bây giờ bạn có thể thay đổi cấu hình của bạn để trỏ đến một server mới ở một nơi duy nhất, server DNS chính của bạn, thay vì phải chỉnh sửa nhiều file cấu hình phân tán, điều này giúp giảm bớt việc bảo trì.

Khi bạn đã cài đặt DNS nội bộ và các file cấu hình của bạn đang sử dụng FQDN riêng tư để chỉ định các kết nối mạng, điều quan trọng là các server DNS của bạn phải được duy trì đúng cách. Nếu cả hai đều không khả dụng, các dịch vụ và ứng dụng của bạn dựa vào chúng sẽ ngừng hoạt động bình thường. Đây là lý do tại sao bạn nên cài đặt DNS của bạn với ít nhất một server phụ và duy trì các bản backup hoạt động của tất cả chúng.


Tags:

Các tin liên quan

Cách cấu hình BIND làm server DNS Mạng riêng trên CentOS 7
2015-04-29
Cách cài đặt server Bacula trên CentOS 7
2015-04-15
Cách cài đặt Bacula Server trên Ubuntu 14.04
2015-04-09
Thiết lập ban đầu của server Fedora 21
2015-03-31
Cách giám sát tác nhân OSSEC bằng server OSSEC trên Ubuntu 14.04
2015-03-12
Cách thiết lập server OSRM trên Ubuntu 14.04
2015-02-20
Cách cài đặt Linux Dash trên Ubuntu 14.04
2015-02-18
Cách bảo vệ server Linux của bạn chống lại lỗ hổng GHOST
2015-01-28
Cách cài đặt và cấu hình Postfix làm server SMTP chỉ gửi trên Ubuntu 14.04
2015-01-23
Cách cấu hình xác thực dựa trên khóa SSH trên server FreeBSD
2015-01-14