Cài đặt bind bằng dòng lệnh

Một phần của tài liệu Hệ điều hành mã nguồn mở (Trang 65 - 71)

Cài đặt dữ liệu cho DNS.

Ta cấu hình nhiều file cơ sở dữ liệu (database files) trong đó một file ánh xạ tất cả host name vào địa chỉ, và file khác ánh xạ từ địa chỉ vào host name (phân giải ngược). và file /etc/named.conf. Tất cả các entries trong database file được gọi là NDS resource records. Không phân biệt in hoa. Ta có các loại resource records trong database sau:

SOA record: Indicates authority for this zone data. NS record: Lists a name server for this zone. Other records: Data about hosts in this zone. A: Ánh xạ tên thành địa chỉ. PTR: Ánh xạ địa chỉ thành tên.

CNAME: Canonical name (for aliases). SOA (Start Of Authoryty) record.

Entry đầu tiên trong file là SOA (start of authority) resource record. Trong mỗi tập tin CSDL phải có một và chỉ một record SOA Record SOA chỉ ra rằng máy chủ name server là nơi cung cấp thông tin tin cậy từ dữ liệu có trong zone.

Cú pháp:

[ tên miền ] IN SOA [ tên-server-dns ] [ địa-chỉ-email ] ( Serial number Refresh number Retry number Expire number Time-to-live number )

Ví dụ: Cấu trúc của 1 record SOA (BIND name server)

linuxgroup.com. IN SOA dnsserver.linuxgroup.com. root.linuxgroup.com. ( 1; Serial

10800; Refresh after 3 hours 3600; Retry after 1 hour 604800; Expire after 1 week 86400 ); Minimum TTL of 1 day

Hệ điều hành mã nguồn mở

Trang 66 Tên miền linuxgroup.com. phải ở vị trí cột đầu tiên và kết thúc bằng dấu chấm.

IN là Internet.

dnsserver.linuxgroup.com. là tên của primary master name server của dữ liệu này.

root.linuxgroup.com. là địa chỉ mail của người phụ trách dữ liệu này. Lưu ý là địa chỉ mail thay thế dấu @ bằng dấu chấm sau root.

Dấu ( ) cho phép ta mở rộng ra viết thành nhiều dòng. Tất cả các tham số trong dấu ( ) được dùng cho các slave name servers.

serial: Khi một slave name server kết nối với master server để lấy dữ liệu, trước tiên nó sẽ kiểm tra số serial, nếu số serial của master lớn hơn tức là dữ liệu đã hết hạn sử dụng và nó sẽ load lại dữ liệu mới. vì vậy khi ta cập nhật dữ liệu trên name server ta nên tăng số serial.

refresh: Khoảng Thời gian (giây) mà slave biết phải kiểm tra lại dữ liệu có còn sử dụng được không.

retry: Nếu slave không thể kết nối với master name server sau một khoảng thời gian refresh thì nó sẽ cố gắng kết nối lại sau retry giây.

expire: Nếu slave không thể kết nối với master server sau khoảng thời gian expire giây, thì slave sẽ không trả lời cho vùng dữ liệu đó khi được truy vấn, vì nó cho rằng dữ liệu này đã quá cũ.

TTL: Time To Live, giá trị này được dùng cho tất cả các resource record trong file cơ sở dữ liệu. giá trị này cho phép những server khác cache lại dữ liệu trong 1 khoảng thời gian xác đĩnh TTL. NS (Name Server) record.

Record tiếp theo cần có trong zone là NS (name server) record. Mỗi name server cho zone sẽ có một NS record. Cú pháp: [ tên-domain ] IN NS [ máy-DNS-Server ] Ví dụ: 2 record NS sau: linuxgroup.com. IN NS dnsserver.linuxgroup.com. linuxgroup.com. IN NS server.linuxgroup.com.

 chỉ ra 2 name servers cho miền linuxgroup.com. A (Address) record và CNAME (Canonical Name) record. Tiếp theo bạn tạo ánh xạ name-to-address (từ tên vào địa chỉ).

Record A (Address) ánh xạ tên vào địa chỉ. Record CNAME tạo tên bí danh alias trỏ vào một tên canonical khác.

Cú pháp:

[ tên-máy-tính ] IN A [ địa-chỉ-IP ] Ví dụ: Một số record A trong tập tin db.linuxgroup ; Host addresses localhost.linuxgroup.com. IN A 127.0.0.1 dnsserver.linuxgroup.com. IN A 192.168.100.1 server.linuxgroup.com. IN A 192.168.100.2 ; Multi-homed hosts server.linuxgroup.com. IN A 192.168.100.2 server.linuxgroup.com IN A 192.168.100.3 ; Aliases

Hệ điều hành mã nguồn mở

Trang 67 server.linuxgroup.com. IN CNAME phong101.linuxgroup.com.

server.linuxgroup.com. IN CNAME www.linuxgroup.com.

Khi một name server tìm kiếm một tên và tìm thấy CNAME record thì nó sẽ thay thế tên đó bằng canonical name và tiếp tục tìm với tên mới. ví dụ. khi name server tìm www.linuxgroup.com, nó phát hiện một CNAME record trỏ đến dnsserver.linuxgroup.com, sau đó dnsserver.linuxgroup.com sẽ được tìm và kết quả trả về là cả 2.

MX (Mail Exchange) record.

DNS dùng record MX trong việc vận chuyển mail trên mạng Internet. Ban đầu chức năng chuyển mail dựa trên 2 record: record MD (mail destination) và record MF (mail forwarder). MD chỉ ra đích cuối cùng của một thông điệp mail có tên miền cụ thể. MF chỉ ra máy chủ trung gian sẽ chuyển tiếp mail đến được máy chủ đích cuối cùng. Tuy nhiên việc tổ chức hoạt động này không tốt. Do đó, chúng được tích hợp lại thanh một record là MX. Khi nhận được mail, trình chuyển mail (mailer) sẽ dựa vào record MX để quyết định đường đi của mail. Record MX chỉ ra một mail exchanger cho một miền – mail exchanger là một máy chủ xử lý (chuyển mail đến mailbox cục bộ hay làm gateway chuyền sang một giao thức chuyển mail khác như UUCP) hoặc chuyển tiếp mail đến một mail exchanger khác (trung gian) gần với mình nhất để đến tới máy chủ đích cuối cùng hơn dùng giao thức SMTP (Simple Mail Transfer Protocol).

Để tránh việc gửi mail bị lặp lại, record MX có thêm 1 giá trị bổ sung ngoài tên miền của mail exchanger là 1 số thứ tự tham chiếu. Đây là giá trị nguyên không dấu 16-bit (0-65535) chỉ ra thứ tự ưu tiên của các mail exchanger.

Khai báo cho mail, tất cả các mail sẽ được chuyển đi dựa vào MX record này. Cú pháp:

[ tên-domain ] IN MX [độ-ưu-tiên] [tên-mail-server] Ví dụ: Record MX sau:

linuxgroup.com. IN MX 0 mailserver.linuxgroup.com. linuxgroup.com. IN MX 5 mail.linuxgroup.com.

Các giá trị 0, 5 xác định độ ưu tiên của mail server. Giá trị càng nhỏ độ ưu tiên càng cao. Hai dòng trên có nghĩa sau: mail của miền linuxgroup.com sẽ được nhận bởi máy mailserver.linuxgroup.com và mail.linuxgroup.com trong đó máy mailserver.linuxgroup.com sẽ có độ ưu tiên hơn. Có nghĩa là mail sẽ được đưa về máy mailserver.linuxgroup.com, chỉ đưa về máy mail.linuxgroup.com khi mailserver.linuxgroup.com quá bận hay bị down.

Trình chuyển thư mailer sẽ thư phân phát thư đến mail exchanger có số thứ tự tham chiếu nhỏ nhất trước. Nếu không chuyển thư được thì mail exchanger với giá trị kế sau sẽ được chọn. Trong trường hợp có nhiều mail exchanger có cùng số tham chiếu thì mailer sẽ chọn ngẫu nhiên giữa chúng.

PTR (Pointer) record.

Tiếp theo ta tạo ánh xạ address-to-name (từ địa chỉ vào tên) trong tập tin db.172.16.1 bằng cách dùng record PTR (pointer) Cú pháp: [địa-chỉ-IP] IN PTR [tên-máy-tính] Ví dụ: 1.100.168.192.in-addr.arpa. IN PTR dnsserver.linuxgroup.com. 2.100.168.192.in-addr.arpa. IN PTR server.linuxgroup.com.

Hệ điều hành mã nguồn mở

Trang 68 3.100.168.192.in-addr.arpa. IN PTR mailserver.linuxgroup.com.

4.100.168.192.in-addr.arpa. IN PTR mail.linuxgroup.com. Thiết lập các file cấu hình của BIND.

Trước khi cấu hinh những Name Server chúng ta cần phải trải qua những bước sau:  Đăng kí một domain name.

 Tạo một danh sách những tên và địa chỉ IP tương ứng.  Tạo tập tin /etc/named.conf.

 Tạo những tập tin dữ liệu cho zone. Tập tin /etc/named.conf:

Sau khi tạo xong file cơ sở dữ liệu, name server cần phải được hướng dẫn để đọc file dữ liệu đó bằng cách cấu hình file /etc/named.conf. Tập tin này chứa thong tin quan trọng được sử dụng bởi daemon named khi daemon này start. Nội dung tập tin này như sau:

options {

directory "/var/named";

// Place additional options here. forwarders {

192.168.100.1; };

};

Directory “/var/named”: Khai báo vị trí lưu các file cơ sở dữ liệu.

Forwarders: chỉ ra những địa chỉ IP của các name server mà nó sẽ gửi yêu cầu truy vấn khi có nhu cầu.

zone "linuxgroup.com" in { type master;

file "db.linuxgroup.com"; };

Type : loại name server

 Master: nếu là primary name server.

 Slave: nếu là secondary name server, server này lưu một bản sao CSDL từ master. Nếu một tập tin được chỉ ra nó sẽ sao chép toàn bộ zone master về.

 Stub: tương tự như slave nhưng chỉ sao chép record NS từ Master chứ không phải toàn bộ dữ liệu.

 Hint: zone chỉ ra những root name server. Master: chỉ ra địa chỉ IP của master name server. File : tên tập tin cơ sở dữ liệu.

zone "." in { type hint;

file "db.cache"; };

=>Dòng cấu hình để name server dùng cache. Cấu hình Primary Name Server.

Hệ điều hành mã nguồn mở

Trang 69 Khi cấu hình Primary Name Server, bạn phải trải qua những bước sau:

 Định nghĩa zone trong tập tin /etc/named.conf.

 Tạo tập tin CSDL phân giải tên máy tính thành địa chỉ IP.  Tạo tập tin CSDL phân giải tên địa chỉ IP thành tên máy tinh. Sau đây là các bước tuần tự:

Tạo tập tin /etc/named.conf:

Ví dụ về tạo tập tin /etc/named.conf cho miền linuxgroup.com options { directory “/var/named”; }; zone “.” { type hint; file “named.ca”; }; zone “localhost” { type master; file “localhost.zone”; allow-update { none; }; }; zone "0.0.127.in-addr.arpa" in { type master; file "named.local"; allow-update { none; }; }; zone "linuxgroup.com" in { type master; file "named.hosts"; }; zone "100.168.192.in-addr.arpa" in { type master; file “named.rev” };

Tạo tập tin cơ sở dũ liệu chuyển đổi tên máy tính thành địa chỉ IP. Giả sử tập tin này có tên là named.host.

Tập tin này lưu danh sách tất cả những máy tính trong miền. Nó được dùng để phân giải tên máy tính thành địa chỉ IP. Những record khác như: CNAME, MX cũng được định nghĩa trong tập tin này.

Ví dụ:

@ IN SOA dnsserver.linuxgroup.com. root.linuxgroup.com. ( 2001112800; 10800; 1800; 36000; 86400 ) IN NS dnsserver.linuxgroup.com. IN MX 0 mailserver.linuxgroup.com. dnsserver IN A 192.168.100.1 server IN A 192.168.100.2

Hệ điều hành mã nguồn mở

Trang 70 mailserver IN A 192.168.100.3

www IN CNAME server.linuxgroup.com. Tạo tập tin CSDL chuyển đổi địa chỉ IP thành tên máy tính.

Giả sử tâp tin này có tên named.rev Tập tin này được sử dụng để phân giải địa chỉ IP thành tên máy.

Ví dụ:

@ IN SOA dnsserver.linuxgroup.com. root.linuxgroup.com. ( 2001112800; 10800; 1800; 36000; 86400 ) IN NS dnsserver.linuxgroup.com. IN MX 0 mailserver.linuxgroup.com. 1 IN PTR dnserver.linuxgroup.com. IN PTR server.linuxgroup.com. Cấu hình Secondary Name Server.

Cấu hình Secondary Name Server tương tự như cấu hình Primary Name Server nhưng có một số điểm khác như sau:

 Không tạo các tập tin CSDL cho zone. Những tập tin này sẽ tự động được sao chép từ Primary Name Server về lưu tại máy một bản.

 Trong tập tin /etc/named.conf thay thế thuộc tính type là master thành slave.  Cung cấp địa chỉ IP của Primary Name Server:

Sau đây là ví dụ tập tin named.conf cấu hình Secondary Name Server. options { directory “/etc/DNS”; forwarders { 192.168.20.1 } }; zone “.” { type hint; file “root.cache”; }; zone “localhost” { type master; file “localhost.zone”; allow-update { none; }; }; zone "0.0.127.in-addr.arpa" in { type master; file "127.0.0"; notify yes; }; zone "linuxgroup.com" in { type master; file "named.hosts"; }; zone "100.168.192.in-addr.arpa" in {

Hệ điều hành mã nguồn mở Trang 71 type master; file “named.rev” }; zone "secgroup.net" in { type slave; file "sec/secgroup.net "; masters { 192.168.100.1 }; }; zone "100.168.172.in-addr.arpa" in { type slave; file “named.rev” master { 172.168.100.1 };

Một phần của tài liệu Hệ điều hành mã nguồn mở (Trang 65 - 71)

Tải bản đầy đủ (PDF)

(115 trang)