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.
Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 1 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 2 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 Bộ Giáo Dục Và Đào Tạo 1 HỆ THỐNG ĐÀO TẠO CHUYÊN GIA MẠNG QUỐC TẾ BÁCH KHOA NPOWER .1 Độc Lập- Tự Do- Hạnh Phúc .1 ----------- oOo ---------- .1 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 3 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 4 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 5 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 Chương I: Giới Thiệu Về HĐH Linux 1.1 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. Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 6 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 Phiên bản mới nhất có thể tìm thấy tại http://www.kernel.org 1.2 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. Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 7 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 Chương II: Tổng Quan về DNS Server 2.1 Định Nghĩa Tên Miền Mạ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ó Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 8 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 9 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 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. - Zone Hệ 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ền a)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ền Cá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 Website: http://www.docs.vn Email : lienhe@docs.vn Tel : 0918.775.368 10 [...]... đ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... 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... 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... 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... 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... 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... 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 Root Name Server gần nhất mà nó biết được Root Name Server sẽ trả lời địa chỉ IP của Name Server quản lý miền au Máy chủ name server cục bộ lại hỏi tiếp name server. .. 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. .. 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ử... 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