Đề tài DỰNG DNS SERVER TRÊN LINUX
Sau khi tìm hiểu về DNS server trên linux em thấy DNS ko chỉ đem lại thông tin cho mọi người mà nó còn mang lại giá trị kinh tế khổng lồ cho những tên miền đặc biệt , Như chúng ta đã biết máy chủ tên miền (name server) là máy chủ chứa cơ sở dữ liệu dùng cho việc chuyển đổi giữa tên miền và địa chỉ IP. Như cách phân cấp của hệ thống tên miền, tương ứng với mỗi cấp và mỗi loại tên miền có máy chủ tên miền phục vụ tên miền ở cấp đó và loại tên miền đó. Máy chủ tên miền ở mức root sẽ chứa cơ sở dữ liệu quản lý tên miền ở mức top-level-domain. Ở mỗi quốc gia sẽ có máy chủ tên miền quản lý domain.
31 trang |
Chia sẻ: aloso | Lượt xem: 2560 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề tài DỰNG DNS SERVER TRÊN LINUX, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bộ Giáo Dục Và Đào Tạo
HỆ THỐNG ĐÀO TẠO CHUYÊN GIA MẠNG QUỐC TẾ BÁCH KHOA NPOWER
Độc Lập- Tự Do- Hạnh Phúc
----------- oOo ----------
TÊN ĐỀ TÀI:
DỰNG DNS SERVER TRÊN LINUX
Học viên thực hiện:
Phạm Thị Diệu Linh
Trần Thị Huyền Trang
Giáo viên hướng dẫn:
Thầy Đỗ Quang Trung - gv môn Server
Hà Nội –Tháng 8, Năm 2010
LỜI MỞ ĐẦU
Cùng với sự phát triển nhanh chóng của nền kinh tế. Vấn đề ứng dụng hệ thống Mạng thông tin vào điều hành và sản xuất trong doanh nghiệp ngày càng được đẩy mạnh. Nhà quản lý mong muốn Quản trị viên mạng thông tin phải nắm bắt được hầu hết các công nghệ mạng để nhanh chóng triển khai , ứng dụng những công nghệ mạng tiên tiến vào phục vụ điều hành sản xuất cũng như lập kế hoạch xây dựng và bảo vệ hệ thống thông tin nội bộ của doanh nghiệp tránh khỏi mọi nguy cơ tấn công.
Chắc hẳn đã nhiều người quan tâm tới lĩnh vực hệ thống và không thể không biết tới trong các dịch vụ mạng đó là DNS. Một dịch vụ quan trọng nhất trên Internet và trong nội bộ của các doanh nghiệp, cho phép toàn bộ máy tính và các tài nguyên trên mạng được lưu dưới dạng tên và khi truy cập vào hệ thống DNS sẽ chuyển từ tên sang địa chỉ IP và ngược lại.
DNS server có thể nói là một dịch vụ xương sống của hệ thống mạng, nếu không có DNS thì có lẽ chiếm quá nửa số lượng trang web trên thế giới không thể vào được. Hiện nay có rất nhiều phần mềm cho phép chúng ta xây dựng một DNS server như trên windows có Microsoft DNS, hay trên Linux có BIND, PowerDNS, MyDNS… Nhưng có lẽ phần mềm được dùng để xây dựng DNS phổ biến nhất thế giới và cũng có thể nói là mạnh nhất hiện nay là BIND
Trước xu hướng đó, cùng với sự phân công của bộ môn Server+ và sự tận tình giúp đỡ của giáo viên hướng dẫn , chúng em đã tiến hành xây dựng xây dựng một DNS server bằng phần mềm BIND trên nền tảng hệ điều hành Linux Centos với mong mỏi nắm bắt được những vấn đề nền tảng, cốt lõi cũng như cách thức khai thác và hoạt động của hệ thống tên miền.
Do đây là lần đầu tiên thâm nhập vào một lĩnh vực mới nên sai sót là điều không tránh khỏi. Em rất mong được sự góp ý của quý thầy cô và của các bạn.Em xin chân thành cảm ơn hội đồng ban giám khảo và các bạn học viên!
Hà Nội, Ngày 26 tháng 8 năm 2010
Học viên thực hiện
Phạm Thị Diệu Linh
Trần Thị Huyền Trang
MỤC LỤC
Trang
DANH MỤC TỪ VIẾT TẮT
Từ Viết Tắt
Chú Thích
DNS
Domain Name System
UNIX
Unix-like Operating System
CPU
Central Processing Unit
AMD
Advance MicroDevices
GNU
GNU's Not Unix
IBM
International Business Machines
SCO
Portable Operating System Interface for Unix
ISP
Internet Service Provider
TCP/IP
Transmission Control Protocol/ Internet Protocol
BIND
Berkeley Internet Name Domain
IP
Internet Protocol
ICANN
The Internet Coroperation for Assigned Names and Numbers
FQDN
Fully Qualified Domain Name
A
Address
CNAME
Canonical Name
MX
Mail Exchanger
NS
Name Server
PTR
Pointer
URL
Universal Resource Locators
DANH MỤC CÁC HÌNH VẼ
Hình
Nội Dung
Trang
Hình 1
Mô hình tên miền
10
Hình 2
Mô hình phân cấp tên miền
13
Hình 3
Ví dụ hoạt động DNS server
13
Hình 4
Mô tả sự khác nhau giữa zone và domain
18
Hình 5
Forwarder DNS server
19
Hình 6
Mô hình Stubzone-Parent zone-Child zone
20
Hình 7
Mô hình Dynamic DNS
21
Hình 8
Mô hình các bước DHCP Server đăng ký và cập nhật resource record cho Client
22
Hình 9
Mô hình Active Directory-integrated zone sử dụng secure dynamic update
23
Hình 10
Phân giải tên thành IP
24
Hình 11
Mô hình truy vấn đệ quy
25
Hình 12
Mô hình truy vấn tương tác
26
Chương I: Giới Thiệu Về HĐH Linux
Linux là gì
Linux là một HDH dạng UNIX (Unix-like Operating System) chạy trên máy PC với bộ điều khiển trung tâm (CPU) Intel 80386 trở lên, hay các bộ vi xử lý trung tâm tương thích AMD, Cyrix. Linux ngày nay còn có thể chạy trên các máy Macintosh hoặc SUN Sparc . Linux thỏa mãn chuẩn POSIX.1.
Linux được viết lại toàn bộ từ con số không, tức là không sử dụng một dòng lệnh nào của Unix để tránh vấn đề bản quyền của Unix. Tuy nhiên hoạt động của Linux hoàn toàn dựa trên nguyên tắc của hệ điều hành Unix. Vì vậy nếu một người nắm được Linux, thì sẽ nắm được UNIX. Nên chú ý rằng giữa các Unix sự khác nhau cũng không kém gì giữa Unix và Linux.
Năm 1991 Linus Torvalds, sinh viên của đại học tổng hợp Helsinki, Phần lan, bắt đầu xem xét Minix, một phiên bản của Unix làm ra với mục đích nghiên cứu cách tạo ra một hệ điều hành Unix chạy trên máy PC với bộ vi xử lý Intel 80386.
Ngày 25/8/1991, Linus cho ra version 0.01 và thông báo trên comp.os.minix của Internet về dự định của mình về Linux.
1/1992, Linus cho ra version 0.12 với shell và C compiler. Linus không cần Minix nữa để recompile hệ điều hành của mình. Linus đặt tên hệ điều hành của mình là Linux.
1994, phiên bản chính thức 1.0 được phát hành.
Quá trình phát triển của Linux được tăng tốc bởi sự giúp đỡ của chương trình GNU (GNU’s Not Unix), đó là chương trình phát triển các Unix có khả năng chạy trên nhiều platform. Đến hôm nay, cuối 2001, phiên bản mới nhất của Linux kernel là 2.4.20, có khả năng điều khiển các máy đa bộ vi xử lý ( hiện tại Linux hỗ trợ máy tính có tối đa 16 CPUs) và rất nhiều các tính năng khác.
Phiên bản mới nhất có thể tìm thấy tại
Tại sao lại dùng Linux
Linux là miễn phí (free). Đối với chúng ta hôm nay không quan trọng vì ngay WindowsNT server cũng "free". Nhưng trong tương lai, khi chúng ta muốn hòa nhập vào thế giới, khi chúng ta muốn có một thu nhập chính đáng cho người lập trình, hiện tượng sao chép trộm phần mềm cần phải chấm dứt. Khi đó, "free" là một thông số rất quan trọng để chọn Linux.
Linux rất ổn định. Trái với suy nghĩ truyền thống "của rẻ là của ôi ", Linux từ những phiên bản đầu tiên cách đây 5-6 năm đã rất ổn định. Ngay cả server Linux phục vụ những mạng lớn (hàng trăm máy trạm) cũng hoạt động rất ổn định.
Linux đầy đủ. Tất cả những gì bạn thấy ở IBM, SCO, Sun … đều có ở Linux. C compiler, perl interpeter, shell , TCP/IP, proxy, firewall, tài liệu hướng dẫn ... đều rất đầy đủ và có chất lượng. Hệ thống các chương trình tiện ích cũng rất đầy đủ .
Linux là hệ điều hành hoàn toàn 32-bit. Như các Unix khác, ngay từ đầu, Linux đã là một hệ điều hành 32 bits. Hiện nay đã có những phiên bản Linux 64 bits chạy trên máy Alpha Digital hay Ultra Sparc.
Linux rất mềm dẻo trong cấu hình. Linux cho người sử dụng cấu hình rất linh động, ví dụ như độ phân dải màn hình Xwindow tùy ý, dễ dàng sửa đổi ngay cả kernel
Linux chạy trên nhiều máy khác nhau từ PC 386, 486 tự lắp cho đến SUN Sparc.
Linux được trợ giúp. Ngày nay, với các server Linux sử dụng dữ liệu quan trọng, người sử dụng hoàn toàn có thể tìm được sự trợ giúp cho Linux từ các công ty lớn. IBM đã chính thức chào bán IBM server chạy trên Linux. Tài liệu giới thiệu Linux ngày càng nhiều, không thua kém bất cứ một hệ điều hành nào khác.
Chương II: Tổng Quan về DNS Server
2.1 Định Nghĩa Tên MiềnMạng máy tính toàng cầu (Internet ) bao gồm hàng tỷ máy tinh nối mạng với nhau, mỗi máy tính cần có một địa chỉ xác định trên mạng.Hiện nay địa chỉ dùng trên mạng là địa chỉ IP. Mỗi máy tính được cấp phát một địa chỉ IP và địa chỉ này là duy nhất. Địa chỉ IP hiện đang đang được sử dụng phổ biến hiện nay là IPv4 có 32 bit chia thành 4 phần. Mỗi phần là 8 bít( tương đương là 1 byte) cách dếm từ trái qua phải.Các phần cách nhau bằng một dấu chấm (.) và biểu diễn ở dạng thập phân đầy đủ là 12 con số. Mỗi phần là 3 con số.Ví dụ một địa chỉ Internet : 146.123.110.224. Vì mạng máy tính toàn cầu hiện nay đang phát triển mạnh mẽ nên nhu cầu về địa chỉ IP ngày càng tăng. Địa chỉ IP sắp tới đựoc sử dụng là IPv6 có 128 bit. dài gấp 4 lần IPv4.Phiên bản Ipv4 có khả năng cung cấp 232 = 4 294 967 296 địa chỉ .Phiên bản IPv6 có khả năng cung cấp 2128 địa chỉ. Hiện nay nước ta đang triển khai thử nghiệm IPv6.
Ví dụ: Khi người dùng gõ vào địa chỉ: www.google.com trong trình duyệt, trình duyệt sẽ sử dụng dịch vụ DNS để phân giải địa chỉ này thành địa chỉ IP 64.233.189.104
Mọi liên lạc trên hệ thống Internet của chúng ta đều thông qua địa chỉ IP , do đó nếu không có dịch vụ DNS người dùng sẽ phải nhờ những địa chỉ IP khô khan chứ không sử dụng được các tên miền dễ nhớ hơn rất nhiều Tên Miền là một danh từ dịch theo kiểu nghĩa của từng từ một (Word by Word ) từ tiếng Anh (Domain name). Thực chất tên miền là sự nhận dạng vị trí của một máy tính trên mạng Internet nói cách khác tên miền là tên của mạng lưới, tên của các máy chủ trên mạng Internet .Mỗi địa chỉ bằng chữ này phải tương ứng với địa chỉ IP của nó
Hình 1.
2.2 Hệ thống tên miền là gì (Domain Name System)
1) Lịch sử phát triển hệ thống tên miền Hiện nay các máy tính nối mạng toàn cầu liên lạc với nhau , tìm đường trên mạng và nhân diện nhau bằng địa chỉ IP. Về phía người sử dụng để có thể sử dụng được các dịch vụ trên mạng họ phải nhớ được địa chỉ của các máy chủ cung cấp dịch vụ này. Do người sử dụng phải nhớ được địa chỉ IP với dạng chữ số dài như vậy khi nối mạng là rất khó khăn và vì thế có nhu cầu một địa chỉ thân thiện, mang tính gợi mở và dễ nhớ hơn cho người sử dụng đi kèm.Và từ yêu cầu đó đã hình thành hệ thống tên miền.( Ban đầu với mạng máy tính còn nhỏ của Bộ quốc phòng Mỹ thì chỉ cần một tệp HOSTS.txt chứa các thông tin về chuyển đổi địa chỉ và tên mạng. Nhưng khi mạng máy tính ngày càng phát triển thì với một tệp HOSTS.txt là không khả thi.)Do vậy đến năm 1984 Paul Mockpetris thuộc viện USC’s Information Sciences Institute phát triển một hệ thống quản lý tên miền mới lấy tên là Hệ thống tên miền – Domain Name System và ngày càng phát triển
2. Mục đích của hệ thống tên miền (DNS)Hệ thống tên miền bao gồm một loạt các cơ sở dữ liệu chứa địa chỉ IP và các tên miền tương ứng của nó.Mỗi tên miền tương ứng với một địa chỉ IP cụ thể. Hệ thống tên miền trên mạng Internet có nhiệm vụ chuyển đổi tên miền sang địa chỉ IP và ngược lại từ địa chỉ IP sang tên miền. Hệ thống DNS ra đời nhằm mục đích giúp người sử dụng sử dụng người sử dụng một tên dễ nhớ và mang tính gợi mở và đồng thời nó giúp cho hệ thống Internet dễ dàng sử dụng để liên lạc và ngày càng phát triển.Hệ thống DNS là hệ thống sử dụng cơ sở dữ liệu phân tán và phân cấp hình cây do đó việc quản lý sẽ dễ dàng hơn và cũng rất thuận tiên cho việc chuyển đổi từ tên miền sang địa chỉ IP và ngược lại.Tên miền là những tên gợi nhớ như home.vnn.vn hoặc www.cnn.com .Nó thân thiện hơn địa chỉ IP giúp cho người sử dụng dễ dàng nhớ vì nó ở dạng chữ mà người bình thường có thể hiểu và sử dụng hàng ngày.
2.3 Cấu trúc của hệ thống tên miền (DNS)
1. Cấu trúc cơ sở dữ liệu.Cơ sở dữ liệu của hệ thống DNS là hệ thống cơ sở dữ liệu phân tán và phân cấp hình cây. Với .Root server là đỉnh của cây và sau đó các miền (domain) được phân nhánh dần xuống dưới và phân quyền quản lý. Khi một máy khách (client) truy vấn một tên miền nó sẽ đi lần lượt từ root phân cấp xuống dưới để đến DNS quản lý domain cần truy vấn. Tổ chức quản lý hệ thống tên miền trên thế giới là The Internet Coroperation for Assigned Names and Numbers (ICANN) .Tổ chức này quản lý mức cao nhất của hệ thống tên miền (mức root) do đó nó có quyền cấp phát các tên miền ở mức cao nhất gọi là Top-Level-Domain.Cấu trúc của dữ liệu được phân cấp hình cây root quản lý toàn bộ sơ đồ và phân quyền quản lý xuống dưới và tiếp đó các tên miền lại được chuyển xuống cấp thấp hơn (delegale) xuống dưới.- ZoneHệ thống tên miền(DNS) cho phép phân chia tên miền để quản lý và nó chia hệ thống tên miền thành zone và trong zone quản lý tên miền được phân chia đó.Các Zone chứa thông tin vê miền cấp thấp hơn, có khả năng chia thành các zone cấp thấp hơn và phân quyền cho các DNS server khác quản lý.Ví dụ : Zone “.vn” thì do DNS server quản lý zone “.vn” chứa thông tin về các bản ghi có đuôi là “.vn” và có khả năng chuyển quyền quản lý (delegate) các zone cấp thấp hơn cho các DNS khác quản lý như “.fpt.vn” là vùng (zone) do fpt quản lý.Hệ thống cơ sở dữ liệu của DNS là hệ thống dữ liệu phân tán hình cây như cấu trúc đó là cấu trúc logic trên mạng Internet.-Về mặt vật lý
2) Cấu trúc của tên miềna)Cách đặt tên miền-Tên miền sẽ có dạng : Label.label.label….label-Độ dài tối đa của một tên miền là 255 ký tự-Mỗi một label tối đa là 63 ký tự bao gồm cả dấu “.”-Label phải được được bắt đầu bằng chữ số và chỉ được chứa chữ, số, dấu trừ (-)b)Phân loại tên miềnCác loại tên miền được phân chia thành các loại sau:• Com : Tên miền này được dùng cho các tổ chức thương mại• Edu : Tên miền này được dùng cho các cơ quan giáo dục, trường học• Net : Tên miền này được dùng cho các tổ chức mạng lớn• Gov : Tên miền này được dùng cho các tổ chức chính phủ• Org : Tên miền này được dùng cho các tổ chức khác• Int : Tên miền này dùng cho các tổ chức quốc tế• Info : Tên miền này dùng cho việc phục vụ thông tin• Arpa : Tên miền ngược• Mil : Tên miền dành cho các tổ chức quân sự, quốc phòng• Mã các nước trên thế giới tham gia vào mạng internet, các quốc gia này được qui định bằng hai chữ cái theo tiêu chuẩn ISO-3166 (Ví dụ : Việt Nam là .vn, Singapo la sg….)Tổ chức ICANN đã thông qua hai tên miền mới là :• Travel : Tên miền dành cho tổ chức du lịch• Post : Tên miền dành cho các tổ chức bưu chínhCác tên miền dưới mức root này đươc gọi là Top –Level – Domain c)Cấu trúc tên miềnTên miền được phân thành nhiều cấp như:Gốc (Domain root):Nó là đỉnh của nhánh cây của tên miền. Nó xác định kết thúc của domain.Nó thể diễn đơn giản chỉ là dấu chấm “.” Tên miền cấp một (Top-level-domain) :Là gồm vài kí tự xác định một nước ,khu vưc hoặc tổ chức.Nó đươc thể hiện là “.com” Tên miền cấp hai(Second-level-domain):Nó rất đa dạng rất đa dạng có thể là tên một công ty, một tổ chức hay một cá nhân.Tên miền cấp nhỏ hơn (Subdomain): Chia thêm ra của tên miền cấp hai trở xuống thường được sử dụng như chi nhánh, phòng ban của một cơ quan hay chủ đề nào đó.Như phone.fpt.vn là một phòng của công ty FptVí dụ: có tên miền www.thanglong.edu.vnTên miền sẽ được đọc từ trái qua phải, mục đầu tiên (www) là tên của máy tính.Tiếp theo là tên tên miền cấp 3 (thanglong) , tên miền được đăng kí với cơ quan quản lý tên miền ở dưới cấp vn là trung tâm thông tin mạng Internet Viet Nam(VNNIC)>Tên miền đứng thứ 2 từ bên phải là tên miền ở mức 2 (com) tên miền này miêu tả chức năng của tổ chức sở hữu tên miền ở mức 3.Trong ví dụ này tổ chức lấy tên miền ở mức hai la “edu” có nghĩa là tổ chức thuộc về giáo dục. Cuối cùng là tên miền “.vn”, tên miền này chỉ ra toàn bộ miền này thuộc quyền quản lý của mạng Internet Viet nam.-Một số chú ý khi đặt tên miền:Tên miền nên đặt giới hạn từ cấp 3 đến cấp 4 vì nhiều hơn nữa việc nhớ tên và quản trị khó khăn.Sử dụng tên miền là phải duy nhất trong mạng InternetNên đặt tên đơn giản gợi nhớ và tránhĐể hiểu rõ hơn về hoạt động của DNS chúng ta xét thí dụ và tham khảo hình vẽ dưới đây
Hình 2. Mô hình phân cấp tên miền
Ví dụ hoạt động của DNS:
Hình 3.
Giả sử máy tính PC A muốn truy cập đến trang web www.yahoo.com nhưng server vvn 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 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
3. Máy chủ quản lý tên miền (Domain name server-dns)Máy chủ quản lý tên miền (DNS) theo từng khu vực, theo từng cấp như : một tổ chức, một công ty hay một vùng lãnh thổ.Máy chủ đó chứa thông tin dữ liệu về địa chỉ và tên miền trong khu vực , trong cấp mà nó quản lý dùng để chuyển giữa tên miền và địa chỉ IP đồng thời nó cũng có khả năng hỏi các máy chủ quản lý tên miền khác hoặc cấp cao hơn nó để có thể trả lời được các truy vấn về những tên miền không thuộc quyền quản lý của nó và cũng luôn sẵn sàng trả lời các máy chủ khác về các tên miền mà nó quản lý.
Máy chủ cấp cao nhất là Root Server do tổ chức ICANN quản lý:+Là server quản lý toàn bộ cấu trúc của hệ thống tên miền+ Root Server không chứa dữ liệu thông tin về cấu trúc hệ thống DNS mà nó chỉ chuyển quyền (delegate) quản lý xuống cho các server cấp thấp hơn và do đó root server có khả năng định đường đến của một domain tại bất kì đâu trên mạng+ Hiện nay trên thế giới có khoảng 13 root server quản lý toàn bộ hệ thống Internet. Một DNS server có thể nằm bất cứ vị trí nào trên mạng Internet nhưng được cấu hình logic để phân cấp chuyển tên miền cấp thấp hơn xuống cho các DNS server khác nằm bất cứ vị trí nào trên mạng Internet. Nhưng tốt nhất là đặt DNS tại vị trí nào gần với các client để dễ dàng truy vấn đến đồng thời cũng gần với vị trí của DNS server cấp cao hơn trực tiếp quản lý nó.
4. Các bản ghi thường có trong cơ sở dữ liệu của DNS server
a. Bản ghi kiểu A ( Address)Bản ghi kiểu A được dùng để khai báo ánh xạ giữa tên của một máy tính trên mạng và địa chỉ IP tương ứng của nó. Nói cách khác, bản ghi kiểu A chỉ ra tên và điạ chỉ IP của một máy tính trên mạng.Bản ghi kiểu A có cú pháp như sau:domain IN A Ví dụ:home.vnn.vn IN A 203.162.0.12 Theo ví dụ trên, tên miền home.vnn.vn được khai với bản ghi kiểu A trỏ đến địa chỉ 203.162.0.12 sẽ là tên của máy tính này. Một tên miền có thể được khai nhiều bản ghi kiểu A khác nhau để trỏ đến các địa chỉ IP khác nhau. Như vậy có thể có nhiều máy tính có cùng tên trên mạng. Ngược lại một máy tính có một địa chỉ IP có thể có nhiều tên miền trỏ đến, tuy nhiên chỉ có duy nhất một tên miền được xác định là tên của máy, đó chính là tên miền được khai với bản ghi kiểu A trỏ đến địa chỉ của máy. b. Bản ghi CNAME (Canonical Name)Bản ghi CNAME cho phép một máy tính có thể có nhiều tên. Nói cách khác bản ghi CNAME cho phép nhiều tên miền cùng trỏ đến một địa chỉ IP cho trước. Để có thể khai báo bản ghi CNAME, bắt buộc phải có bản ghi kiểu A để khai báo tên của máy. Tên miền được khai báo trong bản ghi kiểu A trỏ đến địa chỉ IP của máy được gọi là tên miền chính (canonical domain). Các tên miền khác muốn trỏ đến máy tính này phải được khai báo là bí danh của tên máy (alias domain). Cú pháp của bản ghi CNAME alias-domain IN CNAME canonical domain Ví dụ : www.vnn.vn IN CNAME home.vnn.vn Tên miền www.vnn.vn sẽ là tên bí danh của tên miền home.vnn.vn , hai tên miền www.vnn.vn và home.vnn.vn sẽ cùng trỏ đến địa chỉ IP 203.162.0.12. c. Bản ghi MX (Mail Exchanger)Bản ghi MX dùng để khai báo trạm chuyển tiếp thư điện tử của một tên miền.Ví dụ, để các thư điện tử có cấu trúc user@vnn.vn được gửi đến trạm chuyển tiếp thư điện tử có tên mail.vnn.vn , trên cơ sở dữ liệu của DNS cần khai báo bản ghi MX như sau;vnn.vn IN MX 10 mail.vnn.vnCác thông số được khai báo trong bản ghi MX nêu trên gồm có: - vnn.vn : là tên miền được khai báo để sử dụng như địa chỉ thư điện tử. - mail.vnn.vn: là tên của trạm chuyển tiếp thư điện tử, nó thực tế là tên của máy tính dùng làm trạm chuyển tiếp thư điện tử. - 10 : Là giá trị ưu tiên, giá trị ưu tiên có thể là một số nguyên bất kỳ từ 1đến 255, nếu giá trị ưu tiên này càng nhỏ thì trạm chuyển tiếp thư điện tử được khai báo sau đó sẽ là trạm chuyển tiếp thư điện tử được chuyển đến đầu tiên. Ví dụ nếu khai báo vnn.vn IN MX 10 mail.vnn.vnvnn.vn IN MX 20 backupmail.vnn.vnThì tất cả các thư điện tử có cấu trúc địa chỉ user@vnn.vn trước hết sẽ được gửi đến trạm chuyển tiếp thư điện tử mail.vnn.vn. Chỉ trong trường hợp máy chủ mail.vnn.vn không thể nhận thư thì các thư này mới được chuyển đến trạm chuyển tiếp thư điện tử backupmail.vnn.vn. d. Bản ghi NS (Name Server)Bản ghi NS dùng để khai báo máy chủ tên miền cho một tên miền. Nó cho biết các thông tin về tên miền này được khai báo trên máy chủ nào. Với mỗi một tên miền phải có tổi thiểu hai máy chủ tên miền quản lý, dó đó yêu cầu có tối thiểu hai bản ghi NS cho mỗi tên miền.Cú pháp của bản ghi NS IN NS Ví dụ vnnic.net.vn. IN NS dns.vnnic.net.vn. Với khai báo trên, tên miền vnnic.net.vn sẽ do máy chủ tên miền có tên dns.vnnic.net.vn quản lý. Điều này có nghĩa, các bản ghi như A, CNAME, MX ... của tên miền vnnic.net.vn và các tên miền cấp dưới của nó sẽ được khai báo trên máy chủ dns.vnnic.net.vn. e. Bản ghi PTR (Pointer)Hệ thống DNS không những thực hiện việc chuyển đổi từ tên miền sang địa chỉ IP mà còn thực hiện chuyển đổi địa chỉ IP sang tên miền. Bản ghi PTR cho phép thực hiện chuyển đổi địa chỉ IP sang tên miền. Ví dụ về khai báo bản ghi PTR12.0.162.203.in-addr.arpa IN PTR hơme.vnn.vnBản ghi PTR trên cho phép tìm tên miền hom.vnn.vn khi biết địa chỉ IP mà tên miền trỏ tới.
5.Cấu Trúc Gói Tin DNS
ID QR Opcode AA TC RD RA Z RcodeQDcount ANcount NScount ARcountID: Là một trường 16 bits, chứa mã nhận dạng, nó được tạo ra bởi một chương trình để thay cho truy vấn. Gói tin hồi đáp sẽ dựa vào mã nhận dạng này để hồi đáp lại. Chính vì vậy mà truy vấn và hồi đáp có thể phù hợp với nhau.QR: Là một trường 1 bit. Bít này sẽ được thiết lập là 0 nếu là gói tin truy vấn, được thiết lập là một nếu là gói tin hồi đáp.
Opcode: Là một trường 4 bits, được thiết lập là 0 cho cờ hiệu truy vấn, được thiết lập là 1 cho truy vấn ngược, và được thiết lập là 2 cho tình trạng truy vấn.AA: Là trường 1 bit, nếu gói tin hồi đáp được thiết lập là 1, sau đó nó sẽ đi đến một server có thẫm quyền giải quyết truy vấn.TC: Là trường 1 bit, trường này sẽ cho biết là gói tin có bị cắt khúc ra do kích thước gói tin vượt quá băng thông cho phép hay không.
RD: Là trường 1 bit, trường này sẽ cho biết là truy vấn muốn server tiếp tục truy vấn một cách đệ qui.RA: Trường 1 bit này sẽ cho biết truy vấn đệ qui có được thực thi trên server không .
2.4 Các Thành Phần Của DNS
Domain name và zone.Một miền gồm nhiều thực thể nhỏ hơn gọi là miền con (subdomain). Ví dụ, miền ca bao gồm nhiều miền con như ab.ca, on.ca, qc.ca,...Bạn có thể ủy quyền một số miền con cho những DNS Server khác quản lý. Những miền và miền con mà DNS Server được quyền quản lý gọi là zone.Như vậy, một Zone có thể gồm một miền, một hay nhiều miền con. Hình sau mô tả sự khác nhau giữa zone và domain.
Hình 4.
- Primary zone : Cho phép đọc và ghi cơ sở dữ liệu.- Secondary zone : Cho phép đọc bản sao cơ sở dữ liệu.- Stub zone : chứa bản sao cơ sở dữ liệu của zone nào đó, nó chỉ chứa chỉ một vài RR.Fully Qualified Domain Name (FQDN).Mỗi nút trên cây có một tên gọi(không chứa dấu chấm) dài tối đa 63 ký tự. Tên rỗng dành riêng cho gốc (root) cao nhất và biểu diễn bởi dấu chấm. Một tên miền đầy đủ của một nút chính là chuỗi tuần tự các tên gọi của nút hiện tại đi ngược lên nút gốc, mỗi tên gọi cách nhau bởi dấu chấm. Tên miền có xuất hiện dấu chấm sau cùng được gọi là tên tuyệt đối (absolute) khác với tên tương đối là tên khôngkết thúc bằng dấu chấm. Tên tuyệt đối cũng được xem là tên miền đầy đủ đã được chứng nhận (Fully Qualified Domain Name – FQDN).Sự ủy quyền(Delegation).Một trong các mục tiêu khi thiết kế hệ thống DNS là khả năng quản lý phân tán thông qua cơ chế uỷ quyền (delegation). Trong một miền có thể tổ chức thành nhiều miền con, mỗi miền con có thể được uỷ quyền cho một tổ chức khác và tổ chức đó chịu trách nhiệm duy trì thông tin trong miền con này. Khi đó, miền cha chỉ cần một con trỏ trỏ đến miền con này để tham chiếu khi có các truy vấn.Không phải một miền luôn luôn tổ chức miền con và uỷ quyền toàn bộ cho các miền con này, có thể chỉ có vài miền con được ủy quyền. Ví dụ miền hcmuns.edu.vn của Trường ĐHKHTN chia một số miền con như csc.hcmuns.edu.vn (Trung Tâm Tin Học), fit.hcmuns.edu.vn (Khoa CNTT) hay math.hcmuns.edu.vn (Khoa Toán), nhưng các máy chủ phục vụ cho toàn trường thì vẫn thuộc vào miền hcmuns.edu.vn.Forwarders.Là kỹ thuật cho phép Name Server nội bộ chuyển yêu cầu truy vấn cho các Name Server khác để phân giải các miền bên ngoài.Ví dụ: Trong Hình , ta thấy khi Internal DNS Servers nhận yêu cầu truy vấn của máy trạm nó kiểm tra xem có thể phân giải được yêu cầu này hay không, nếu không thì nó sẽ chuyển yêu cầu này lên Forwarder DNS server (multihomed) để nhờ name server này phân giải dùm, sau khi xem xét xong thì Forwarder DNS server (multihomed) sẽ trả lời yêu cầu này cho Internal DNS Servers hoặc nó sẽtiếp tục forward lên các name server ngoài Internet.
Hình 5.
Stub zone.Là zone chứa bảng sao cơ sở dữ liệu DNS từ master name server, Stub zone chỉ chứa các resource record cần thiết như : A, SOA, NS, một hoặc vài địa chỉ của master name server hỗ trợ cơ chế cập nhật Stub zone, chế chứng thực name server trong zone và cung cấp cơ chế phân giải tên miền được hiệu quả hơn, đơn giản hóa công tác quản trị
Hình 6.
Dynamic DNS.Dynamic DNS là phương thức ánh xạ tên miền tới địa chỉ IP có tần xuất thay đổi cao. Dịch vụ DNS động (Dynamic DNS) cung cấp một chương trình đặc biệt chạy trên máy tính của người sử dụng dịch vụ dynamic DNS gọi là Dynamic Dns Client. Chương trình này giám sát sự thay đổi địa chỉ IP tại host và liên hệ với hệ thống DNS mỗi khi địa chỉ IP của host thay đổi và sau đó update thông tin vào cơ sở dữ liệu DNS về sự thay đổi địa chỉ đó.DNS Client đăng ký và cập nhật resource record của nó bằng cách gởi dynamic update.
Hình 7.
Các bước DHCP Server đăng ký và cập nhật resource record cho Client.
Hình 8.
Active Directory-integrated zone.Sử dụng Active Directory-integrated zone có một số thuận lợi sau:- DNS zone lưu trữ trong trong Active Directory, nhờ cơ chế này mà dữ liệu được bảo mật hơn.- Sử dụng cơ chế nhân bản của Active Directory để cập nhận và sao chép cơ sở dữ liệu DNS.- Sử dụng secure dynamic update.- Sử dụng nhiều master name server để quản lý tên miền thay vì sử dụng một master name server.Mô hình Active Directory-integrated zone sử dụng secure dynamic update.
Hình 9.
2.5 Cơ Chế Phân Giải Tên
Phân giải tên thành IP:Root name server : Là máy chủ quản lý các name server ở mức top-level domain. Khi có truy vấn về một tên miền nào đó thì Root Name Server phải cung cấp tên và địa chỉ IP của name server quản lý top-level domain (Thực tế là hầu hết các root server cũng chính là máy chủ quản lý top-level domain) và đến lượt các name server của top-level domain cung cấp danh sách các name server có quyền trên các second-level domain mà tên miền này thuộc vào. Cứ như thế đến khi nào tìm đượcmáy quản lý tên miền cần truy vấn. Qua trên cho thấy vai trò rất quan trọng của root name server trong quá trình phân giải tên miền. Nếu mọi root name server trên mạng Internet không liên lạc được thì mọi yêu cầu phân giải đều không thực hiện được.Hình vẽ dưới mô tả quá trình phân giải grigiri.gbrmpa.gov.au trên mạng Internet
Hình 10.
Client sẽ gửi yêu cầu cần phân giải địa chỉ IP của máy tính có tên girigiri.gbrmpa.gov.au đến name server cục bộ. Khi nhận yêu cầu từ Resolver, Name Server cục bộ sẽ phân tích tên này và xét xem tên miền này có do mình quản lý hay không. Nếu như tên miền do Server cục bộ quản lý, nó sẽ trả lời địa chỉ IP của tên máy đó ngay cho Resolver. Ngược lại, server cục bộ sẽ truy vấn đến một RootName Server gần nhất mà nó biết được. Root Name Server sẽ trả lời địa chỉ IP của Name Server quản lý miền au. Máy chủ name server cục bộ lại hỏi tiếp name server quản lý miền au và được tham chiếu đến máy chủ quản lý miền gov.au. Máy chủ quản lý gov.au chỉ dẫn máy name server cục bộ tham chiếu đến máy chủ quản lý miền gbrmpa.gov.au. Cuối cùng máy name server cục bộ truy vấn máy chủ quản lý miền gbrmpa.gov.au và nhận được câu trả lời.Các loại truy vấn : Truy vấn có thể ở 2 dạng :- Truy vấn đệ quy (recursive query) : khi name server nhận được truy vấn dạng này, nó bắt buộc phải trả về kết quả tìm được hoặc thông báo lỗi nếu như truy vấn này không phân giải được.Name server không thể tham chiếu truy vấn đến một name server khác. Name server có thể gửi truy vấn dạng đệ quy hoặc tương tác đến name server khác nhưng phải thực hiện cho đến khi nào có kết quả mới thôi.
Hình 11.
- Truy vấn tương tác (Iteractive query): khi name server nhận được truy vấn dạng này, nó trả lời cho Resolver với thông tin tốt nhất mà nó có được vào thời điểm lúc đó. Bản thân name server không thực hiện bất cứ một truy vấn nào thêm. Thông tin tốt nhất trả về có thể lấy từ dữ liệu cục bộ (kể cả cache). Trong trường hợp name server không tìm thấy trong dữ liệu cục bộ nó sẽ trả về tên miền và địa chỉ IP của name server gần nhất mà nó biết.
Hình12.
2.6 Chức Năng Của DNS server
Mỗi Website có một tên (là tên miền hay đường dẫn URL:Universal Resource Locator) và một địa chỉ IP. Địa chỉ IP gồm 4 nhóm số cách nhau bằng dấu chấm. Khi mở một trình duyệt Web và nhập tên website, trình duyệt sẽ đến thẳng website mà không cần phải thông qua việc nhập địa chỉ IP của trang web. Quá trình "dịch" tên miền thành địa chỉ IP để cho trình duyệt hiểu và truy cập được vào website là công việc của một DNS server. Các DNS trợ giúp qua lại với nhau để dịch địa chỉ "IP" thành "tên" và ngược lại. Người sử dụng chỉ cần nhớ "tên", không cần phải nhớ địa chỉ IP (địa chỉ IP là những con số rất khó nhớ )
Trên phạm vi toàn cầu, các máy tính kết nối với mạng Internet cần có những địa chỉ IP riêng và tạo ra những địa chỉ liên kết dạng URL (Universal Resource Locators) duy nhất của mình. Vì thế, mỗi website cũng có một tên miền thể hiện bằng URL và một địa chỉ IP khác nhau. Nhờ DNS, người sử dụng chỉ cần đưa URL hay còn gọi là đường kết nối (link) cho trình duyệt (web browser) biết để tìm đến địa chỉ cần thiết. Quá trình "dịch" tên miền thành địa chỉ IP để cho trình duyệt hiểu và truy cập được vào website là công việc của một máy chủ tên miền (DNS server). Các máy chủ tên miền trợ giúp qua lại với nhau trên Internet để dịch một địa chỉ IP bất kỳ thành tên logic của nó và ngược lại.
2.7 Nguyên Tắc Làm Việc Của DNS server
Mỗi nhà cung cấp dịch vụ vận hành và duy trì DNS server riêng của mình, gồm các máy bên trong phần riêng của mỗi nhà cung cấp dịch vụ đó trong Internet. Tức là, nếu một trình duyệt tìm kiếm địa chỉ của một website thì DNS server phân giải tên website này phải là DNS server của chính tổ chức quản lý website đó chứ không phải là của một tổ chức (nhà cung cấp dịch vụ) nào khác.
Các máy chủ tên miền có khả năng ghi nhớ những tên vừa phân giải để dùng cho những yêu cầu phân giải lần sau. Số lượng những tên phân giải được lưu lại tùy thuộc vào quy mô của từng DNS.
DNS có khả năng tra vấn các DNS server khác để có được một cái tên đã được phân giải. DNS server của mỗi tên miền thường có hai việc khác biệt. Thứ nhất, chịu trách nhiệm phân giải tên từ các máy bên trong miền về các địa chỉ Internet, cả bên trong lẫn bên ngoài miền nó quản lý. Thứ hai, chúng trả lời các DNS server bên ngoài đang cố gắng phân giải những cái tên bên trong miền nó quản lý.
DNS server có khả năng ghi nhớ lại những tên vừa phân giải. Để dùng cho những yêu cầu phân giải lần sau. Số lượng những tên phân giải được lưu lại tùy thuộc vào quy mô của từng DNS.
2.8 Cách Sử Dụng DNS server
Do các DNS có tốc độ đáp ứng yêu cầu khác nhau, nên người sử dụng có thể chọn máy chủ tên miền để sử dụng cho riêng mình. Có 2 cách chọn lựa cho người sử dụng:
-Nếu sử dụng máy chủ tên miền mặc định của ISP thì người sử dụng không cần điền địa chỉ DNS server vào mục network connections trong máy của mình.
-Nếu sử dụng máy chủ tên miền khác (dù miễn phí hay không) thì phải điền địa chỉ DNS server vào mục network connections.
CHƯƠNG III: CẤU HÌNH VÀ CÀI ĐẶT DNS SERVER TRÊN Centos5
Cài đặt một DNS server với BIND.
Phần mềm dùng để xây dựng DNS server trên Centos là BIND (Berkeley Internet Name Domain). Chúng ta sẽ thao tác trên các file của BIND để cấu hình DNS server. Các bước thực hiện như sau:
Hầu hết, các hệ điều hành của linux như: redhat, centos… đều có kèm theo gói bind.*.rpm
-Cài đặt DNS server với Bind
# yum install bind-chroot
-Một số file cấu hình quan trọng :
/etc/named.conf
/var/named/
/etc/mde.key, /etc/mdc.conf là các file hỗ trợ về vấn đề chứng thực trong named.
-Cấu hình tập tin /etc/ named.conf như sau:
# vi /var/named/chroot/etc/named.conf
- Taọ file cơ sở dữ liệu:
#cd /var/ named/chroot/var/ named
# dir
-Tạo file phân giải thuận từ name ra IP như sau:
-Tạo file phân giải ngược từ IP ra name như sau:
-Khởi động lại card mạng và DNS server như sau:
#/etc/init.d/named restart
-Cấu hình DNS Client:Mục đích là nhằm sử dụng công cụ nslookup để kiểm tra những nameserver vừa cấu hình. Những thông số cấu hình DNS Client được lưu trong tập tin /etc/resolv.conf. Để kiểm tra hoạt động của DNS, ta có thể dùng lệnh host hoặc nslookup.
TỔNG KẾT:
Sau khi tìm hiểu về DNS server trên linux em thấy DNS ko chỉ đem lại thông tin cho mọi người mà nó còn mang lại giá trị kinh tế khổng lồ cho những tên miền đặc biệt , Như chúng ta đã biết máy chủ tên miền (name server) là máy chủ chứa cơ sở dữ liệu dùng cho việc chuyển đổi giữa tên miền và địa chỉ IP. Như cách phân cấp của hệ thống tên miền, tương ứng với mỗi cấp và mỗi loại tên miền có máy chủ tên miền phục vụ tên miền ở cấp đó và loại tên miền đó. Máy chủ tên miền ở mức root sẽ chứa cơ sở dữ liệu quản lý tên miền ở mức top-level-domain. Ở mỗi quốc gia sẽ có máy chủ tên miền quản lý domain.
Tài Liệu Tham Khảo:
1.
2.
3.
4.
Các file đính kèm theo tài liệu này:
- 26975.doc