Đồ án DNS trên LINUX

Phụ lục

Lời cảm ơn 1

Lời nhận xét 2

Lời mở đầu 3

Chương I. GIỚI THIỆU HỆ THỐNG TÊN MIỀN DNS 5

I. Tên miền là gì ? 5

II. Hệ thống tên miền là gì (Domain Name System) 6

1. Lịch sử phát triển hệ thống tên miền 6

2. Mục đích của hệ thống tên miền (DNS) 7

III. Cấu trúc của hệ thống tên miền (DNS) 7

1. Cấu trúc cơ sở dữ liệu 7

2. Cấu trúc của tên miền 9

a)Cách đặt tên miền 9

b)Các loại tên miền 9

c) Cấu trúc tên miền : 11

3. Máy chủ quản lý tên miền (Domain name server-dns) 12

Chương II. CƠ SỞ DỮ LIỆU DNS SERVER 16

I. Bản ghi SOA (Start of Authority ) 16

II. A (Address) và CNAME (Canonical Name) 18

1.Bản ghi kiểu A 18

2. Bản ghi CNAME 19

III.MX (Mail Exchange) 19

IV. Bản ghi NS 21

V. Bản ghi PTR 22

VI.AAAA. 22

VII. SRV. 22

Chương III. HOẠT ĐỘNG CỦA DNS SERVER TRONG LINUX 24

I. Phân loại DNS server 24

1. Primary server 24

2. Secondary server 24

3. Caching-only server 26

II. Đồng bộ dữ liệu giữa các DNS server( Zone transfer) 27

1. Các phương pháp đồng bộ dữ liệu giữa các DNS server 27

2. Cơ chế hoạt động đồng bộ dữ liệu giữa các DNS server 28

III. Cơ chế phân giải tên 30

1. Phân giải tên thành IP 30

2. Phân giải tên IP thành tên máy 33

IV. Hoạt động của Name Server trong Linux 35

V. Một số khái niệm cơ bản. 35

1. Domain name và zone. 35

2. Fully Qualified Domain Name (FQDN) 36

3. Sự ủy quyền giữa các miền con (Delegating Subdomains) 37

4. Forwarders. 37

5. Stub zone. 38

6. Dynamic DNS 39

7. Active Directory- integrated zone. 39

Chương IV. CẤU HÌNH CỦA NAME SERVER TRONG LINUX 40

I.Cài đặt BIND 40

II.Cài đặt và cấu hình DNS 40

1 Một số file cấu hình quan trọng. 40

1. Tập tin var/named/chroot/etc/named.conf 41

2. Cấu hình zone file 44

2. Ví dụ cấu hình DNS 46

IV. Cấu hình Secondary Name Server 48

V. Cấu hình DNS delegation 49

Kết luận: 51

Tài Liệu tham khảo 52

 

 

doc54 trang | Chia sẻ: netpro | Lượt xem: 6289 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án DNS trên LINUX, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
là đỉnh của nhánh cây của tên miền. Nó xác định kết thúc của domain. Nó thể diễn đơn giản chỉ là dấu chấm “.” Tên miền cấp một (Top-level-domain) : Là gồm vài kí tự xác định một nước, khu vực hoặc tổ chức. Nó đươc thể hiện là “.com” Tên miền cấp hai (Second-level-domain): Nó rất đa dạng rất đa dạng có thể là tên một công ty, một tổ chức hay một cá nhân. Tên miền cấp nhỏ hơn (Subdomain): Chia thêm ra của tên miền cấp hai trở xuống thường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủ đề nào đó. Như phone.fpt.vn là một phòng của công ty Fpt. Ví dụ: có tên miền www.thanglong.edu.vn. Tên miền sẽ được đọc từ trái qua phải. Mục đầu tiên (www) là tên của máy tính. Tiếp theo là tên miền cấp 3 (thanglong) , tên miền được đăng kí với cơ quan quản lý tên miền ở dưới cấp vn là trung tâm thông tin mạng Internet Viet Nam(VNNIC). Tên miền đứng thứ 2 từ bên phải là tên miền ở mức 2 (com) tên miền này miêu tả chức năng của tổ chức sở hữu tên miền ở mức 3. Trong ví dụ này tổ chức lấy tên miền ở mức hai la “edu” có nghĩa là tổ chức thuộc về giáo dục. Cuối cùng là tên miền “.vn”, tên miền này chỉ ra toàn bộ miền này thuộc quyền quản lý của mạng Internet Việt Nam. Một số chú ý khi đặt tên miền: Tên miền nên đặt giới hạn từ cấp 3 đến cấp 4 vì nhiều hơn nữa việc nhớ tên và quản trị khó khăn. Sử dụng tên miền là phải duy nhất trong mạng Internet Nên đặt tên đơn giản gợi nhớ và tránh phức tạp. 3. Máy chủ quản lý tên miền (Domain name server-dns) Máy chủ quản lý tên miền (dns) theo từng khu vực, theo từng cấp như: một tổ chức, một công ty hay một vùng lãnh thổ. Máy chủ đó chứa thông tin dữ liệu về địa chỉ và tên miền trong khu vực , trong cấp mà nó quản lý dùng để chuyển giữa tên miền và địa chỉ IP đồng thời nó cũng có khả năng hỏi các máy chủ quản lý tên miền khác hoặc cấp cao hơn nó để có thể trả lời được các truy vấn về những tên miền không thuộc quyền quản lý của nó và cũng luôn sẵn sàng trả lời các máy chủ khác về các tên miền mà nó quản lý. Máy chủ cấp cao nhất là Root Server do tổ chức ICANN quản lý: Là server quản lý toàn bộ cấu trúc của hệ thống tên miền. Root Server không chứa dữ liệu thông tin về cấu trúc hệ thống DNS mà nó chỉ chuyển quyền (delegate) quản lý xuống cho các server cấp thấp hơn và do đó root server có khả năng định đường đến của một domain tại bất kì đâu trên mạng. Hiện nay trên thế giới có khoảng 13 root server quản lý toàn bộ hệ thống Internet. Dưới đây là các thông tin về 13 root : Hình 1.3: Vị trí của 13 Root name trên bản đồ thế giới. Một DNS server có thể nằm bất cứ vị trí nào trên mạng Internet nhưng được cấu hình logic để phân cấp chuyển tên miền cấp thấp hơn xuống cho các DNS server khác nằm bất cứ vị trí nào trên mạng Internet. Nhưng tốt nhất là đặt DNS tại vị trí nào gần với các client để dễ dàng truy vấn đến đồng thời cũng gần với vị trí của DNS server cấp cao hơn trực tiếp quản lý nó. Chương II. CƠ SỞ DỮ LIỆU DNS SERVER Resource Record (RR) RR là mẫu thông tin dùng để mô tả các thông tin vè cơ sở dữ liệu DNS, các mẫu thông tin này được lưu trong file cơ sở dữ liệu DNS. I. Bản ghi SOA (Start of Authority ) Trong mỗi tập tin CSDL phải có một và chỉ một record SOA (Start of Authority). 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 của SOA : [domain name] IN SOA [dns-server] [email-address] ( serial number; refresh number; retry number; expire number; time-to-live number ) domain name : tên domain mà DNS quản lý (Vd: hqhcm.gov). dns-server: tên server quản lý miền. email-address: địa chỉ email của admin. Serial number: áp dụng cho mọi dữ liệu trong zone và là một số nguyên. Trong ví dụ, giá trị này bắt đầu từ1 nhưng thông thường người ta sửdụng theo định dạng thời gian như1997102301. Định dạng này theo kiều YYYYMMDDNN, trong đó YYYY là năm, MM là tháng, DD là ngày và NN số lần sửa đổi dữ liệu zone trong ngày. Bất kể là theo định dạng nào, luôn luôn phải tăng số này lên mỗi lần sửa đổi dữ liệu zone. Khi máy chủ Secondary liên lạc với máy chủ Primary nó sẽ so sánh số này và số serial của nó, nếu số serial của máy secondary nhỏ hơn số của primary tức là dữ liệu zone trên Primary đã được thay đổi, như vậy máy secondary sẽ sao chép dữ liệu mới từ máy Primary thay cho dữ liệu đang có hiện hành. Refresh number: chỉ ra khoảng thời gian máy chủ secondary kiểm tra dữ liệu zone trên máy primary để cập nhật nếu cần. Giá trị này thay đổi tùy theo tần suất thay đổi dữ liệu trong zone. Retry number : Nếu máy chủ Secondary không kết nối được với máy chủ Primary theo thời gian mô tả trong refresh ( ví dụ như máy chủ Primary bị shutdown vào lúc đó thì máy chủ Secondary phải tìm cách kết nối lại với máy chủ Primary theo một chu kì thời gian mô tả trong retry). Thông thường giá trị này nhỏ hơn giá trị refresh. Expire number: nếu sau khoảng thời gian này mà máy chủ secondary không kết nối được với máy primary thì dữ liệu zone trên máy secondary sẽ bị quá hạn, lúc này máy secondary sẽ không trả lời mọi truy vấn về zone này nữa. Giá trị expire này phải lớn hơn giá trị refresh và retry. TTL ( Time to Live): Giá trị này áp dụng cho mọi record trong zone và được đính kèm trong thông tin trả lời một truy vấn. Mục đích của nó là chỉ ra thời gian mà các máy chủ name server khác được cache lại thông tin trả lời. Việc cache thông tin trả lời giúp giảm lưu lượng truy vấn DNS trên mạng. Hình 1.4 : Bản ghi SOA II. A (Address) và CNAME (Canonical Name) Record A (address) ánh xạ tên vào địa chỉ. Record CNAME (canonical name) tạo tên bí danh alias trỏ vào một tên canonical. Tên canonical là tên host trong record A hoặc trỏ vào 1 tên canonical khác. 1.Bản ghi kiểu A Bản ghi kiểu A được dùng để khai báo ánh xạ giữa tên của một máy tính trên mạng và địa chỉ IP của một máy tính trên mạng. Bản ghi kiểu A có cú pháp như sau: [ Domain ] IN A Ví dụ : Home.vnn.vn IN A 203.162.0.12 Theo ví dụ trên, tên miền home.vnn.vn được khai với bản ghi kiểu A trỏ đến địa chỉ 203.162.0.12 sẽ là tên của máy tính này. Một tên miền có thể được khai nhiều bản ghi kiểu A khác nhau để trỏ đến các địa chỉ IP khác nhau. Như vậy có thể có nhiều máy tính có cùng tên trên mạng. Ngược lại một máy tính có một địa chỉ IP có thể có nhiều tên miền trỏ đến, tuy nhiên chỉ có duy nhất một tên miền được xác định là tên của máy, đó chính là tên miền được khai với bản ghi kiểu A trỏ đến địa chỉ của máy. 2. Bản ghi CNAME Bản ghi CNAME cho phép một máy tính có thể có nhiều tên. Nói cách khác bản ghi CNAME cho phép nhiều tên miền cùng trỏ đến một địa chỉ IP cho trước. Để có thể khai báo bản ghi CNAME , bắt buộc phải có bản ghi kiểu A để khai báo tên của máy. Tên miền được khai báo trong bản ghi kiểu A trỏ đến địa chỉ IP của máy được gọi là tên miền chính (canonical domain ).Các tên miền khác muốn trỏ đến máy tính này phải được khai báo là bí danh của tên máy (alias domain). Bản ghi CNAME có cú pháp như sau : alias-domain IN CNAME canonical domain Ví dụ : www.vnn.vn IN CNAME home.vnn.vn Tên miền www.vnn.vn sẽ là tên bí danh của tên miền home.vnn.vn, hai tên miền www.vnn.vn sẽ cùng trỏ đến địa chỉ IP 203.162.0.12 III.MX (Mail Exchange) DNS dùng record MX trong việc 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) records. 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 này hoạt động không tốt. Do đó, chúng được tích hợp lại thành một record MX. Khi nhận được mail, trình chuyển mail (mailer) dựa vào record MX để quyết định đường đi của mail. Record MX chỉ ra một mail exchange cho một miền – Mail Exchange là một máy chủ xử lý (chuyển mail đến mail box cục bộ hay là một mail 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 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 một giá trị bổ sung ngoài tên miền của mail exchanger là 1 số thứ tự tham chiếu. Đây là số nguyên không dấu 16 bit (0-65535) chỉ ra thứ tự ưu tiên của các mail exchanger. Cú pháp record MX : [domain name] IN MX [độ-ưu-tiên] [ tên-mail-server] Ví dụ : Để các thư điện tử có cấu trúc user@vnn.vn được gửi đến trạm chuyển tiếp thư điện tử có tên mail.vnn.vn, trên cơ sở dữ liệu cần khai báo bản ghi MX như sau: Vnn.vn IN MX 10 mail.vnn.vn Các thông số được khai báo trong bản ghi MX nêu trên gồm có: vnn.vn : là tên miền được khai báo để sử dụng như địa chỉ thư điện tử. mail.vnn.vn: là tên của trạm chuyển tiếp thư điện tử, nó thực tế là tên của máy tính dùng làm máy trạm chuyển tiếp thư điện tử. 10: Là giá tri ưu tiên, giá trị ưu tiên có thể là một số nguyên bất kì từ 1 đến 225, nếu giá trị ưu tiên này càng nhỏ thì trạm chuyển tiếp thư điện tử được khai báo sau đó sẽ là trạm chuyển tiếp thư điện tử được chuyển đến đầu tiên. Ví dụ nếu khai báo : Vnn.vn IN MX 10 mail.vnn.vn Vnn.vn IN MX 20 backupmail.vnn.vn Thì tất cả các thư điện tử có cấu trúc địa chỉ user@vnn.vn trước hết sẽ được gửi đến trạm chuyển tiếp thư điện tử mail.vnn.vn. Chỉ trong trường hợp máy chủ mail.vnn.vn không thể nhận thư thì các thư này mới chuyển đến trạm chuyển tiếp thư điện tử backupmail.vnn.vn . IV. Bản ghi NS Bản ghi NS dùng để khai báo máy chủ tên miền cho một tên miền. Nó cho biết các thông tin về tên miền quản lý, do đó yêu cầu có tối thiểu hai bản ghi NS cho mỗi tên miền. Cú pháp: [domain name] IN NS [DNS server] ( IN NS ) Ví dụ: Vnnic.net.vn IN NS dns1.vnnic.net.vn Vnnic.net.vn IN NS dns2.vnnic.net.vn Với khai báo trên, tên miền vnnic.net.vn sẽ do máy chủ tên miền có tên dns.vnnic.net.vn quản lý. Điều này có nghĩa, các bản ghi như A, CNAME, MX … của tên miền cấp dưới của nó sẽ được khai báo trên máy chủ dns1.vnnic.net.vn. và dns2.vnnic.net.vn. V. Bản ghi PTR PTR (Pointer) Record PTR dùng để ánh xạ địa chỉ IP thành tên máy. Cú pháp: [IP-address] IN PTR [host-name] Hệ thống DNS không những thực hiện việc chuyển đổi từ tên miền sang địa chỉ IP mà còn thực hiện chuyển đổi địa chỉ IP sang tên miền. Bản ghi PTR cho phép thực hiện chuyển đổi địa chỉ IP sang tên miền. VD: 101.57.162.203.in-addr.arpa IN PTR www.vnnic.net.vn Bản ghi PTR trên cho phép tìm tên miền www.vnnic.net.vn khi biết địa chỉ IP (203.162.57.101) mà tên miền trỏ tới. VI.AAAA. Ánh xạ tên máy (host name) vào địa chỉ IP version 6. [tên máy tính] IN AAAA [địa chỉ IPv6] VII. SRV. Cung cấp cơ chế định vị dich vụ, Active Directory sủ dụng Resource Record này để xác định domain controllers, global catalog servers, Lightweight Directory Access Protocol (LDAP) server. Các file trong SVR: - Tên miền (domain name). - Tên dịch vụ service. - Giao thức sử dụng. - TTL và Class. - Priority. - Weight (hỗ trợ load balancing). - Port (cổng dịch vụ). - Target chỉ định FQDN cho host hỗ trọ dịch vụ. Chương III. HOẠT ĐỘNG CỦA DNS SERVER TRONG LINUX I. Phân loại DNS server Có ba loại DNS server sau: Primary server. Secondary server. Caching Name Server. 1. Primary server Nguồn xác thực thông tin chính thức cho các domain mà nó được phép quản lý Thông tin về tên miền được phân cấp quản lý thì được lưu trữ tại đây và sau đó có thể được chuyển sang cho các secondary server. Các tên miền do primary server quản lý thì được tạo và sửa đổi tai primary server và được cập nhật đến các secondary server. Server này có nhiệm vụ phân giải tất cả các máy trong miền hay zone. Primary server nên đặt gần với các client để có thể phục vụ truy vấn tên miền một cách dễ dàng và nhanh hơn. 2. Secondary server DNS được khuyến nghị nên sử dụng ít nhất là hai DNS server để lưu cho mỗi một zone. Primary DNS server quản lý các zone và secondary server sử dụng để lưu trữ dự phòng cho primary server. Secondary DNS server được khuyến nghị dùng nhưng không nhất thiết phải có. Secondary server được phép quản lý domain nhưng dữ liệu về tên miền (domain), nhưng secondary server không tạo ra các bản ghi về tên miền (domain) mà nó lấy về từ primary server. Khi lượng truy vấn zone tăng cao tại primary server thì nó sẽ chuyển bớt tải sang cho secondary server .Hoặc khi primary server gặp sự cố không hoạt động được thì secondary server sẽ hoạt động thay thế cho đến khi primary server hoạt động trở lại. Secondary server nên được đặt ở gần với primary server và client để có thể phục vụ cho việc truy vấn tên miền dễ dàng hơn. Nhưng không nên cài đặt secondary server trên cùng một mạng con (subnet) hoặc cùng một kết nối với primary server. Để khi primary server có kết nối bị hỏng thì cũng không có ảnh hưởng đến secondary server. Primary server thường xuyên thay đổi hoặc thêm vào các zone mới. Nên DNS server sử dụng cơ chế cho phép secondary lấy thông tin từ primary server và lưu trữ nó. Có hai giải pháp lấy thông tin về các zone mới là lấy toàn bộ (full) hoặc chỉ phần thay đổi (incremental). Khi Secondary Name Server được khởi động nó sẽ tìm Primary Name Server nào mà nó được phép lấy dữ liệu về máy. Nó sẽ copy lại toàn bộ CSDL DNS của Primary Name Server mà nó được phép transfer (quá trình này gọi là quá trình Zone Transfer). Theo 1 chu kỳ nào đó do người quản trị quy định thì Secondary Name Server sẽ sao chép và cập nhật CSDL từ Primary Name Server. Quá trình Zone transfer như sau: HÌnh 1.5 : Các bước của một quá trình Zone transfer 3. Caching-only server Tất cả các DNS server đều có khả năng lưu trữ dữ liệu trên bộ nhớ cache của máy để trả lời truy vấn một cách nhanh chóng. Nhưng hê thống DNS còn có một loại Caching-only server. Loại này chỉ sử dụng cho việc truy vấn, lưu giữ câu trả lời dựa trên thông tin có trên cache của máy và cho kết quả truy vấn. Chúng không hề quản lý một domain nào và thông tin mà nó chỉ giới hạn những gì được lưu trên cache của server. Lúc ban đầu khi server bắt đầu chạy thì nó không lưu thông tin nào trong cache. Thông tin sẽ được cập nhập theo thời gian khi các client server truy vấn dịch vụ DNS. Nếu bạn sử dụng kết nối mạng WAN tốc độ thấp thì việc sử dụng caching-only DNS server là giải pháp hữu hiệu cho phép giảm lưu lượng thông tin truy vấn trên đường truyền. Caching-only có khả năng trả lời các câu truy vấn đến client. Nhưng không chứa zone nào và cũng không có quyền quản lý bất kì domain nào. Nó sử dụng bộ cache của mình để lưu các truy vấn của DNS của client. Thông tin sẽ được lưu trong cache để trả lời các truy vấn đến client để làm tăng tốc độ phân giải và giảm gánh nặng phân giải tên máy . Quy trình truy vấn và cache lại trên máy tính như sau : Hình 1.6 : Bảng cache II. Đồng bộ dữ liệu giữa các DNS server( Zone transfer) 1. Các phương pháp đồng bộ dữ liệu giữa các DNS server Do đề phòng rủi ro khi DNS server không hoạt động hoặc kết nối bị đứt ngưòi ta khuyên nên dùng hơn một DNS server để quản lý một zone nhằm tránh trục trặc đường truyền. Do vậy ta phải có cơ chể chuyển dữ liệu các zone và đồng bộ giữa các DNS server khác nhau. Có hai cách để đồng bộ dữ liệu giữa các DNS server là primary server và secondary server như : Truyền toàn bộ zone(all zone transfer). Truyền phần thay đổi (Incremental zone transfer). Truyền toàn bộ zone (all zone transfer ) Khi một DNS server mới được thêm vào mạng thì nó được cấu hình như một secondary server mới cho một zone đã tồn tại. Nó sẽ tiến hành nhận toàn bộ dữ liệu từ primary server. Đối với các DNS server phiên bản đầu tiên thường dùng giải pháp lấy toàn bộ các cơ sở dữ liệu khi có các thay đổi trong zone. Truyền phần thay đổi (Incremental zone) Theo giải pháp này là chỉ truyền những những dữ liệu thay đổi của zone. Đồng bộ dữ liệu này được miêu tả chi tiết trong tiêu chuẩn RFC 1995. Nó cung cấp giải pháp hiệu quả cho việc đồng bộ những thay đổi, thêm, bớt của zone. 2. Cơ chế hoạt động đồng bộ dữ liệu giữa các DNS server Với trao đổi IXFR zone thì sự khác nhau giữa số serial của nguồn dữ liệu và bản sao của nó. Nếu cả hai đều có cùng số serial thì việc truyền dữ liệu của zone sẽ không thực hiện. Nếu số serial cho dữ liệu nguồn lớn hơn số serial của secondary server thì nó sẽ thực hiện gửi những thay đổi của bản ghi nguồn (Resource record – RR) của zone ở primary server. Để truy vấn IXFR thực hiên thành công và các thay đổi được gửi thì tại DNS server nguồn của zone phải được lưu giữ các phần thay đổi để sử dụng truyền đến nơi yêu cầu của truy vấn IXFR. Incremental sẽ cho phép lưu lượng truyền dữ liệu ít và thực hiện nhanh hơn. Zone transfer sẽ xảy ra khi có những hành động sau xảy ra: - Khi quá trình làm mới của zone đã kết thúc (refresh exprire ). - Khi secondary server được thông báo zone đã thay đổi tại nguồn quản lý zone. - Khi thêm mới secondary server. - Tại secondary server yêu cầu chuyển zone. Các bước yêu cầu chuyển dữ liệu từ secondary server đến DNS server chứa zone để yêu cầu lấy dữ liệu về zone mà nó quản lý: - Khi cấu hình DNS server mới, thì nó sẽ gửi truy vấn yêu cầu gửi toàn bộ zone ( all zone transfer request (AXFR) ) đến DNS server chính quản lý dữ liệu của zone. - DNS server chính quản lý dữ liệu của zone trả lời và chuyển toàn bộ dữ liệu về zone cho secondary server (destination) mới cấu hình. Để xác định có chuyển dữ liệu hay không thì nó dựa vào số serial được khai báo bằng bản ghi SOA. - Khi thời gian làm mới (refresh interval ) của zone đã hết, thì DNS server nhận dữ liệu sẽ truy vấn yêu cầu làm mới zone tới DNS server chính chứa dữ liêu zone. - DNS server chính quản lý dữ liệu sẽ trả lời truy vấn và gửi lại dữ liệu. Trả lời truy vấn dữ liệu gồm số serial của zone tại DNS server chính. - DNS server nhận dữ liệu về zone và sẽ kiểm tra số serial trong trả lời và quyết định xem có cần truyền dữ liêu không. Nếu giá trị của số serial của Primary Server bằng với số serial lưu tại nó thì sẽ kết thúc luôn. Và nó sẽ thiết lập lại với các thông số cũ lưu trong máy. Nếu giá trị của số serial tại Primary Server lớn hơn giá trị serial hiện tại DNS nhận dữ liệu. Thì nó kết luận zone cần được cập nhật và cần đồng bộ dữ liệu giữa hai DNS server - Nếu DNS server nhận kết luận rằng zone cần phải lấy dữ liệu thì nó sẽ gửi yêu cầu IXFR tới DNS server chính để yêu cầu truyền dữ liệu của zone. - DNS server chính sẽ trả lời với việc gửi những thay đổi của zone hoặc toàn bộ zone. Nếu DNS server chính có hỗ trợ việc gửi những thay đổi của zone thì nó sẽ gửi những phần thay đổi của nó (Incremental zone transfer of the zone). Nếu DNS server chính không hỗ trợ thì nó sẽ gửi toàn bộ zone (Full AXFR transfer of the zone ). III. Cơ chế phân giải tên 1. Phân giải tên thành IP Root name server: là máy chủ quản lý các nameserver ở mức top-level domain. Khi có truy vấn về một tên miền nào đó thì Root Name Server phải cung cấp tên và địa chỉ IP của name server quản lý top-level domain (thực tế là hầu hêt các root server cũng chính là máy chủ quản lý top-level domain) và đến luợt các name server của top-level domain cung cấp danh sách các name servercó quyền trên các second-level domain mà tên miền này thuộc vào. Cứ như thế đến khi nào tìm đuợc máy quản lý tên miền cần truy vấn. Qua trên cho thấy vai trò rất quan trong của root name server trong quá trình phân giải tên miền. Nếu mọi root name server trên mạng Internet không liên lạc được thì nơi yêu cầu phân giải đều không thực hiện đuợc. Hình vẽ duới mô tả quá trình phân giải grigiri.gbrmpa.au trên mang Internet. Hình 1.7: Quá trình phân giải. Client sẽ gửi yêu cấu cần phân giải địa chỉ IP của máy tính có tên girigiri.gbrmpa.gov.au đến name server cục bộ. Khi nhận yêu cầu từ resolver, Nameserver cục bộ sẽ phân tích tên này và xét xem tên miền này có do mình quản lý hay không. Nếu như tên miền do Server cục bộ quản lý, nó sẻ trả lời địa chỉ IP của tên máy đó ngay cho resolver. Ngược lại, server cục bộ sẽ truy vấn đến một Root Name Server gần nhất mà nó biết được. Root Name Server sẽ trả lời địa chỉ IP của Name Server quản lý miền au. Máy chủ name server cục bộ lại hỏi tiếp name server quản lý miền au và được tham chiếu đến máy chủ quản lý miền gov.au. Máy chủ quản lý gov.an chỉ dẫn máy name server cục bô tham chiều đến máy chủ quản lý miền gbrmpa.gov.au. Cuối cùng máy name server cục bộ truy vấn máy chủ quản lý miền gmrmpa.gov.au và nhận được câu trả lời. Truy vấn có thể ở 2 loại : Truy vấn đệ quy (Recursive query) : Khi name server nhận được truy vấn dạng này, nó bắt buộc phải trả về kết quả tìm được hoặc thông báo lỗi nếu như truy vấn này không phân giải được. Nameserver không thể tham chiếu truy vấn đến một name server khác. Namesserver có thể gửi truy vấn dạng đệ quy hoặc tương tác đến nameserver khác nhưng nó phải thực hiện cho đến khi nào có kết quả mới thôi. Truy vấn tương tác : khi nameserver nhận được truy vấn dạng này, nó trả lời cho resolver với thông tin tốt nhất mà nó có đc vào thời điểm đó. Bản thân nameserver không thực hiện bất cứ một truy vấn nào thêm. Thông tin tốt nhất trả về có thể lấy từ dữ liệu cục bộ (kể cả cache). Trong trường hợp nameserver không tìm thấy trong dữ liệu cục bộ nó sẽ trả về tên miền và địa chỉ IP của nameserver gần nhất mà nó biết. Hình 1.8 : Sơ đồ truy vấn tương tác 2. Phân giải tên IP thành tên máy Ánh xạ địa chỉ IP thành tên máy tính đuợc dùng để diễn dịch các tập tin log cho dễ đọc hơn. Nó còn đuợc dùng trong một số truờng hợp chứng thực trên hệ thồng UNIX (kiểm tra các tập tin .rhost hay host.equiv ). Trong không gian tên miền đã nói ở trên dữ liệu bao gồm cả địa chỉ IP đuợc đuợc lập chỉ mục theo tên miền. Do đó một tên miền đã cho việc tìm ra địa chỉ IP khá dễ dàng. Để có thể phân giải tên máy của một địa chỉ IP, trong không gian tên miền nguời ta bổ sung thêm một nhánh tên miền mà đuợc lập chỉ mục theo địa chỉ IP. Phần không gian này có tên miền là in-arpa.arpa. Mỗi nút trong miền in-addr.arpa có một tên nhãn là chỉ số thập phân của địa chỉ IP. Ví Dụ: Miền in-addr.arpa có thể có 256 subdomain. Tuơng ứng 256 giá trị từ 0 đến 255 của byte đầu tiên trong địa chỉ IP. Trong mỗi Subdomain lại có 256 subdomain còn nữa ứng với byte thứ 2. Cứ như thế và đến byte thứ 4 có các bản ghi cho tên miền đầy đủ của các máy tính hoặc các mạng có địa chỉ IP tuơng ứng. Hình 1.9 : Sơ đô phân giải tên thành địa chỉ IP. Lưu ý: khi đọc tên miền địa chỉ IP sẽ xuất hiện theo thứ tự ngược Ví dụ nếu địa chỉ Ip của máy winnine.corp.hp.com là 15.16.192.152, khi ánh xạ vào miền in-addr.arpa sẽ là 152.192.16.15.in-addr.arpa. IV. Hoạt động của Name Server trong Linux DNS name server khi hoạt động sẽ phát sinh ra một deamon có tên là named. Trong quá trình khởi động, named đọc các tập tin dữ liệu rồi chờ yêu cầu phân giải qua cổng xác định trong tập tin etc/services. Khi nhận được một yêu cầu từ resolver, đầu tiên Named dùng giao thức UDP để truy vấn. Nếu dùng giao thức UDP phân giải không có kết quả, sau đó named sẽ dùng giáo thức TCP. Một số đặc điểm cần ghi nhớ trong quá trình truy vấn giữa Client và Server. Truy vấn từ Client đến Server sử dụng cổng nguồn là 1023 và cổng đích là 53. Server trả lời truy vấn về cho sử dụng cổng nguồn là 53, cổng đích lớn hơn 1023. Truy vấn và trả lời giữa các server sử dụng giáo thứ UDP cổng nguồn và đích đều là 53, với TCP truy vấn của server sẽ sử dụng còng > 1023. V. Một số khái niệm cơ bản. 1. Domain name và zone. Một miền gồm nhiều thực thể nhỏ hơn gọi là miền con (subdomain). Ví dụ: Miền ca bao gồm nhiều miền con như : ab.ca, on.ca, pc.ca (như hình vẽ dưới đây). Bạn có thể ủy quyền một số miền con cho nhưng DNS Server khác quản lý. Những miền và miền con mà DNS Server được ủy quyền quản lý gọi là zone. Như vậy, một zone có thể bao gồm một miền hay nhiều miền con. Hình sau đây mô tả sự khác nhau giữ zone và domain. Hình 1.10 : Zone và Domain Các loại Zone: Primary zone: cho phép đọc và ghi cơ sở dữ liệu. Secondary zone: cho phép đọc bản sao cơ sở dư liệu. Stub Zone: chứa bản sao cơ sở dữ liệu của zone nào đó, nó chỉ chứa một vài RR. 2. Fully Qualified Domain Name (FQDN) Mỗi nút trên cây có một tên gọi (không chứa dấu chấm) dài tối đa 63 ký tự. Tên rỗng dành riêng cho gốc (root) cao nhất và biểu diễn bởi dấu chấm. Một tên miền đầy đủ của một nút chính là chuỗi tuần tự các tên gọi của nút hiện tại đi ngược lên nút gốc, mỗi tên gọi cách nhau bởi dấu chấm. Tên miền có xuất hiện dấu chấm sau cùng được gọi là tên tuyệt đối (absolute) khác với tên tương đối là tên không kết thúc bằng dấu chấm. Tên tuyệt đối cũng được xem là tên miền đầy đủ đã được chứng nhận (Fully Qualified Domain Name – FQDN). 3. Sự ủy quyền giữa các miền con (Delegating Subdomains) Hình 1.11 :Sự ủy quyền Một trong các mục tiêu thiết kế hệ thống DNS là khả năng quản lý phân tán thông qua cơ chế ủy quyền (delegation). Trong một miền có thể tổ c

Các file đính kèm theo tài liệu này:

  • docthanh_hien_s0809g_dns_tren_linux_0325.doc