bài tập lớn intranet - domain name server

46
1 MC LC LỜI NÓI ĐẦU.................................................................................................................... 2 PHÂN CÔNG CÔNG VIỆC .............................................................................................. 3 Tổng quan ........................................................................................................................... 4 I. Các không gian tên miền phân cấp: ................................................................................ 6 II. Tên miền phân cấp đầy đủ ............................................................................................. 8 (Tên miền tuyệt đối) ........................................................................................................... 8 III. Tên miền chung có nghĩa: ........................................................................................... 9 IV. Tên miền quốc gia: ..................................................................................................... 10 V. Ánh xạ tên miền sang các địa chỉ IP: ........................................................................... 11 VI. Ánh xạ địa chỉ IP sang tên miền : Con trỏ truy vấn ................................................... 13 ( pointer query). ................................................................................................................ 13 VII. Các không gian phân phối tên. ................................................................................. 15 VIII. Phân giải tên miền ( Domain name resolution). ...................................................... 17 IX. Hoạt động máy chủ tên miền ( Domain name server operation). .............................. 21 X. . Thông điệp hệ thống tên miền ( Domain Name System massage). .......................... 28 XI. Kịch bản đơn giản ...................................................................................................... 35 XII. Kịch bản mở rộng ..................................................................................................... 38 XIII. Giao vận................................................................................................................... 39 XIV. Các ứng dụng DNS .................................................................................................. 41 KẾT LUẬN ...................................................................................................................... 45

Upload: nghia-zer

Post on 04-Jul-2015

1.049 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Bài tập lớn Intranet - Domain name server

1

MỤC LỤC

LỜI NÓI ĐẦU .................................................................................................................... 2

PHÂN CÔNG CÔNG VIỆC .............................................................................................. 3

Tổng quan ........................................................................................................................... 4

I. Các không gian tên miền phân cấp: ................................................................................ 6

II. Tên miền phân cấp đầy đủ ............................................................................................. 8

(Tên miền tuyệt đối) ........................................................................................................... 8

III. Tên miền chung có nghĩa: ........................................................................................... 9

IV. Tên miền quốc gia: ..................................................................................................... 10

V. Ánh xạ tên miền sang các địa chỉ IP: ........................................................................... 11

VI. Ánh xạ địa chỉ IP sang tên miền : Con trỏ truy vấn ................................................... 13

( pointer query). ................................................................................................................ 13

VII. Các không gian phân phối tên. ................................................................................. 15

VIII. Phân giải tên miền ( Domain name resolution). ...................................................... 17

IX. Hoạt động máy chủ tên miền ( Domain name server operation). .............................. 21

X. . Thông điệp hệ thống tên miền ( Domain Name System massage). .......................... 28

XI. Kịch bản đơn giản ...................................................................................................... 35

XII. Kịch bản mở rộng ..................................................................................................... 38

XIII. Giao vận ................................................................................................................... 39

XIV. Các ứng dụng DNS .................................................................................................. 41

KẾT LUẬN ...................................................................................................................... 45

Page 2: Bài tập lớn Intranet - Domain name server

2

LỜI NÓI ĐẦU

Domain Name System, hay được viết tắt là DNS là hệ thống tên miền cho phép

thiết lập tương ứng giữa địa chỉ IP và tên miền. Nhờ có hệ thống này, chúng ta thay vì

phải nhớ nhiều con số trong địa chỉ, chúng ta chỉ cần biết đến tên miền có nghĩa và rất

dễ nhớ, và không cần biết làm thế nào các máy sẽ thực sự tìm ra chúng. Với tính năng

đặc biệt này, từ khi được phát minh năm 1984 đến nay, DNS ngày càng được sử dụng

phổ biến. Hiện nay, hệ thống tên miền là một thành phần thiết yếu cho các chức năng

của Internet.

Nhận biết được sự quan trọng của Domain Name System (DNS) và sự phổ biến của nó,

nhóm em quyết định chọn đề tài này để nghiên cứu. Trong khuôn khổ thời gian thực

hiện bài tập lớn, chúng em chỉ tập trung vào những vấn đề cơ bản của DNS – hệ thống

tên miền.

Page 3: Bài tập lớn Intranet - Domain name server

3

PHÂN CÔNG CÔNG VIỆC

Tên sinh viên Công việc

Phạm Thị Hồng Nhung- 20072171 Từ I đến V

Lê Thị Loan - 20071754. Từ VI đến X

Hoàng Hồng Ngọc- 20072100 Từ XI đến XIV

Page 4: Bài tập lớn Intranet - Domain name server

4

Tổng quan

DNS (Domain Name System) là một hệ cơ sở dữ liệu phân tán dùng để ánh xạ

giữa các tên miền và các địa chỉ IP. Chúng được mô tả cụ thể trong các tài liệu RFC

1034 [1] và RFC 1035 [2]. Bài tập lớn này sẽ giải thích tường tận về quá trình thực hiện

(phân giải) của DNS và của các máy chủ định danh.

Khi mới được xây dựng, các cấu hình Internet đều yêu cầu là chỉ được sử dụng

các địa chỉ IP dạng số thập phân. Đây thực sự là một vấn đề khó khăn đối với việc nhớ

chính xác tên hay địa chỉ của một hay nhiều hệ thống, chính vì thế, điều này dẫn đến

việc sử dụng tên máy tính một cách tượng trưng. Ví dụ, thay vì phải gõ:

TELNET 10.12.7.14

ta có thể gõ là:

TELNET MyHost

Ở đây, ta có thể hiểu một cách đơn giản là MyHost đã được biên dịch theo một

cách nào đó thành địa chỉ IP của máy, cụ thể là 10.12.7.14. Mặc dù việc sử dụng tên máy

theo dạng như trên làm cho quá trình truy cập vào một nguồn tài nguyên nào đó trên

máy trở nên dễ dàng hơn, nhưng nó cũng đem đến một số vấn đề như việc duy trì ánh xạ

giữa địa chỉ IP và tên máy dạng ký tự một cách đồng bộ và thống nhất.

Ban đầu, tên máy chủ để ánh xạ địa chỉ được lưu trong một tập tin duy nhất

(HOST.TXT) và được duy trì bởi Trung tâm Thông tin Mạng (Network Information

Center), được sử dụng bởi tất cả các máy chủ có hỗ trợ giao thức FTP. Chúng được gọi

là tên miền không gian phẳng (flat namespace). Tuy nhiên, do sự phát triển bùng nổ về

mặt số lượng các máy chủ, cơ chế lưu trữ và phân giải này trở nên quá cồng kềnh (Xem

xét thông qua các công việc liên quan khi cần bổ sung thêm một máy chủ lưu trữ nữa lên

Internet), và chúng được thay thế bằng một khái niệm mới: DNS. Tuy rằng là, đối với

các máy chủ trong các mạng cỡ nhỏ hơn (so với Internet) có thể vẫn tiếp tục sử dụng

một tên miền không gian phẳng. Nhưng với các hệ thống mạng lớn hơn, việc sử dụng

DNS là một biện pháp cần thiết. Hệ thống này cho phép một chương trình chạy trên một

Page 5: Bài tập lớn Intranet - Domain name server

5

máy chủ có thể liên kết tới một địa chỉ IP của bất kỳ một máy chủ nào khác mà không

cần đòi hỏi mỗi máy chủ phải có một cơ sở dữ liệu hoàn chỉnh tên các máy chủ.

Page 6: Bài tập lớn Intranet - Domain name server

6

I. Các không gian tên miền phân cấp:

Ta thử xem xét cấu trúc nội bộ điển hình của một tổ chức lớn nào đó. Ví dụ như là

trong một công ty bất kỳ, các Giám đốc điều hành không thể làm được tất cả mọi thứ

nên tổ chức đó cần phải được phân chia thành các đơn vị, mỗi người trong số đó sẽ có

quyền tự chủ, chính xác hơn là thẩm quyền trong một giới hạn nhất định. Cụ thể là các

điều hành viên phụ trách một bộ phận có thẩm quyền quyết định trực tiếp tại bộ phận đó,

mà không cần sự cho phép của Giám đốc điều hành.

Hệ thống tên miền cũng được tổ chức theo cách tương tự như vậy, mỗi phân cấp

tên miền sẽ được gán gắn với đơn vị hay tổ chức tương ứng với nó. Lấy ví dụ là tên

miền như sau:

myHost.myDept.myDiv.myCorp.com

Trong ví dụ này, ta có thể thấy được tên của một máy chủ đơn lẻ là MyHost, nó

được chứa trong tên miền phụ myDept.myDiv.myCorp. myDept.myDiv.myCorp lại là một

trong các tên miền phụ của myDiv.myCorp, tiếp tục như thế, đến lượt myDiv.myCorp

cũng là một tên miền phụ của myCorp, và tới lượt mình myCorp là một trong vô số các

tên miền phụ của .com. Hệ thống này được mô tả trong hình bên dưới:

Page 7: Bài tập lớn Intranet - Domain name server

7

(Không gian phân cấp tên miền DNS)

Chúng ta sẽ tiếp tục thảo luận sâu hơn về cấu trúc này trong các phần sau.

Page 8: Bài tập lớn Intranet - Domain name server

8

II. Tên miền phân cấp đầy đủ (Tên miền tuyệt đối)

Một tên miền đẩy đủ sẽ bao gồm tên miền mức thấp (top – lever domain) và tên

miền mức gốc (root domain). Một tên miền đầy đủ sẽ xác định chính xác được vị trí của

nó trong cây phân cấp tên miền. Nếu một tên miền kết thúc bằng dấu “.” (ví dụ

myDept.myDiv.myCorp.com.) , nó được coi là đã hoàn thành. Điều này được gọi là một

tên miền đầy đủ, hay còn gọi là tên miền tuyệt đối. Tuy nhiên nếu nó không kết thúc

bằng dấu “.” (ví dụ myDept.myDiv ) như vậy, thì nó được coi là chưa đầy đủ và việc này

có thể giải quyết hoàn toàn bằng cách thêm vào một hậu tố như .myCorp.com vào tên

miền. Quá trình phân giải tên miền sẽ tự động thêm vào các tên miền mặc định của hệ

thống và dấu “.”.

Quy tắc này có thể thực hiện độc lập với các cấu hình cục bộ.

Page 9: Bài tập lớn Intranet - Domain name server

9

III. Tên miền chung có nghĩa:

Đây là các tên miền phổ biến nhất, có thể là 3 ký tự hoặc hơn nhưng thường là

3.Danh sách sau đây thống kê về một số các tên miền chung có nghĩa phổ biến nhất trên

internet hiện nay:

aero Ngành công nghiệp vận tải hàng không

biz Kinh doanh

cat Văn hóa Catalan

com Các tổ chức kinh tế

coop Hợp tác

edu Tổ chức giáo dục

gov Chính phủ

info Trang thông tin

int Tổ chức toàn cầu

jobs Trang việc làm

mil Quân đội

mobi Di động

museum Bảo tàng

name Gia đình

net Trang mạng

org Tổ chức phi lợi nhuận

pro Chuyên trang

travel Du lịch

Các tên miền này hiện được đăng ký và duy trì bởi ICANN:

http://www.icann.org

Page 10: Bài tập lớn Intranet - Domain name server

10

IV. Tên miền quốc gia:

Ngoài các tên miền chung có nghĩa đã nêu ở phần trên, còn có các tên miền cấp

quốc gia được đạt theo chuẩn quốc tế ISO 3166 với dạng 2 ký tự – tên mã quốc gia (từ

ae cho Các tiểu vương quốc Ả rập Thống nhất cho tới zw cho Zimbabue). Nhiều nước

còn cấp các tên miền cấp 2 tương ứng với các lĩnh vực như được mô tả ở phần trên – tên

miền chung có nghĩa – đại diện cho các lĩnh vực tương đương (Ví dụ: .co.uk, .edu.vn...)

hoặc các khu vực địa lý của các quốc gia, ví dụ như .ny.us đại diện cho NewYork.

Page 11: Bài tập lớn Intranet - Domain name server

11

V. Ánh xạ tên miền sang các địa chỉ IP:

Việc ánh xạ tên miền tới các địa chỉ IP bao gồm các hệ thồng máy chủ định danh

(name server) độc lập hay liên hợp. Một máy chủ định danh là một chương trình máy

chủ chứa một bản sao tổng thể của một cơ sở dữ liệu ánh xạ địa chỉ IP cỡ lớn, trả lời các

yêu cầu từ các phần mềm máy trạm – gọi là phân giải tên miền, hoặc là chỉ tới các máy

chủ thực hiện nhiệm vụ đó.

Nói một cách khái quát, tất cả các máy chủ định danh trên Internet được sắp xếp

theo một cấu trúc hình cây tương ứng với hệ thống phân cấp tên miền như trong phần

trước. Mỗi nút lá đại diện cho một máy chủ định danh để xử lý một tên miền phụ duy

nhất. Liên kết trong cây không chỉ có kết nối vật lý, thay vào đó, một máy chủ định danh

có thể chỉ ra một máy chủ khác mà nó có liên hệ.

Ví dụ :

Giả sử PC A muốn truy cập đến trang web www.yahoo.com và server vnn chưa

lưu thông tin về trang web này, các bước truy vấn sẽ diễn ra như sau:

Đầu tiên PC A gửi một request hỏi server quản lý tên miền vnn hỏi thông tin về

www.yahoo.com.

Server quản lý tên miền vnn gửi một truy vấn đến server top level domain.

Top level domain lưu trữ thông tin về mọi tên miền trên mạng. Do đó nó sẽ gửi lại

cho server quản lý tên miền vnn địa chỉ IP của server quản lý miền com (gọi tắt

server com).

Khi có địa chỉ IP của server quản lý tên miền com thì lập tức server vnn hỏi server

com thông tin về yahoo.com. Server com quản lý toàn bộ những trang web có

domain là com, chúng gửi thông tin về địa chỉ IP của server yahoo.com cho server

vnn.

Lúc này server vnn đã có địa chỉ IP của yahoo.com rồi. Nhưng PC A yêu cầu dịch

vụ www chứ không phải là dịch vụ ftp hay một dịch vụ nào khác. Do đó server

Page 12: Bài tập lớn Intranet - Domain name server

12

vnn tiếp tục truy vấn tới server yahoo.com để yêu cầu thông tin về server quản lý

dịch vụ www của yahoo.com.

Lẽ đương nhiên khi nhận được truy vấn thì server yahoo.com gửi lại cho server

vnn địa chỉ IP của server quản lý www.yahoo.com.

Cuối cùng là server vnn gửi lại địa chỉ IP của server quản lý www.yahoo.com. cho

PC A và PC A kết nối trực tiếp đến nó. Và bây giờ thì server vnn đã có thông tin

về www.yahoo.com cho những lần truy vấn đến sau của các client khác.

Page 13: Bài tập lớn Intranet - Domain name server

13

VI. Ánh xạ địa chỉ IP sang tên miền : Con trỏ truy vấn

( pointer query).

Hệ thống tên miền DNS ánh xạ tên tượng trưng sang địa chỉ IP và ngược lại.

Trong khi cấu trúc phân cấp làm cho nó dễ dàng trong nguyên tắc tìm kiếm cơ sở dữ liệu

cho địa chỉ IP sử dụng tên tượng trưng của nó, quá trình lập bản đồ địa chỉ IP đến một

tên tượng trưng của nó không thể sử dụng cùng một quá trình. Do đó có một không gian

tên khác lập biểu đồ địa chỉ IP ngược lại cho tên tượng trưng. Nó được tìm thấy trong

tên miền in-addr.arpa ( arpa được sử dụng vì mạng Internet lúc đầu là ARPAnet).

Không bao gồm IPv6, các địa chỉ IP thường được viết bằng định dạng chấm thập

phân, và có một lớp của miền cho mỗi hệ thống phân cấp. Trái ngược với tên miền,

trong đó có các phần quan trọng nhất của tên đầu tiên, định dạng chấm thập phân có

bytes quan trọng nhất đầu tiên. Do đó trong hệ thống tên miền ( DNS), địa chỉ chấm thập

phân được hiển thị theo thứ tự ngược lại.

Ví dụ: Cho địa chỉ IPv4:

129.34.139.30

Trong địa chỉ in-addr.arap sẽ cho:

30.139.34.129.in-addr.arpa.

Điều này được xử lý hơi khác nhau cho các địa chỉ IPv6. Bởi vì cấu trúc của địa chỉ

IPv6, thứ tự đảo ngược lại được thực thi trong các Nibble thay cho các Octet. Ngoài ra,

các miền trong in-addr.arpa không bao gồm IPv6. Thay vào đó, tên miền được sử dụng

là IP6.ARPA.

Ví dụ: Cho địa chỉ IPv6 sau:

4321:0:1:2:3:4:567:89ab

Chia nhỏ nó vào nibbles, đảo ngược lại thứ tự, và gắn vào trường tên miền:

b.a.9.8.7.6.5.0.4.0.0.0.3.0.0.0.2.0.0.0.1.0.0.0.0.0.0.0.1.2.3.4.IP6.ARPA

Với một địa chỉ IP, hệ thống tên miền – DNS có thể được dùng để tìm kiếm tên máy chủ

Page 14: Bài tập lớn Intranet - Domain name server

14

phù hợp. Một tên miền truy vấn để thực hiện điều này được gọi là pointer query.

Page 15: Bài tập lớn Intranet - Domain name server

15

VII. Các không gian phân phối tên.

Hệ thống tên miền DNS sử dụng khái niệm về không gian phân phối tên miền. Tên

tượng trưng được nhóm thàn khu thi hành (zones of authority), thường được gọi là các

khu ( zones). Trong mỗi zone, một hoặc nhiều máy chủ ( hosts) có nhiệm vụ lưu trữ cơ

sở dữ liệu của cả tên tượng trưng và địa chỉ IP trong vùng (zone) đó, và cung cấp một

chức năng dịch vụ cho khách hàng, những người muốn dịch tên tượng trưng thành địa

chỉ IP. Những máy chủ tên cục bộ sau đó ( thông qua liên mạng trên mà chúng được kết

nối) một cách hợp lý kết nối với nhau thành mọt cây phân cấp tên miền (domain). Mỗi

vùng chưa một phần hoặc một cây con của cây phân cấp, và tên nằm trong vùng được

quản lý độc lập với các tên thuộc các vùng khác. Cho phép mỗi vùng có quyền sở hữu

các máy chủ tên.

Thông thường, các máy chủ tên có thẩm quyền cho phép một vùng (zone) sẽ có tên miền

thuộc vùng đó, nhưng điều này là không bắt buộc. Trường hợp tên miền chứa các cây

con rơi tại những khu vực khác nhau, máy chủ tên hoặc các máy chủ có thẩm quyền trên

tên miền giám sát được cho là “delegate authority” (ủy quyền) tới máy chủ tên hoặc các

máy chủ khác với quyền thực thi trên các tên miền phụ. Các máy chủ tên có thể cũng

được ủy quyền cho chính chúng, trong trường hợp này, không gian tên miền vẫn đươc

chia thành các vùng di chuyển xuống cây tên miền, nhưng quyền cho hai vùng được xử

lý bởi cùng một máy chủ. Việc chia không gian tên miền thành các vùng được thực hiện

bằng cách sử dụng các bản ghi tài nguyên lưu trữ trong hệ thống tên miền ( DNS).

Tại miền gốc mức đỉnh ( top – level root domain), có một ngoại lệ. Không có hệ thống

cao hơn có thể được ủy quyền, nhưng nó không phải là mong muốn có tất cả truy vấn

tên miền đủ điều kiện để được dẫn đến chỉ một hệ thống. Do đó, quyền cho các vùng

mức cao là được chia sẻ giữa một tập các máy chủ tên gốc ( root name servers) được

phân phối bởi ICANN.

Để minh họa tốt hơn quá trình giải quyết một tên tượng trưng cho một địa chỉ IP, xem

Page 16: Bài tập lớn Intranet - Domain name server

16

xét một truy vấn cho myHost.myDept.myCorp.com, và máy chủ tên của chúng ta không

có sẵn câu trả lời trong bộ nhớ đệm ( catche). Truy vấn đi tới máy chủ tên gốc .com (

.com root name server). Trong giai đoạn này, nó được coi là một máy chủ tên đã lưu sãn

các câu trả lời cần thiết. Tuy nhiên, các truy vấn có thể được tiếp tục giao cho một máy

chủ tên myDept.myCorp.com.

Kết quả là:

- Thay vì có một máy chủ trung tâm cho các cở sở dữ liệu, các công việc tham gia

giải quyết vấn đề duy trì cơ sở dữ liệu này giảm tải cho các máy chủ thông qua

không gian tên.

- Quyền tạo và thay đổi tên máy chủ tượng trưng và trách nhiệm duy trì một cơ sở

dữ liệu cho chúng được ủy quyền cho tổ chức sở hữu vùng (trong không gian tên)

có chứa các tên máy chủ.

- Từ quan điểm người sử dụng, có một cơ sở dữ liệu duy nhất mà thỏa thuận với

những phân dải địa chỉ này. Người dùng có thể hiểu biết về cơ sở dữ liệu được

phân phối, nhưng nhìn chung điều này không cần được quan tâm.

Lưu ý: Mặc dù miền trong không gian tên thường xuyên được lập bản đồ trong một cập

nhật logic với mạng và mạng con trong lược đồ địa chỉ IP, đây không phải là yêu cầu của

hệ thống tên miền. Xem xét một bộ định tuyến giữa hai mạng con. Nó có hai địa chỉ IP,

một cho adapter mạng. Nhưng nó sẽ là bất thường nếu có hai tên tượng trưng.

Page 17: Bài tập lớn Intranet - Domain name server

17

VIII. Phân giải tên miền ( Domain name resolution).

Các bước thực hiện quá trình phân giải tên miền:

(1). Một chương trình người sử dụng đưa ra yêu cầu bằng lời gọi hệ thống

gethostbyname() ( lời gọi đặc biệt này hỏi địa chỉ IP của mày chủ bằng cách đi qua các

tên máy chủ) hoặc lời gọi hệ thống gethostname() ( cái mà hỏi tên máy chủ cho một

máy chủ bằng cách đi qua các địa chỉ IP).

(2). Thiết bị giải đưa ra một công thức một truy vấn tới máy chủ tên. ( Thiết bị giải hoàn

toàn có một bộ nhớ catche tên cục bộ để tham khảo trước); phân giải không còn sơ khai.

(3). Máy chủ tên kiểm tra để xem câu trả lời là trên cơ sở dữ liệu có thẩm quyền cục bộ

hoặc bộ nhớ catche, nếu có, trả lại cho khách hàng. Nếu không, nó truy vấn các máy chủ

tên có sẵn, bắt đầu xuống từ gốc của cây DNS hoặc đi lên cao tới mức có thể có.

(4). Các chương trình người sử dụng cuối cùng cũng đưa ra một địa chỉ IP tương ứng

(hoặc tên máy chủ, tùy thuộc vào truy vấn) hoặc một lỗi, nếu truy vấn không thể trả lời.

Thông thường chương trình sẽ không được cung cấp một danh sách tất cả các máy chủ

tên được tham vấn để xử lý các câu truy vấn.

Độ phân giải tên một tiến trình máy khách/máy chủ. Các chức năng máy khách ( được

gọi là thiết bị giải, hoặc phân giải tên) là minh bạch đối với người sử dụng và được gọi

bởi một ứng dụng để giải quyết các biểu tượng tên cấp cao và địa chỉ IP hoặc ngược lại.

Các máy chủ tên ( còn được gọi là máy chủ tên miền – domain name server) là ứng dụng

máy chủ cung cấp để dịch giữa tên máy cao cấp và các địa chỉ IP. Việc truy vấn/trả lời

tin nhắn có thể được vận chyển bằng UDP hoặc TCP.

Bộ phân giải tên miền hoàn toàn( Domain name full resolver).

Hình sau cho thấy một chương trinh phân giả đầy đủ, được phân biệt với chương trình

người sử dụng, để chuyển tiếp tất cả các truy ván tới một máy chủ tên để xử lý. Câu trả

lời được lưu trữ bởi các máy chủ tên để sử dụng về sau.

Page 18: Bài tập lớn Intranet - Domain name server

18

Hình 1- Sử dụng một bộ phân giải đầy đủ cho phân giải tên miền DNS.

Bộ phân giải tên miền sơ khai ( Domain name stub resolver).

Hình dưới đây chỉ ra một stub-resolver, một router kết nối với chương trình người sử

dụng, chuyển các truy vấn tới một máy chủ tên cho xử lý. Câu trả lời được lưu trữ bởi

các máy chủ tên, không thường bởi các bộ phân giải, mặc dù nó được thực thi phụ thuộc

vào bộ phân giải. Trên hầu hết các nền tảng, các stub resolver được thực thi bởi hai thủ

tục thư viện ( hoặc bởi một số biến thể của các thủ tục): gethostname () và

gethostbyaddr (). Chúng được sử dụng để chuyển đổi tên máy chủ đến các địa chỉ IP và

ngược lại. Stub resolver là phổ biến hơn so với full resolver.

Page 19: Bài tập lớn Intranet - Domain name server

19

Hình 2: Sử dụng stub resolver cho phân giải tên miền DNS.

Domain name resolver operation.

Truy vấn tên miền có thể là một trong hai loại: Đệ quy hoặc lặp đi lặp lại ( còn gọi là

không đệ quy). Một bit cờ trong truy vấn tên miền xác định xem các client yêu câu truy

vấn đệ quy hay không, và một bit cờ đáp ứng các quy định cụ thể hay không hỗ trợ các

máy chủ truy vấn đệ quy. Sự khác biệt giữa một truy vấn đệ quy và một truy vấn lặp đi

lặp lại phát sinh khi máy chủ nhận được yêu cầu mà nó có thể không cung cấp câu trả lời

đầy đủ của chính nó. Một truy vấn đệ quy yêu cầu máy chủ đưa ra truy vấn cho chính nó

để xác định thông tin được truy vấn và trả về câu trả lời đầy đủ cho client. Một truy vấn

lặp đi lặp lại có nghĩa là máy chủ tên trả về thông tin gì nó đã có sẵn và cũng là một

danh sách các máy chủ bổ sung cho client kết nối để hoàn thành câu truy vấn.

Tên miền có thể được đáp ứng một trong hai loại: có thẩm quyền và không cso thẩm

quyền. Một bit cờ trong đáp ứng chỉ ra loại đáp ứng là gì. Khi một máy chủ tên nhận

một truy vấn cho một miền trong vùng mà trên đó nó có thẩm quyền, nó trả về tất cả các

thông tin yêu cầu đáp ứng với trả lời có thẩm quyền cờ thiết lập. Khi nó yêu cầu một

truy vấn cho miền trên nó không có thẩm quyền, hoạt động của nó phụ thuộc vào các

thiết lập đệ quy yêu cầu cờ trong truy vấn:

- Nếu đệ quy yêu cầu cờ được thiết lập và máy chủ hỗ trợ truy vấn đệ quy, nó sẽ

trực tiếp chuyển truy vấn của nó tới một máy chủ tên khác. Điều này nghĩa là một

máy chủ tên có thẩm quyền cho miền được đưa ra trong câu truy vấn, hoặc nó sẽ

là một trong những máy chủ tên gốc ( root name servers). Nếu máy chủ thứ hai

không trả về câu trả lời ủy nhiệm ( ví dụ, nếu nó được ủy nhiệm tới máy chủ

khác), quá trình này được lặp lại.

- Khi một máy chủ ( hoặc một chương trình full resolver) yêu cầu một đáp ứng, nó

sẽ lưu trữ để cải thiện hiệu năng của truy vấn lặp. Mục nhập lưu trữ được lưu cho

độ dài lớn nhất thời gian quy định bởi người tạo thành ( 32 bit time – to- time

TTL) được chứa trong đáp ứng. Một điển hình TTL có giá trị 86.400 giây ( 1

ngày).

Page 20: Bài tập lớn Intranet - Domain name server

20

- Nếu đệ quy yêu cầu cờ thiết lập hoặc máy chủ không hỗ trợ truy vấn đệ quy, nó sẽ

trả về bất cứ thông tin gì nó có trong bộ nhớ cache của nó và một danh sách máy

chủ tên khác có thể kết nối được để biết thông tin có thẩm quyền.

Page 21: Bài tập lớn Intranet - Domain name server

21

IX. Hoạt động máy chủ tên miền ( Domain name server

operation).

Mỗi máy chủ tên có thẩm quyền hoặc là không hoặc là nhiều vùng. Có 3 loại máy chủ

tên:

(1). Máy chủ tên chính ( Primary): Một máy chủ tên chính tải thông tin của một vùng từ

đĩa và có thẩm quyền trên vùng.

(2). Thứ cấp (Secondary): Môt máy chủ tên miền thứ cấp có thẩm quyển trên một vùng,

nhưng có được thông tin vùng của nó từ một máy chủ chính sử dụng quá trình chuyển

vùng ( zone transfer). Để duy trì đồng bộ các máy chủ tên thứ cấp truy vấn máy với mức

độ thường xuyên ( khoảng3 giờ) và thực thi lại vận chuyển vùng nếu máy chính được

cập nhật. Một máy chủ tên có thể thực thi nhwu một một chủ tên chính hoặc máy chủ

tên thứ cấp cho đa miền, hoặc một máy chính cho một vài miền còn máy thứ cấp cho

những miền khác. Một máy chủ tên chính hoặc thứ cấp thực hiện tất cả các chức năng

của máy chủ tên caching – only.

(3). Caching- only: Một máy chủ tên không có thẩm quyền đối với bất cứ vùng nào được

gọi là máy chủ tên caching – only. Một máy chủ tên cachinh – onle nhận tất cả các dữ

liệu từ máy chủ tên chính hoặc thứ cấp như một truy vấn. Nó đòi hỏi ít nhất một NS để

trỏ đến một máy chủ tên mà từ đó nó có thể bước đầu có được thông tin.

Khi một vùng được đăng ký với gốc và vùng riêng biệt có thẩm quyền được thành lập,

các quy tác sau được áp dụng:

- Miền phải được đăng ký với quản trị root.

- Phải có một quản trị viên xác định cho tên miền.

- Phải có ít nhất hai máy chủ tên có thẩm quyền cho vùng có truy cập từ bên ngoài

và bên trong miền để đảm bảo không có điểm duy nhất của lỗi.

Có thể gợi ý các máy chủ tên ủy nhiệm sử dụng các nguyên tắc này, bởi vì máy chủ tên

ủy quyền chịu trách nhiệm về hành vi của các máy chủ tên theo thẩm quyền.

Page 22: Bài tập lớn Intranet - Domain name server

22

Bản ghi tài nguyên hệ thống tên miên ( Domain name system resource

records).

Cơ sở dữ liệu phân tán hệ thống tên miền ( DNS) bao gồm các bản ghi tài nguyên (

RRs), được chia thành các lớp cho các loại mạng khác nhau. Bản ghi tài nguyên cung

câos một bản đồ giữa tên miền và các đối tượng mạng. Các đối tượng mạng phổ biến

nhất là địa chỉ của các máy chủ Internet, nhưng hệ thống tên miền được thiết kế để chứa

một loạt các đối tượng khác nhau.

Một vùng bao gồm một nhóm các bản ghi tài nguyên, bắt đầu với bản ghi Start of

Authority ( SoA). Bản ghi SoA xác định tên miền của vùng. Sẽ có một máy chủ tên (NS)

ghi lại cho các máy chủ tên chính cho vùng này. Hiện cũng có thể ghi NS cho cá máy

chủ tên phụ. Các bản ghi NS được dùng để xác định thẩm quyền của máy chủ tên của

nó. Tiếp theo những bản ghi này là bản ghi tài nguyên, cái mà ánh xạ tên tới địa chỉ IP

hoặc bí danh cho tên.

Hình dưới đây chỉ ra định dạng chung cho bản ghi tài nguyên.

Hình 3: Định dạng bản ghi tài nguyên chung DNS.

Trong đó:

(1). Name: Tên miền được xác định. Hệ thống tên miền (DNS) là chung chung trong

quy định các thành phần tên miền. Tuy nhiên, nó đề xuất một cú pháp cho tên miền giảm

Page 23: Bài tập lớn Intranet - Domain name server

23

thiểu khả năng ứng dụng sử dụng bộ phân giải tên miền DNS ( có nghĩa là gần như tất

cả các ứng dụng TCP/IP) từ việc dịch sai một tên miền. Cú pháp này được đề xuất sẽ

bao gồm một loạt các nhãn bao gồm các ký tự chữ hoặc dấu gạch nối, mỗi nhãn có chiều

dài từ 1 đến 63 ký tự, bắt đầu từ một ký tự chữ cái. Mỗi cặp nhãn được phân cách bởi

dấu chấm, trong hình thức con người có thể đọc được, nhưng không theo hình thức sử

dụng thông điệp DNS. Tên miền là không nhạy cảm.

(2). Type: Xác định kiểu của tài nguyên trong bản ghi này. Có thể có nhiều giá trị nhưng

một số trong đó là phổ biến, cùng với các RFC xác định rõ chúng, được liệt kê trong

bảng hình 4.

(3) Class: Xác định họ giao thức. Giá trị thương được sử dụng phổ biến là IN ( The

Internet system), mặc dù những giá trị khác được định nghĩa bởi RFC 1035 và bao gồm:

+ CS ( giá trị 2): Các lớp CSNET ( đã lỗi thời).

+ CH ( giá trị 3): Các lớp CHAOS.

+ HS ( giá trị 4): Các lớp Hesiod.

(4). TTL: TTL (time – to – time) thời gian trong vài giây mà bản ghi tài nguyên sẽ

được hợp lệ trong bộ nhớ cache máy chủ tên, được lưu trữ trong bộ DNS như một giá trị

32-bit không dấu. Một giá trị tiêu biểu cho hồ sơ đến các địa chỉ IP là 86.400 giây ( một

ngày).

(5). Rdlength: Một giá trị số nguyên 16-bit không dấu chỉ định chiều dài, trong octets,

của trường RData.

(6) RData: Một chuỗi chiều dài của các octet mô tả tài ngyên. Định dạng của giá trị

thông tin này được ghi theo theo Type và Class của bản ghi tài nguyên.

Page 24: Bài tập lớn Intranet - Domain name server

24

Page 25: Bài tập lớn Intranet - Domain name server

25

Hình 4: Một số loại bản ghi tài nguyên có thể có.

10. Thông điệp hệ thống tên miền ( Domain Name System massage).

Tất cả các thông điệp trong giao thức hệ thống tên miền sử dụng định dạng duy nhất.

Khung này được gửi bởi các bộ phân giải tới các máy chủ tên. Chỉ có thành phần đầu và

thành phần câu hỏi được sử dụng để tạo thành truy vấn. Trả lời và chuyển tiếp của truy

vấn được sử dụng các khung tương tự, nhưng với nhiều phần điền vào ( câu trả lời/

quyền/ phần cộng thêm).

Page 26: Bài tập lớn Intranet - Domain name server

26

Hình 5: Định dạng thông điệp DNS.

Header format: Phần đầu luôn hiện hữu và có độ dài cố định 12 bytes. Các phần khác

có chiều dài thay đổi.

ID: Một định danh 16-bit được gán bởi chương trình. Định danh này được sao chép

trong các trả lời tương ứng cảu các máy chủ tên và có thể được dùng cho sự khác biệt

của các đáp ứng khi nhiều truy vấn là còn tồn tại cùng một lúc.

Parameter ( tham số): Một giá trị 16-bit được cho trong định dạng dưới đây:

Trong đó:

- QR: Cờ xác định một truy vấn (0), hoặc đáp ứng (1).

- Op Code: Một trường 4-bit quy định cụ thể các loại truy vấn:

+ 0 : truy vấn chuẩn ( Standard query – QUERY).

+ 1: truy vấn đảo ngược ( Inverse query – IQUERY).

+ 2: yêu cầu trạng thái máy chủ ( Server status request – STATUS).

Page 27: Bài tập lớn Intranet - Domain name server

27

Các giá trị khác được dành riêng để sử dụng trong tương lai:

AA – Authoritative flag: Cờ trả lời có thẩm quyền. Nếu được đặt trong một đáp ứng, cờ

này quy định rằng các máy chủ tên đáp ứng có quyền cho tên miền gửi truy vấn.

TC- Truncation flag: Cờ rút gọn. Thiết lập nếu tin nhắn dài hơn cho phép trên kênh vật

lý.

RD- Recursion desired flag: cờ yêu cầu đệ quy. Bit này phát tín hiệu đến các máy chủ

tên yêu cầu đệ quy. Bit được sao chép trong các đáp ứng.

RA – Recursion available flag: Cờ đệ quy có sẵn. Cho biết tên máy chủ hỗ trợ phân

giải đệ quy.

Zero: 3 bits dành riêng cho sử dụng trong tương lai. Phải là số 0.

Page 28: Bài tập lớn Intranet - Domain name server

28

X. . Thông điệp hệ thống tên miền ( Domain Name System

massage).

Tất cả các thông điệp trong giao thức hệ thống tên miền sử dụng định dạng duy

nhất. Khung này được gửi bởi các bộ phân giải tới các máy chủ tên. Chỉ có thành phần

đầu và thành phần câu hỏi được sử dụng để tạo thành truy vấn. Trả lời và chuyển tiếp

của truy vấn được sử dụng các khung tương tự, nhưng với nhiều phần điền vào ( câu trả

lời/ quyền/ phần cộng thêm).

Hình 5: Định dạng thông điệp DNS.

Header format: Phần đầu luôn hiện hữu và có độ dài cố định 12 bytes. Các phần khác

có chiều dài thay đổi.

ID: Một định danh 16-bit được gán bởi chương trình. Định danh này được sao chép

trong các trả lời tương ứng cảu các máy chủ tên và có thể được dùng cho sự khác biệt

của các đáp ứng khi nhiều truy vấn là còn tồn tại cùng một lúc.

Parameter ( tham số): Một giá trị 16-bit được cho trong định dạng dưới đây:

Page 29: Bài tập lớn Intranet - Domain name server

29

Trong đó:

- QR: Cờ xác định một truy vấn (0), hoặc đáp ứng (1).

- Op Code: Một trường 4-bit quy định cụ thể các loại truy vấn:

+ 0 : truy vấn chuẩn ( Standard query – QUERY).

+ 1: truy vấn đảo ngược ( Inverse query – IQUERY).

+ 2: yêu cầu trạng thái máy chủ ( Server status request – STATUS).

Các giá trị khác được dành riêng để sử dụng trong tương lai:

AA – Authoritative flag: Cờ trả lời có thẩm quyền. Nếu được đặt trong một đáp ứng, cờ

này quy định rằng các máy chủ tên đáp ứng có quyền cho tên miền gửi truy vấn.

TC- Truncation flag: Cờ rút gọn. Thiết lập nếu tin nhắn dài hơn cho phép trên kênh vật

lý.

RD- Recursion desired flag: cờ yêu cầu đệ quy. Bit này phát tín hiệu đến các máy chủ

tên yêu cầu đệ quy. Bit được sao chép trong các đáp ứng.

RA – Recursion available flag: Cờ đệ quy có sẵn. Cho biết tên máy chủ hỗ trợ phân

giải đệ quy.

Zero: 3 bits dành riêng cho sử dụng trong tương lai. Phải là số 0.

Rcode : mã đáp ứng 4-bit. Giá trị có thể là:

+ 0 – Không nỗi.

+ 1- Định dạng lỗi. Các máy chủ không thể làm rõ thông điệp.

+ 2- Lỗi máy chủ. Thông điệp không được xử lý bởi vấn đề với máy chủ.

+ 3 – Lỗi tên. Tên miền trong truy vấn không tồn tại.

+ 4- Lỗi không thực thi. Các loại yêu cầu của truy vấn không phải là được thực hiện bởi

máy chủ.

+ 5- Từ chối. Các máy chủ từ chối trả lời vì lý do chính sách.Các giá trị khác được dành

Page 30: Bài tập lớn Intranet - Domain name server

30

riêng để sử dụng trong tương lai.

QDcount: Một số nguyên không dấu 16-bit quy định cụ thể số lượng các mục trong

phần câu hỏi.

ANcount: Một số nguyên không dấu 16-bit quy định cụ thể số lượng RRs trong phần trả

lời.

NScount: Một số nguyên không dấu 16-bit quy định cụ thể số lượng các máy chủ tên

RRs trong phần thẩm quyền.

ARcount: Một số nguyên không dấu 16-bit quy định cụ thể số lượng RRs trong phần

bản ghi bổ sung.

Phần câu hỏi ( Question section): Phần tiếp theo chứa các truy vấn cho máy chủ tên.

Nó chưa Qdcount ( thường là 1) các mục.

Hình 6: Định dạng câu hỏi DNS.

Trong đó:

Length: Một byte đơn cho biết độ dài của nhãn tiếp theo.

Lable: Một thành phần của đặc tính tên miền ( ví dụ: ibm từ ral.ibm.com). Tên miền

được suy ra từ câu hỏi được lưu trữ như một chuỗi các nhãn có chiều dài thay đổi mỗi

thứ bậc chiều dài 1byte.

00: X‟00‟ cho biết sự kết thúc của tên miền và nhãn null của miền gốc.

Page 31: Bài tập lớn Intranet - Domain name server

31

Type: Loại 2bytes xác định kiểu truy vấn. Nó có thể có bất kỳ giá trị tư trường Type

trong bản ghi tài nguyên.

Class: 2 bytes xác định loại truy vấn. Đối với truy vấn Internet, nó sẽ là IN.

Ví dụ: Tên miền mydiv.mycorp.com được mã hóa như sau:

X „05‟

“mydiv”

X „06‟

“mycorp”

X „03‟

“com”

X „00‟

Do đó các mục trong phần câu hỏi cho mydiv.mycorp.com yêu cầu 22bytes: 18bytes để

lưu trữ tên miền, 2 bytes cho Qtype và 2 bytes cho các lĩnh vực Qclass.

Phần trả lời, quyền hạn, và tài nguyên bổ sung ( Answer, authority, and additional

resource sections)

Có ba phần chứa có chứa một số biến các bản ghi tài nguyên. Các số được quy định

trong trường tương ứng của header.

Page 32: Bài tập lớn Intranet - Domain name server

32

Hình 7: DNS: Định dạng mục bản ghi trả lời.

Trong đó các trường trước trường TTL có cũng ý nghĩa như mục câu hỏi và:

- TTL: giá trị tim-to-time 32 bit trong vài giây cho mỗi bản ghi. Điều này định

nghĩa nó được coi là hợp lệ trong bao lâu.

- Rdlength: Chiêu dài 16-bit cho trương Rdata.

- Rdata: Một chuỗi chiều dài biến giải thích sự phụ thuộc vào trường Type

Nén thông điệp ( Message compression)

Để giảm kích thước thông điệp, một chương trình nén được sử dụng để loại bỏ sự lặp lại

của tên miền trong các RRs khác nhau. Bất kỳ tên miền trùng lặp hoặc danh sách các

nhãn được thay thế bằng một con trỏ trỏ tới sự xuất hiện trước đó. Các con trỏ có dạng

trường 2 bytes.

Hình8: Nén thông điệp DNS

Page 33: Bài tập lớn Intranet - Domain name server

33

Trong đó:

- Hai bit đầu tiên phân biệt con trỏ từ một nhãn bình thường, cái mà được hạn chế

với chiều dài 63- byte cộng với byte chiều dài trước đó ( trong đó có một giá trí <

64).

- Trường offset quy định một khoảng trống cụ thể từ đầu thông điệp. Trường offset

0 quy định byte đầu tiên là của trường ID trong header.

- Nếu quá trình nén được dùng một trường Rdata của phần trả lời, thẩm quyền,

hoặc bổ sung của thông điệp, trường Rdlegth chứa độ dài thực sau khi nén.

Sử dụng định dạng tài nguyên đồng dạng DNS - Using the DNS Uniform Resource

Identified (URI).

Một DNS cũng có thế được truy vấn bằng cách sử dụng URI này được định nghĩa trong

RFC 4501. Tuân theo các định dạng:

“dns:” + [ “//” + dnsauthority + “:” + port + ”/” ] + dnsname +

[ “?” + dnsquery ]

Trong đó:

Dnsauthority: Các máy chủ DNS mà truy vấn được gửi đến. Nếu Dnsauthority trống,

truy vấn được gửi đến máy chủ DNS mặc định.

Dnsname: Tên hoặc địa chỉ IP được truy vấn.

Dnsquery: Kiểu truy vấn được thực hiện. Nó có thể được kết hợp hoạc phân cách bởi

dấu chấm phẩy (;) trong đó:

+ Class: Thường là IN cho Internet, class của truy vấn.

+ Type: Các loại bản ghi tài nguyên mong muốn.

Ví dụ: Một truy vấn dùng URI để phân giải tên www.myCorp.com tới địa chỉ IP có thể

xuất hiện như sau:

dns:www.mycorp.com

Ngoài ra các yêu cầu tương tự có thể được gửi tới máy chủ tại 10.1.2.3 trên cổng 5353

sử dụng:

Page 34: Bài tập lớn Intranet - Domain name server

34

dns://10.1.2.3:5353/www.mycorp.com

Cuối cùng, cùng một truy vấn có thể được thực hiện chỉ định một Class của IN trong

một Type của A:

dns://10.1.2.3:5353/www.mycorp.com?class=IN;type=A

Page 35: Bài tập lớn Intranet - Domain name server

35

XI. Kịch bản đơn giản

Giả sử một mạng độc lập (không có kết nối ra bên ngoài ) gồm 2 mạng con vật lý.

Một mạng có địa chỉ Internet là 129.112.

Một mạng có địa chỉ mạng là 194.33.7.

Các mạng này được nối với nhau qua một IP gateway (VM2) như sơ đồ sau:

Giả sử chức năng của máy chủ tên miền được đặt cho VM1. Cây phân cấp tên miền là

một cây logic, độc lập hoàn toàn với cấu hình vật lý. Trong kịch bản đơn giản này, chỉ có

một cấp trên cây tên miền được gọi là test.example.

Vùng dữ liệu của máy chủ tên miền được mô tả trong hình sau:

Page 36: Bài tập lớn Intranet - Domain name server

36

Page 37: Bài tập lớn Intranet - Domain name server

37

Giải thích 2 hình trên:

1. Câu lệnh $origin đặt @biến cho tên vùng (test.example.). Các tên miền không kết

thúc với dấu chấm được gắn đằng sau tên vùng. Các tên miền chuẩn(kết thúc với

dấu chấm) không bị ảnh hưởng bởi tên vùng.

2. Định nghĩa máy chủ tên miền cho vùng.

3. Định nghĩa địa chỉ IP cho máy chủ tên miền cho vùng.

4. Chỉ định những dịch vụ cho host. Những dịch vụ này luôn được sẵn sàng.

5. Đưa thông tin về host.

6. Sử dụng cho truy vấn ánh xạ ngược (đã được nói đến trong mục 12.1.6, “lập bản

đồ địa chỉ IP cho tên miền: Con trỏ truy vấn”).

7. Cho phép gửi thư cho địa chỉ của người sử dụng : [email protected].

8. SMTP phải truy vấn đến máy chủ tên miền để tìm host(tên miền) nào cần phải

chuyển thư. Máy chủ tên miền lưu trữ các bản ghi nguồn(RRs), hay Mail

Exchange(MX) RRs. Như trong hình, có nhiều bản ghi MX tồn tại. Trong hình,

mail cho central.test.example được gửi cho VM2.test.example. Trong trường hợp

Host này bị lỗi, mail sẽ được gửi cho VM1.test.example và đường đến

VM2.test.example sẽ được loại bỏ.

Page 38: Bài tập lớn Intranet - Domain name server

38

XII. Kịch bản mở rộng

Xét trường hợp có kết nối đến mạng thứ ba (129.113), đã có một máy chủ tên có thẩm

quyền đối với nhóm đó.

Giả sử tên miền của mạng khác là tt.ibm.com và máy chủ tên miền được đặt ở VM9. Ta

thêm địa chỉ của máy chủ tên vào cơ sở dữ liệu của máy chủ tên của ta (trong cache file

khởi tạo named.ca) và tham chiếu đến mạng khác vằng máy chủ tên riêng của nó. Hai

dòng cần thêm là:

tt.ibm.com. 99999 IN NS VM9.tt.ibm.com.

VM9.tt.ibm.com. 99999 IN A 129.13.1.9

Vậy chỉ có VM9 có thẩm quyền cho mạng mới và tất cả các truy vấn trong mạng đều

được chuyển trực tiếp đến máy chủ tên.

Page 39: Bài tập lớn Intranet - Domain name server

39

XIII. Giao vận

Các thông điệp của hệ thống tên miền được truyền bằng các gói (UDP) hoặc bằng kết

nối dòng (TCP):

Với UDP: cổng serer 53 (hệ 10).

Thông điệp được vận chuyển bằng UDP được giới hạn trong 512 bytes. Những

thông điệp dài được cắt ngắn và bit bị cắt (TC) được đặt trong header. Bởi frame

của UDP có thể bị thất lạc, việc truyền lại là cần thiết.

Với TCP: cổng server 53 (hệ 10)

Trong trường hợp này, một trường 2 byte trước thông điệp cho biết độ dài của

frame thông điệp.

STD3 – yêu càu đặt ra của Host:

o Hệ thống giải quyết hoặc máy chủ tên miền nếu gửi một truy vấn không

chuyển giao khu thì phải gửi truy vấn UDP đầu tiên. Nếu phần trả lời bị rút

gọn và nếu bên gửi yêu cầu có hỗ trợ TCP, máy chủ sẽ truy vấn lại bằng

TCP. UDP được ưu tiên hơn TCP vì truy vấn UDP có chi phí xử lý tổng thể

thấp hơn và đối với server tải nặng thì việc sử dụng UDP là cần thiết. Các

thông điệp rút gọn hiếm khi là vấn đề với nội dung hiện tại của cơ sở dữ

liệu, bởi thông thường 15 bản ghi trả lời có thể được cung cấp trong gói dữ

liệu, nhưng có thể thay đổi khi loại bản ghi mới tiếp tục được thêm vào hệ

thống tên.

o TCP được sử dụng cho những thao tác chuyển giao khu vực vì giới hạn 512

byte cho gói UDP luôn là không đủ cho chuyển vùng.

o Các máy chủ tên phải hỗ trợ cả hai loại giao vận.

Khi IPv6 ngày càng phổ biến trên mạng, một số vấn đề được dự đoán là kết quả của

những phân đoạn mạng hỗn hợp IPv4/IPv6. Chủ yếu, nếu giải quyết chỉ sử dụng IPv4

được chuyển qua đoạn mạng chỉ hỗ trợ IPv6, giải quyết và máy chủ tên không thể giao

Page 40: Bài tập lớn Intranet - Domain name server

40

tiếp được với nhau. Kết quả, không gian tên phân cấp bị phân đoạn thành hai: đoạn hỗ

trợ IPv4 và IPv6, và đoạn chỉ hỗ trợ IPv6. Đây được gọi là vấn đề phân đoạn không

gian tên, được đề cập trong tài liệu RFC 3901. Để bảo toàn không gian tên liên tục, RFC

3901 đề cập đến những điều sau:

Mỗi máy chủ tên đệ quy nên chỉ IPv4, hoặc cả IPv4 và IPv6.

Mọi vùng DNS nên được phục vụ bởi ít nhất một máy chủ IPv4 truy cập được và

có thẩm quyền.

DNS động (DDNS)

Hệ thông tên miền động (DDNS) là một giao thức định nghĩa những mở rộng cho hệ

thống tên miền để cho phép máy chủ DNS chấp nhận yêu cầu bổ sung, cập nhật, và xóa

các mục trong cơ sở dữ liệu DNS một cách tự động. Bởi DDNS cung cấp siêu chức năng

cho những máy chủ DNS, máy chủ DDNS có thể phục vụ cả tên miền tĩnh và động đồng

thời.

DDNS hiện có hai phiên bản là an toàn và không an toàn, được định nghĩa trong tài liệu

RFC 2136 và RFC 3007. Thay vì cho phép host bất kì được cập nhật bản ghi của DNS,

phiên bản an toàn của DDNS sử dựng khóa công khai và chữ kí số để xác thực các yêu

cầu cập nhật từ các host DDNS.

Nếu không có chứng thực của client, host khác có thể giả mạo một host tin cậy bằng

cách ánh xạ lại các mục địa chỉ của những host tin cậy. Sau đó, những dữ liệu quan

trọng, ví dụ mật khẩu đăng nhập và thư điện tử thay vì gửi cho một host, sẽ được gửi

cho host mạo danh.

Page 41: Bài tập lớn Intranet - Domain name server

41

XIV. Các ứng dụng DNS

Ba tiện ích phổ biến của máy chủ tên được cung cấp với nhiều sự thực thi DNS:

host, nslookup, và dig. Mặc dù những thông tin cụ thể về mỗi tiện ích thay đổi chút ít

bởi nền tảng, phần lớn các nền tảng có một tập các tùy chọn phổ biến.

Host

Lệnh host có một địa chỉ IP liên kết với tên host, nói cách khác là tên host được liên kết

với một địa chỉ IP. Cú pháp điển hình cho câu lệnh host là:

host [options] name [server]

với

Option: những tùy chọn cụ thể:

o -c class : truy vấn lớp. Mặc định là IN (Internet), một số tên lớp khác

là CS(CSNET), CH (CHAOS), HS (Hesiod), and ANY (cả 4 lớp).

o -r : Vô hiệu hóa quá trình đệ quy

o -t type : Loại truy vấn, có thể là bất kì loại nào trong bảng sau:

Page 42: Bài tập lớn Intranet - Domain name server

42

Page 43: Bài tập lớn Intranet - Domain name server

43

o -w : yêu cầu host đợi cho đến khi có phản hồi.

name : tên của host hoặc địa chỉ được giải quyết

server: máy chủ tên miền để truy vấn

nslookup

Lệnh nslookup cho phép truy cập thông tin về nút mạng, khảo sát nội dung trong cơ sở

dữ liệu của máy chủ tên, và khả năng truy cập của các máy chủ tên. Cú pháp điển hình

của câu lệnh nslookup như sau:

nslookup [options] [host] [-nameserver]

trong đó:

options : những tùy chọn này thay đổi theo từng nền tảng.

host : tên host hoặc địa chỉ IP để truy cập

-nameserver : máy chủ tên được truy vấn

Page 44: Bài tập lớn Intranet - Domain name server

44

dig

Dig là viết tắt của Domain Internet Groper, cho phép làm việc với các máy chủ tên

miền, thu thập lượng lớn thông tin tên miền và thực thi những truy vấn tên miền đơn

giản. Cú pháp điển hình của lệnh dig là:

dig @server [options] [name] [type] [class] [queryopt]

trong đó:

@server : máy chủ tên DNS được truy vấn

options : tùy chọn phù hợp gồm:

o -b address : địa chỉ IP nguồn

o -c class : lớp truy vấn. Mặc định là IN(Internet), ngoài ra còn có CS

(CSNET), CH (CHAOS), and HS (Hesiod).

o -f filename : cho dig hoạt động ở chế độ hàng loạt và quy định tập

tin mà các lệnh hàng loạt được tìm thấy.

o -p port : quy định cổng để dig gửi truy vấn thay vì cổng mặc định của

DNS là 53.

o -x address : chỉ dẫn cho dig tra cứu ngược trên một địa chỉ cụ thể.

name : tên bản ghi nguồn được tra cứu.

type : loại truy vấn (như câu lệnh host).

Page 45: Bài tập lớn Intranet - Domain name server

45

KẾT LUẬN Qua trên, chúng em đã trình bày những nét cơ bản của DNS – hệ thống tên miền.

Trong thời đại bùng nổ công nghệ thông tin hiện nay, với sự phổ biến và tầm quan trọng

thiết yếu của hệ thống này với Internet thì những hiểu biết về các đặc điểm, chức năng

cũng như cách sử dụng của DNS là thực sự cần thiết với mỗi người dùng, nhất là với

những sinh viên công nghệ thông tin.

Sau khi làm bài tập lớn này, chúng em đã thu được nhiều điều bổ ích không chỉ

giúp ích cho môn học, mà còn cho công việc sau này. Trong thời gian có hạn, bài tập lớn

của chúng em vẫn chưa thể hoàn thiện, chúng em rất mong nhận được nhận xét của thầy

để bài tập lớn này được hoàn thiện hơn nữa.

Page 46: Bài tập lớn Intranet - Domain name server

46

TÀI LIỆU THAM KHẢO

[1] http://datatracker.ietf.org/doc/rfc1034/

[2] http://datatracker.ietf.org/doc/rfc1035/

[3] http://en.wikipedia.org/wiki/Fully_qualified_domain_name

[4]http://www.joomla.edu.vn/config-domain-dns/46-what-is-dns/58-dns-lam-viec-

nhu-the-nao.html

[5] TCP/IP Tutorial and Technical Overview