Kiến
trúc DNS (Domain Name System) là một
cơ sở dữ liệu phân tán phân tầng và kết hợp với tập các giao thức xác định:
·
Cơ chế truy vấn và cập nhật cơ sở dữ liệu
·
Cơ chế sao chép thông tin trong cơ sở dữ
liệu giữa các máy chủ
·
Một lược đồ cơ sở dữ liệu
DNS
bắt nguồn từ những ngày đầu của Intenet khi Internet chỉ là một mạng nhỏ được
thiết lập bởi Bộ Quốc phòng Mỹ dành cho mục đích nghiên cứu. Máy chủ lưu trữ của
các máy tính trong mạng này được quản lý thông qua việc sử dụng một tệp tin
HOSTS nằm ở máy chủ quản lý tập trung. Mỗi trang web cần máy chủ lưu trữ trong
mạng phải tải về tệp này. Số máy chủ trên Internet ngày càng tăng, lưu lượng được
tạo ta trong quá trình cập nhật, cũng như sự mở rộng dung lượng của tệp tin
HOSTS. Như cầu có một hệ thống mới, nơi có thể cung cấp những tính năng như khả
năng mở rộng, quản trị phân quyền, hỗ trợ nhiều kiểu dữ liệu ngày càng trở lên
cần thiết và rõ ràng.
Hệ
thống phân giải tên miền được giới thiệu năm 1984 trở thành hệ thống DNS mới.
Cùng với DNS, host names nằm trong một cơ sở dữ liệu có thể phân phối giữa nhiều
máy chủ, giảm tải đối với bất kỳ máy chủ nào và cung cấp khả năng quản trị hệ
thống tên này trên cơ sở phân vùng. DNS hỗ trợ phân cấp tên và cho phép đăng ký
nhiều kiểu dữ liệu ngoài việc tạo bản đồ giữa host names và địa chỉ IP được sử
dụng trong tệp tin HOSTS. Bởi vậy, cơ sở dữ liệu của DNS bị phân tán, khả năng
mở rộng không giới hạn và hiệu suất không bị xuống cấp khi có thêm nhiều máy chủ.
Ban
đầu DNS dựa trên Request for Comment (RFC) 882 (Domain Names: Concepts and Facilities) và RFC 883 (Domain Names–Implementation and
Specification), được thay thế bởi RFC 1034 (Domain Names–Concepts and Facilities), và RFC 1035 (Domain Names–Implementation and
Specification). Các RFCs bổ sung miêu tả các vấn đề an ninh, triển khai và
quản trị DNS sau đó tăng cường thêm các đặc điểm theo thiết kế ban đầu.
Việc
thực hiên DNS - Berkeley Internet Name Domain (BIND) – ban đầu được phát triển
cho hệ điều hành BSD UNIX 4.3. Việc thực hiện DNS của Microsoft trở thành một
phần của hệ điều hành Microsoft Windows NT Server 4.0. Máy chủ DNS
Windows NT 4.0 cũng như hầu hết các thực thi DNS khác có nguồn gốc RFCs
1034 and 1035. Các RFCs được sử dụng trong hệ điều hành
Windows Server® 2008 là 1034, 1035, 1886, 1996, 1995, 2136, 2308, and
2052.
Tên
miền DNS
Hệ
thống phân giải tên miền được thực hiện như là một cơ sở dữ liệu phân tán và
phân cấp có chứa nhiều kiểu dữ liệu, bao gồm máy chủ lưu trữ và tên miền. Tên
trong cơ sở dữ liệu DNS có dạng cấu trúc cây phân nhánh được gọi là không gian
tên miền. Tên miền bao gồm các nhãn riêng rẽ và được ngăn cách bởi dấu “.”, ví
dụ: mydomain.microsoft.com
Một
tên miền đầy đủ điều kiện (FQDN – Fully
Qualified Domain Name) được xác định dhuy nhất vị trí máy chủ lưu trữ trong
cây phân cấp DNS bằng cách chỉ định một danh sách tên riêng biệt được ngăn cách
bởi dấu “.” trong đường dẫn từ máy chủ tham chiếu tới gốc. Hình 1 là một ví dụ
cây DNS cùng máy chủ được gọi là mydomain trong tên miền microsoft.com. FQDN của
máy chủ sẽ là mydomain.microsoft.com.
Hiểu không gian tên miền
DNS
Không
gian tên miền DNS, như hình 1 là dựa trên khái niệm cây của các tên miền. Mỗi cấp
của cây có thể đại diện cho một nhánh hoặc một lá của cây. Một nhánh là cấp mà ở
đó có nhiều hơn một tên được dùng để xác định một tập hợp nguồn lực được đặt
tên. Một lá đại diện cho một tên đơn lẻ được sử dụng một lần, mức lá biểu thị một
nguồn lực cụ thể.
Hình 1: Một ví dụ về cây phân cấp
DNS
Phân cấp tên miền DNS
Hình
1 cho thấy Microsoft được phân quyền bởi máy chủ root Internet sở hữu một phần
trong cây không gian tên miền DNS trên Internet. DNS Client và DNS Server sử dụng
truy vấn như một phương thức cơ bản để phân giải tên trong cây với các kiểu
thông tin tài nguyên cụ thể. Thông tin này được cung cấp bởi DNS Server trong
truy vấn phản hồi tới DNS Client, sau khi trích xuất thông tin và gửi nó tới một chương trình yêu cầu phân giải
tên truy vấn. Trong quá trình xử lý, nên nhớ rằng DNS Server thường có chức
năng như DNS Client, các truy vấn theo thứ tự để phân giải hoàn toàn một tên
truy vấn.
Không
gian tên miền DNS được tổ chức thế nào
Bất
kỳ một tên miền DNS sử dụng trong cây đều có tính kỹ thuật. Hầu hết các thảo luận
về DNS, để xác định tên theo một trong năm cách, dựa trên cấp và cách mà tên
thường được sử dụng. Ví du: tên miền đăng ký cho Microsoft (microsoft.com) được biết đến là tên miền
cấp hai. Điều này vì tên có hai phần (được gọi là nhãn) chỉ ra nó nằm ở cấp hai
dưới root hoặc tên miền cấp một của cây. Hầu hết các tên miền có hai nhãn hoặc
nhiều hơn, mỗi nhãn chỉ ra một cấp độ mới trong cây. Khoảng được dùng ở trong
tên để tách nhãn.
Năm
loại được sử dụng để mô tả tên miền theo chức năng chủa chúng trong không gian
tên được miêu tả ở bảng dưới, cùng với một ví dụ cho từng loại.
Kiểu tên miền DNS
Bảng 1: Các kiểu tên miền DNS
Tên kiểu
|
Miêu tả
|
Ví dụ
|
Tên
miền gốc (Root domain)
|
Đây
là đỉnh của cây, đại diện cho mức không tên, thi thoảng nó hiện thị dưới dạng
hai dấu trích dẫn trống chỉ giá trị null (""). Khi sử dụng trong
tên miền DNS, nó được chỉ ra bởi dấu khoảng (.) để chỉ ra rằng cái tên đó nằm
ở root hay mức cao nhất của hệ thống. Trong trường hợp, tên miền DNS được xem
là hoàn thành và chỉ tới một vị trí chính xác trong cây. Tên này cho theo
cách là FQDNs.
|
Một
khoảng (.) hoặc một khoảng được dùng ở cuối của một tên như là:
“example.microsoft.com.”
|
Tên
miền cấp cao nhất (Top-level domain)
|
Một
tên dùng để chỉ ra một quốc gia, một vùng hoặc một tổ chức nào đó.
|
“.com”,
cho biết là tên đăng ký của một doanh nghiệp sử dụng tương mại trên Internet.
|
Tên
miền cấp hai (Second-level domain)
|
Tên
đăng ký cho một cá nhân hay một tổ chức sử dụng trên Internet. Những tên này
luôn luôn dựa vào sự thích hợp với tên miền cấp một, phụ thuộc vào kiểu của tổ
chức hoặc vị trí địa lý nơi mà tên miền được sử dụng.
|
“microsoft.com.”,
là tên miền cấp hai được cấp phát cho Microsoft bởi hệ thống tên miền
Internet – DNS.
|
Tên
miền con (Subdomain)
|
Tên
miền này có thể tạo từ nguồn tên miền cấp hai của một tổ chức. Chúng bao gồm
các tên được bỏ sung vào làm mở rộng cây DNS trong một tổ chức tới các phòng
ban hoặc vị trí địa lý…
|
“example.microsoft.com”,
là tên miền con được Microsoft giao để sử dụng trong các tài liệu.
|
Host
or resource name
|
Tên
đại diện cho một lá trên cây DNS và xác định một tài nguyên cụ thể. Thông thường,
nhãn hầu hết các lá của tên miền DNS xác định một máy tính cụ thể trên mạng.
Ví dụ: nếu một tên ở cấp này được sử dụng trong một bản ghi tài nguyên host
A, nó được sử dụng để tra cứu địa chỉ IP dựa trên host name của chúng.
|
“host-a.example.microsoft.com”,
nơi chứa nhãn đầu tiên “host-a” là tên máy chủ lưu trữ DNS cho một máy tính cụ
thể trên mạng.
|
Tên
miền DNS và Internet
Hệ
thống tên miền Internet được quản lý bởi Cơ quan đăng ký trên miền trên
Internet, chịu trách nhiệm duy trì tên miềm cấp cao nhất được thừa hưởng bởi
các tổ chức, các quốc gia và vùng lãnh thổ. Những tên miền này theo chuẩn
International Standard 3166. Một số chữ cái viết tắt dùng cho các tổ chức, 2 hoặc
3 chữ cái viết tắt dùng cho các quốc gia và vùng lãnh thổ được quy định cụ thể
ví dụ ở bảng dưới đây:
Một số tên miền DNS cấp
cao (TLDs)
Bảng 2: Ví dụ một số kiểu tên miền
cấp cao
Tên miền DNS
|
Kiểu tổ chức
|
com
|
Tổ
chức thương mại
|
edu
|
Học
viện giáo dục
|
org
|
Tổ
chức phi lợi nhuận
|
net
|
Mạng
(xương sống của Internet)
|
gov
|
Tổ
chức chính phủ phi quân sự
|
mil
|
Các
tổ chức quân sự
|
arpa
|
Đảo
ngược DNS
|
“xx”
|
Mã
quốc gia (ví dụ: us, vn, ca, fr)
|
Bản
ghi Tài nguyên
Cơ
sở dữ liệu DNS bao gồm các bản ghi tài nguyên (RRs - Resource Records). Mỗi RR xác định một tài nguyên cụ thể cùng
với cơ sở dữ liệu. có nhiều loại RR trong DNS. Phần này cung cấp thông tin về cấu
trúc chung của các bản ghi tài nguyên. Bảng 3 dưới đây cung cấp thông tin chi
tiết về cấu trúc chung của các bản ghi tài nguyên.
Bản ghi tài nguyên DNS
chung
Bảng 3: Cấu trúc chung của bản ghi
tài nguyên
Miêu tả
|
Lớp
|
Time to Live (TTL)
|
Kiểu
|
Dữ liệu
|
Start
of Authority
|
Internet
(IN)
|
Mặc
định TTL là 60 phút
|
SOA
|
Bản
ghi SOA được hiểu là “Start of Authority“, tức là thông tin xác nhận từ phía
máy chủ tiếp nhận của tên miền.
Ví dụ:
ns1.anycast.vn
admin.anycast.vn-2013022001 86400 7200 604800 300
ns1.anycast.vn:
giá trị DNS chính của tên miền hoặc máy chủ.
admin.anycast.vn:
chuyển đổi từ dạng admin@anycast.vn, thể hiện chủ thể sở hữu tên miền này.
Trong nhiều trường hợp, đây cũng sẽ trùng với email quản lý DNS của khách
hàng trên hệ thống AnyCast hoặc các hệ thống DNS trung gian khác.
2013022001:
Thời gian cập nhật DNS cho tên miền mới nhất. Định dạng thời gian được hiểu
là: yyyy-mm-dd-hh-mm
86400:
số giây trước khi bản ghi DNS được tự động cập nhật lại
7200:
số giây trước khi bản ghi DNS bị lỗi không thể tự động cập nhật lại và cần lấy
lại thông tin DNS lần tiếp theo.
604800:
giới hạn thời gian tính bằng giây sau khi bản ghi DNS được gỡ bỏ trên server
và không còn hiệu lực trên server.
300:
TTL – có giá trị âm tính, xác định sau bao lâu (tính bằng giây) bản ghi con
(vd sub-domain) được thử lại và xác thực.
|
Host
|
Internet
(IN)
|
Ghi cụ thể TTL nếu có,
hoặc khu vực khác (SOA) TTL
|
A
|
Trường
Kiểu A chỉ ra rằng Giá trị là một địa chỉ IP.
Ví
dụ như mẫu tin: (ns.utehy.edu.vn,
203.162.41.166, A, IN) chỉ ra rằng địa chỉ IP của host có tên
ns.utehy.edu.vn là 203.162.41.166.
|
Name
Server
|
Internet
(IN)
|
Ghi cụ thể TTL nếu có,
hoặc khu vực khác (SOA) TTL
|
NS
|
Trường
Giá trị NS chỉ ra tên miền của máy tính đang chạy dịch vụ tên, và dịch vụ đó
có khả năng thông dịch các tên trong một miền cụ thể.
Ví
dụ như mẫu tin: (ctu.edu.vn,
ns.ctu.edu.vn, NS, IN) chỉ ra rằng server tên của miền ctu.edu.vn có tên
là ns.ctu.edu.vn.
|
Mail
Exchanger
|
Internet
(IN)
|
Ghi cụ thể TTL nếu có,
hoặc khu vực khác (SOA) TTL
|
MX
|
MX:
Trường Giá trị chỉ ra tên miền của host đang chạy chương trình mail server mà
server đó có khả năng tiếp nhận những thông điệp thuộc một miền cụ thể.
Ví
dụ mẫu tin (ctu.edu.vn,
mail.ctu.edu.vn, MX, IN) chỉ ra rằng host có tên mail.ctu.edu.vn là mail
server của miền ctu.edu.vn.
|
Canonical
Name
(bí danh)
|
Internet
(IN)
|
Ghi cụ thể TTL nếu có,
hoặc khu vực khác (SOA) TTL
|
CNAME
|
CNAME:
Trường Giá trị chỉ ra một cái tên thêm vào (bí danh) của một host nào đó. Kiểu này được dùng để đặt thêm bí
danh cho các host trong miền.
|
Phân
phối cơ sở dữ liệu DNS: tệp tin vùng và ủy thác
Cơ
sở dữ liệu DNS có thể được chia làm nhiều vùng. Một vùng là một phần của cơ sở
dữ liệu DNS chứa các bản ghi tài nguyên (RRs) cùng với tên chủ sở hữu thuộc về
phần tiếp giáp của không gian tên miền DNS. Tệp tin vùng được duy trì trên DNS
Server. Một máy chủ DNS riêng có thể cấu hình để lưu trữ 0, 1 hoặc nhiều vùng.
Mỗi
vùng được neo tại một tên miền cụ thể gọi là tên miền gốc của vùng. Một vùng
bao gồm thông tin về tất cả các tên và được kết thúc cùng tên miền gốc của vùng
đó. Một DNS Server được xem là có thẩm quyền cho một tên nếu nó tải vùng chứa
tên đó. Bản ghi đầu tiên trong bất kỳ một tệp tin vùng nào cũng là bản ghi SOA,
bản ghi SOA xác định một tên DNS Server chính cho vùng như là thông tin tài
nguyên tốt nhất cho dữ liệu trong vùng và như là một thực thể xử lý cập nhật
cho một vùng.
Một
tên trong một vùng cũng có thể được ủy thác tới một vùng khác để lưu trữ trên một
DNS Server khác. Sự ủy thác là một quá trình phân công trách nhiệm cho một phần
của không gian DNS tới chủ sở hữu máy chủ DNS
bởi một thực thể riêng biệt. Thực thể này có thể là một tổ chức, một
phòng ban hay một nhóm trong công ty của ạn. Sự ủy thác đại diện bởi bản ghi
tài nguyên NS xác định vùng được ủy thác và tên DNS của máy chủ ủy quyền cho
vùng đó. Ủy thác qua nhiều vùng là một phần trong mục tiêu thiết kế ban đầu của
DNS.
Những
lý do chính để uy thác không gian tên miền DNS bao gồm:
·
Cần ủy thác quản lý tên miền DNS cho các
tổ chức, phòng ban trong một tổ chức.
·
Cần phân tải việc duy trì một cơ sở dữ liệu
lớn giữa các DNS Server để tăng cao hiệu suất phân giải tên miền cũng như tạo một
môi trường DNS chịu lỗi.
·
Cần cho phép liên kết các máy chủ của tổ
chức bằng cách đưa máy chủ lưu trữ vào tên miền thích hợp.
Bản
ghi NS tạo thuận lợi cho việc phân quyền bằng cách xác định DNS Server cho từng
vùng và bản ghi NS xuất hiện trong tất cả các vùng. Bất cứ khi nào DNS Server cần
vượt qua sự phân quyền để phân giải một tên, nó sẽ tham chiếu tới các bản ghi
NS cho DNS Server trong vùng mục tiêu. Trong hình dưới, quản lý tên miền microsoft.com.
được phân thành 2 vùng: microsoft.com và mydomain.microsoft.com.
Phân quyền DNS
Hình 2: Ví dụ về phân quyền DNS
trong tên miền microsoft.com
Ghi chú: Nếu có nhiều bản ghi NS tồn tại trong một
vùng được ủy thác xác định nhiều DNS Server có sẵn để truy vấn, dịch vụ DNS Server
Windows Server 2008 sẽ có thể lựa chọn một máy chủ DNS gần nhất dựa trên
khoảng cách giữa các điểm được do theo thời gian cho mỗi DNS Server.
Sao
chép cơ sở dữ liệu DNS
Có
thể có nhiều vùng đại diện cho cùng một phần của không gian tên. Trong số các
vùng này có 3 loại: chính, phụ và stub.
Vùng
chính là vùng cập nhật tất cả các bản ghi thuộc về vùng đó được thực hiện. Vùng
phụ là chính sao chép bản sao chỉ đọc của vùng chính. Vùng Stub là vùng sao
chép bản sao chỉ đọc của vùng chính chỉ bao gồm các bản ghi tài nguyên xác định
DNS Server có thẩm quyền cho một tên miền DNS. Bất kỳ sự thay đổi nào của vùng
chính được sao chép tới tệp tin vùng phụ. DNS Server lưu trữ vùng chính, phụ và
stub được cho là có chủ quyền cho tên DNS trong vùng.
Bởi
vì DNS Server có thể lưu trữ nhiều vùng, bởi vậy nó có thể lưu trữ cả vùng
chính (có bản sao có thể ghi được của tệp
tin vùng) và một vùng phụ riêng biệt (có
các bản sao chỉ đọc của tệp rin vùng).
DNS Server lưu trữ vùng chính gọi là DNS Server chính của vùng đó, và DNS
Server lưu trữ vùng phụ gọi là DNS Server phụ của vùng đó.
Ghi chú:
Vùng phụ và vùng stub không thể được lưu trữ trên DNS Server lưu trữ vùng chính
cho cùng một tên miền.
Chuyển vùng – Zone
Transfer
Quá
trình sao chép tệp tin vùng tới nhiều DNS Server được gọi là chuyển vùng. Chuyển
vùng được thực hiện bởi việc sao chép tệp tin vùng từ DNS Server này tới DNS
Server khác. Chuyển vùng có thể được thực hiện từ DNS Server chính và phụ.
DNS
Server master là nguồn thông tin vùng trong quá trình chuyển. DNS Server master
có thể là DNS Server chính hay phụ. Nếu DNS Server master là DNS Server chính,
chuyển vùng đến trực tiếp từ DNS Server lưu trữ trên vùng chính. Nếu DNS Server
master là DNS Server phụ, tệp tin vùng nhận được từ DNS Server master bằng chuyển
vùng là một bản sao chỉ đọc tệp tin vùng phụ.
Việc
chuyển vùng bắt đầu bằng một trong hai cách dưới đây:
·
DNS Server master gửi một thông báo (RFC
1996) tới một hay nhiều DNS Server phụ của một thay đổi tệp tin vùng.
·
Khi dịch vụ DNS Server trên DNS Server phụ
bắt đầu, hoặc trong khoảng thời gian làm mới vùng khi hết hạn (mặc định là 15 phút cho bản ghi tài nguyên
SOA của vùng), DNS Server phụ sẽ truy vấn DNS Server master để thay đổi.
Kiểu
sao chép tệp tin vùng
Có
hai kiểu sao chép tệp tin vùng. Thứ nhất, chuyển vùng đầy đủ (AXFR) là sao chép
toàn bộ tệp tin vùng. Thứ hai, chuyển vùng từng bước (IXFR) là sao chép chỉ những
bản ghi thay đổi.
BIND
4.9.3 và phần mềm DNS Server trước đó cũng như Windows NT 4.0 DNS chỉ hỗ
trợ AXFR. Có hai kiểu AXFR: một là yêu cầu bản ghi đơn trong một gói, hai là
nhiều bản ghi trong một gói tin. Dịch vụ DNS Server trong Windows 2000 và
Windows Server 2003 hỗ trợ cả hai cách chuyển vùng, những mặc định là dùng
nhiều bản ghi trong một gói tin. Nó có thể được cấu hình khác cho phù hợp với
khả năng của máy chủ không cho phép nhiều bản ghi trong một gói tin như máy chủ
BIND 4.9.4 trở lên.
Truy
vấn cơ sở dữ liệu
Truy
vấn DNS có thể được gửi từ DNS Client (resolver)
tới DNS Server, hoặc giữa hai DNS Server.
Một
truy vấn DNS đơn thuần là yêu cầu bản ghi tài nguyên DNS của bản ghi tài nguyên
được chỉ dịnh cùng tên DNS chỉ định. Ví dụ, một truy vấn DNS có thể yêu cầu tất
cả các bản ghi tài nguyên kiểu A cùng với tên DNS chỉ định. Có hai kiểu truy vấn
DNS có thể gửi tới DNS Server: đệ quy và lặp lại.
Một
truy vấn đệ quy bắt buộc DNS Server phản hồi lại yêu cầu cho dù là phản gồi lỗi
hay thành công. DNS Client (resolvers)
thường gửi truy vấn đệ quy. Với truy vấn đệ quy, DNS Server phải liên hệ với các
DNS Server khác điều này cần để giải quyết yêu cầu . Khi nhận được phản hồi
thành công từ DNS Server khác (hoặc nhiều),
gửi phản hồi về DNS Client. Truy vấn đệ quy là kiểu truy vấn thường dùng bởi DNS
Client tới DNS Server và từ DNS Server khi chuyển tiếp, các DNS Server khác cấu
hình để xử lý yêu cầu được chuyển tiếp tới nó.
Khi
DNS Server xử lý một truy vấn đệ quy và truy vấn không thể được giải quyết từ dữ
liệu cục bộ (tệp tin vùng cục bộ hoặc bộ
nhớ cache của những truy vấn trước đó), truy vấn đệ quy phải chuyển tới DNS
Server gốc. Mỗi việc thực hiện dựa trên chuẩn của DNS bao gồm tệp tin cache (hoặc những gợi ý máy chủ root) nơi chứa
những mục cho DNS Server gốc của tên miền Internet. (Nếu DNS Server được cấu hình
chuyển tiếp, chuyển tiếp được dùng trước khi máy chủ gốc được dùng)
Một
truy vấn lặp đi lặp lại là truy vấn mà DNS Server được dự kiến phản hồi cùng với
những thông tin cục bộ tốt nhất mà nó có dựa trên những thông tin mà DNS Server
biết từ tệp tin vùng cục bộ hoặc từ bộ nhớ cache. Những phản hồi này còn được
biết là giới thiệu (quảng bá) nếu DNS
Server không có thẩm quyền cho tên. Mếu một DNS Server không có bất kỳ một
thông tin cục bộ có thể trả lời truy vấn, nó đơn giản gửi một phản hồi tiêu cực.
Một DNS Server thực hiện kiểu truy vấn này cố gắng tìm tên bên ngoài tên miền cục
bộ (hoặc tên miền) của nó (khi nó không được cấu hình chuyển tiếp).
Nó sẽ phải gửi truy vấn một số DNS Server bên ngoài để cố gắng giải quyết.
Hình
vẽ dưới đây thể hiện một số ví dụ về 2 kiểu truy vấn
Kiểu truy vấn DNS
Hình 3: Ví dụ về 2 kiểu truy vấn
Hình
vẽ thể hiện một số các truy vấn thường được sử dụng để xác định địa chỉ IP của
tên miền www.whitehouse.gov. Chuỗi truy vấn được miêu tả dưới đây: :
1. Truy
vấn đệ quy www.whitehouse.gov (A resource
record)
2. Truy
vấn lặp đi lặp lại for www.whitehouse.gov (A
resource record)
3. Giới
thiệu tên máy chủ cho .gov (NS resource records,
for .gov); để đơn giản, một truy vấn lặp đi lặp lại của DNS Server (bên trái) để phân giải địa chỉ IP của tên
máy chủ của máy chủ tên đã trả về bởi
các máy chủ DNS khác đã bị bỏ qua.
4. Truy
vấn lặp đi lặp lại cho www.whitehouse.gov (A
resource record)
5. Giới
thiệu tên máy chủ cho whitehouse.gov (NS
resource record, for whitehouse.gov)
6. Truy
vấn lặp đi lặp lại cho www.whitehouse.gov (A
resource record)
7. Trả
lời truy vấn lặp đi lặp lại từ máy chủ whitehouse.gov (địa chỉ IP của www.whitehouse.gov)
8. Trả
lời truy vấn đệ quy ban đầu tư DNS Server cục bộ tới resolver. (địa chỉ IP của www.whitehouse.gov)
Time-to-Live (TTL) cho
bản ghi tài nguyên
Giá
trị TTL trong một bản ghi tài nguyên chỉ ra độ dài thời gian dùng bởi các DNS Server
khác để xác định mất bao lâu để lưu thông tin cho một bản ghi trước khi nó hết
hạn hoặc bị loại bỏ. Ví dụ, hầu hết các bản ghi tài nguyên tạo bởi dịch vụ DNS
Server thừa kể thời gian tối thiểu (mặc định)
của một giờ từ khi bắt đầu bản ghi chính thực (SOA), ngăn cản việc mở rộng cache bởi các DNS Server khác.
DNS
Client lưu (cache) lại những phản hồi
nó nhận được khi yêu cầu. Những phản hồi trong bộ nhớ cache này có thể được
dùng để trả lời những truy vấn cùng thông tin lúc sau. Tuy nhiên, dữ liệu cache
có thời gian sống cụ thể trong tham số TTL trả về cùng với dữ liệu phản hồi.
TTL đảm bảo rằng DNS Server không giữ thông tin quá lâu trước khi trở thành lỗi
thời. Giái trị TTL cho cache có thể được đặt trong cơ sở dữ liệu DNS (mỗi một bản ghi tài nguyên bằng cách xác định
trường TTL cho bản ghi và mỗi vùng thông qua TTL tối thiểu của bản ghi SOA)
cũng như DNS Client xác đinh TTL tối đa cho phép cache các bản ghi tài nguyên.
Có
hai yếu tố cạnh tranh cần xem khi thiết lập TTL. Thứ nhất là tính chính xasv của
thông tin cache, thứ hai là việc sử dụng DNS Server và lưu lượng mạng. Nếu TTL
nhỏ, khả năng tồn tại những thông tin cũ giảm đáng kể, nhưng tăng việc sử dụng
DNS Server và lưu lượng mạng bởi DNS Client phải truy vấn DNS Server cho những
dữ liệu hết hạn vào lần yêu cầu kế tiếp. Nếu TTL dài, phản hồi cache có thể bị
lỗi thời, nghĩa là có thể sẽ gửi một câu trả lời sai cho truy vấn. Đồng thời,
TTL dài làm giảm việc sử dụng DNS Server và giảm lưu lượng giảm bởi vì DNS
Client dùng dữ liệu trong cache.
Nếu
một truy vấn được trả lời từ một mục từ cache, TTL của mục đó vượt qua phản hồi.
Đây là cách Resolvers nhận phản hồi biết thời hạn của mục đó còn giá trị.
Resolvers tôn trọng TTL từ máy chủ phản hồi; không đặt lại dựa trên TTL của
chúng. Do đó các mục thực sự hết hạn tồn tại lâu khi họ di chuyển từ DNS Server
tới DNS Server cùng bản cập nhật TTL.
Ghi chú:
Nói chung, không bao giờ cấu hình TTL bằng 0. Sự khác nhau giữa việc cài đặt từ
0 đến 60 đối với tính chính xác mỗi bản ghi, but khi TTL đặt bằng 0, có một tác
động đáng kể trên hiệu suất máy chủ DNS bởi vì máy chủ DNS liên tục truy vấn dữ
liệu hết hạn.
Cập
nhật cơ sở dữ liệu DNS
Bởi
các bản ghi tài nguyên trong tệp tin vùng có thể thay đổi, chúng phải được cập
nhật. Việc triển khai DNS trong Windows Server 2008 hỗ trợ cả cập nhật cơ
sở dữ liệu DNS tĩnh và động. Chi tiết sẽ được trình bày ở phần cấu trúc vật lý
DNS ở bài viết khác.
Sơ
đồ kiến trúc DNS
Sơ
đồ dưới đây minh họa cách mà các dịch vụ của DNS Server và DNS Client hoạt động
và cung cấp thêm thông tin về phân giải tên, cập nhật và quản trị.
Sơ
đồ thứ nhất minh họa kiến trúc dịch vụ DNS Client trong việc phân giải tên và cập
nhật. Trong sơ đồ này, kiến trúc phân giải tên được chứng minh bằng cách sử dụng
trình duyệt Web, Microsoft Outlook và cập
nhật được đại diện bởi DHCP Client.
Kiến trúc dịch vụ máy
khách DNS
Hình 4: Kiến trúc dịch vụ DNS
Client
Dưới
đây là sơ đồ minh họa kiến trúc dịch vụ DNS Server cùng với công cụ quản trị của
nó và gaio diện Windows Management Instrumentation (WMI).
Kiến trúc dịch vụ máy
chủ DNS
Hình 5: Kiến trúc dịch vụ DNS
Server
No comments:
Post a Comment