bài tập lớn intranet - domain name server
TRANSCRIPT
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
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.
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
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
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ủ.
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:
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.
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ộ.
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
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.
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
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.
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ủ
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.
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
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.
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.
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.
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).
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.
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.
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
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.
24
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).
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).
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.
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:
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
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.
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.
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
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:
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
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:
36
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ỏ.
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.
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
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.
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:
42
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
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).
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.
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