Tải bản đầy đủ (.docx) (68 trang)

Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.67 MB, 68 trang )

MỤC LỤC
1
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
DANH SÁCH HÌNH VẼ
2
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
DANH SÁCH BẢNG BIỂU
3
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
DANH SÁCH TỪ VIẾT TẮT
Từ viết tắt Từ đầy đủ Giải thích
CentOS Community Enterprise
Operating System
Hệ điều hành trên Linux
DHCP Dynamic Host Configuration
Protocol
giao thức cấu hình tự động
địa chỉ IP
DNS Domain Name System Hệ thống tên miền
HĐH Hệ điều hành Hệ điều hành
NQT Người quản trị Người quản trị
4
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Lý do chọn đề tài
Nhắc đến hệ điều hành, OS X và Windows là hai cái tên được nhiều người
dùng nhớ tới nhiều nhất hiện nay. Tuy nhiên, vẫn còn một nền tảng khác vẫn đang
thầm lặng phục vụ cho cuộc sống con người đó là Linux. Trong số những hệ điều
hành thông dụng nhất. Linux là hệ điều hành miễn phí được nhiều người sử dụng
nhất hiện nay.
Khi tiếp cận các hệ thống Unix và Linux, người ta thường nghĩ đến những


thao tác thiết lập phức tạp với hàng chục, hàng trăm câu lệnh gõ vào từ bàn phím.
Màn hình quen thuộc chính là con trỏ đợi lệnh và cửa sổ dòng lệnh đen ngòm khiến
người dùng khó khăn trong việc sử dụng đặc biệt đối với nhà quản trị thì việc quản
trị hệ thống Linux sẽ gặp một số vấn đề như mất thời gian hơn. Nhưng tất cả dường
như đã thay đổi khi người dùng sử dụng giao diện web.
Bằng cách sử dụng những trình duyệt, người quản trị hoàn toàn có thể quản
trị hệ thống Linux dễ dàng các server Linux như Web, DNS, DHCP
1.2 Mục tiêu của đề tài
- Tìm hiểu, cài đặt và cấu hình DNS trên CentOS.
- Tìm hiểu, cài đặt và cấu hình DHCP trên CentOS.
- Tìm hiểu, cài đặt, cấu hình WEB server trên CentOS và cấu hình website.
- Tìm hiểu ngôn ngữ php để thiết kế Website.
- Triển khai tích hợp cài đặt và cấu hình DNS, DHCP, WEB server đồng
thời thích hợp chức năng thêm, xóa account trên CentOS.
- Thao tác như người quản trị trong CentOS trên Website.
1.3 Giới hạn và phạm vi của đề tài
- Tìm hiểu một số dịch vụ mạng trên CentOS như DHCP, DNS, WEB
server.
- Các phần mềm Macromedia Dreamweaver 8, Wamp Server, VMware
Player.
5
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
- Thiết kế Website, tích hợp DHCP, DNS, WEB server vào Website để
thao tác.
1.4 Nội dung thực hiện
Nội dung thực hiện/nghiên cứu cụ thể như sau:
- Nghiên cứu DNS, DHCP, WEB server trên CentOS.
- Nghiên cứu về việc tích hợp DNS, DHCP, WEB server, thêm và xóa
account vào Website.
- Xây dựng được Website thao tác được với DNS, DHCP, WEB server, ,

thêm và xóa account.
- Thiết kế đặc tả hệ thống.
- Xây dựng báo cáo hoàn chỉnh về quy trình thiết kế, xây dựng và tích hợp
vào Website.
1.5 Phương pháp tiếp cận
- Cách tiếp cận: Nghiên cứu các ứng dụng hỗ trợ cấu hình mạng như
Webmin…
- Sử dụng các phương pháp nghiên cứu:
o Phương pháp đọc tài liệu.
o Phương pháp phân tích mẫu.
o Phương pháp thực nghiệm.
6
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Tổng quan về HĐH CentOS
2.1.1 Giới thiệu HĐH CentOS
Centos (Community Enterprise Operating System) là 1 hệ điều hành mã
nguồn mở dựa trên Red Hat Enterprise Linux nhưng khác với Red Hat nó là hoàn
toàn free và có thể tương thích hoàn toàn với các phần mềm chạy trên trên Red Hat
(kể từ phiên bản centos 5.0 trở đi). CentOS 4 dựa trên nền tảng Red Hat Enterprise
Linux 4, hỗ trợ dòng x86 (i586 và i686), dòng x86_64 (AMD64 và Intel EMT64),
các cấu trúc IA64, Alpha, S390 và S390x.
Phiên bản mới nhất của Centos là phiên bản Centos 6.4. Khác với các phiên
bản chủ yếu dành cho desktop như ubuntu hay fedora Centos chủ yếu xây dựng để
phát triển cho dòng máy chủ vì vậy nên việc phục vụ các nhu cầu về giải trí và
multimedia có thể sẽ khó khăn hơn nhưng các nhu cầu về học tập và làm việc với
mạng sẽ mạnh hơn.
Một số chú ý về Centos nên sử dụng phiên bản 5.0 trở lên vì sách sẽ dễ dàng
cấu hình các chương trình chạy trên redhat, về mặt lệnh thì Fedora, Centos và
Redhat là giống nhau.

Nên bắt đầu học từ giao diện dòng lệnh chú ý lệnh man dùng trước 1 lệnh
chúng ta chưa rõ các options của nó, lệnh này cho ta xem toàn bộ các options mà
lệnh đó có. Tuy nhiên, thường thì 1 lệnh có rất nhiều các options vì vậy ta nên dùng
lệnh sau để dễ xem hệ thống sẽ hiển thị các options theo trang man (lệnh muốn xem
options) | less.
2.1.2 Tại sao cần sử dụng HĐH CentOS
Càng ngày càng có thêm công ty mới đầu tư cho Linux và đưa ra các giải
pháp ít nhiều có tính thương mại với giá rất rẻ.
7
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Vì tính kinh tế, Linux và các chương trình kèm theo thường được chạy trên
mạng nội bộ của nhiều doanh nghiệp, chẳng hạn làm các dịch vụ Web, tên miền
(DNS), định tuyến (routing) và bức tường lửa. Nhiều nhà cung cấp dịch vụ Internet
(ISP) cũng dùng Linux làm hệ điều hành chính.
CentOS là một phiên bản Linux miễn phí được xây dựng dựa trên source code
của redhat.
Trong các phiên bản server thì Centos là lựa chọn tốt nhất chính vì sự bảo mật
nên được nhiều doanh nghiệp sử dụng.
2.2 Giới thiệu về một số dịch vụ mạng
2.2.1 Dịch vụ DNS
a) Giới thiệu DNS
- 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. DNS đưa ra một phương pháp
đặc biệt để duy trì và liên kết các ánh xạ này trong một thể thống nhất.
- Trong phạm vi lớn hơn, các máy tính kết nối với internet sử dụng DNS để
tạo địa chỉ liên kết dạng URL (Universal Resource Locators). Theo
phương pháp này, mỗi máy tính sẽ không cần sử dụng địa chỉ IP cho kết
nối mà chỉ cần sử dụng tên miền (domain name) để truy vấn đến kết nối
đó. Với mô hình phân cấp như hình dưới đây:
Hình 2-1: Mô hình phân cấp DNS

8
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
- Ví dụ hoạt động của DNS.
Hình 2-2: Ví dụ hoạt động của DNS
o 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:
o Đầ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.
o Server quản lý tên miền vnn gửi một truy vấn đến server top level
domain.
o 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).
o 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.
o 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.
9
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
o 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.
o 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.
b) Cấu trúc hệ thống tên miền
Hệ thống tên miền được phân cấp như sau:
- Root( Gốc): Nó là đỉnh của nhánh cây của tên miền. Biểu diễn đơn giản
chỉ là dấu chấm “.
- Tên miền cấp một (Top-level-domain).
- Gồm vài kí tự xác định một quốc gia, khu vưc hoặc tổ chức. Nó đươc thể
hiện là “.com”, “.edu”….
- Tên miền cấp hai (Second-level-domain).
- 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 đó.
c) Phân loại tên miền
- 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.
- Mil: Tên miền dành cho các tổ chức quân sự, quốc phòng.
d) Cơ chế phân giải tên miền
- Phân giải tên thành IP
o Root name server: Là máy chủ quản lý các nameserver ở mức top
-level domain. Khi có truy vấn về một tên miền nào đó thì Root
10
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
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ý toplevel 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 được má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ạnInternet 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 2-3: Cơ chế phân giải địa chỉ IP.
o 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, Nameserver 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
11
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
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 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:
o Truy vấn đệ quy( recursie query): Khi nameserver 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. Nameserver

không thể tham chiếu truy vấn đến một name server khác.
Nameserver có thể gửi truy vấn dạng đệ quy hoặc tương tác đến
nameserver khác nhưng nó phải thực hiện cho đến khi nào có kết
quả mới thôi.
o Truy vấn tương tác: khi nameserver 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 thi
điểm lúc đó. Bản thân nameserver 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 nameserver 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
nameserver gần nhất mà nó biết.
- Phân giải IP thành tên
o Ánh xạ địa chỉ IP thành tên máy tính được dùng để diễn dịch các
tập tin log cho dễ đọc hơn. Nó còn dùng trong một số trường hợp
chứng thực trên hệ thống UNIX (kiểm tra các tập tin.rhost hay
host.equiv). Trong không gian tên miền đã nói ở trên dữ liệu bao
gồm cả địa chỉ IP được lập chỉ mục theo tên miền. Do đó với một
12
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
tên miền đã cho việc tìm ra địa chỉ IP khá dễ dàng. Để có thể phân
giải tên máy tính của một địa chỉ IP, trong không gian tên miền
người ta bổ sung thêm một nhánh tên miền mà được lập chỉ mục
theo địa chỉ IP. Phần không gian này có tên miền là in -addr.arpa.
Mỗi nút trong miền in- addr.arpa có một tên nhãn là chỉ số thập
phân của địa chỉ IP. Ví dụ: miền inaddr.arpa có thể có 256
subdomain, tương ứng với 256 giá trị từ 0 đến 255 của byte đầu
tiên trong địa chỉ IP. Trong mỗi subdomain lại có 256 subdomain
con nữa ứng với byte thứ hai. Cứ như thế và đến byte thứ tư có các
bản ghi cho biết tên miền đầy đủ của các máy tính hoặc các mạng
có địa chỉ IP tương ứng.

Hình 2-4: Phân giải IP thành tên máy tính.
o Khi đọc tên miền địa chỉ IP sẽ xuất hiện theo thứ tự ngược. Ví dụ
nếu địa chỉ IP của máy winnie.corp.hp.com là 15.16.192.152, khi
ánh xạ vào miền in -addr.arpa sẽ là 152.192.16.15.inaddr.arpa.
e) Phân loại domain name server
- Primary Name Server
13
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Mỗi miền phải có một Primary Name Server. Server này được đăng ký trên
Internet để quản lý miền. Mọi người trên Internet đều biết tên máy tính và địa chỉ IP
của server này. Người quản trị DNS sẽ tổ chức những tập tin CSDL trên Primary
Name Server. Server này có nhiệm vụ phân giải tất cả các máy trong miền hay
Zone.
- Secondary Name Server
Mỗi miền có một Primary Name Server để quản lý CSDL của miền. Nếu như
server này tạm dừng họat động vì một lý do nào đó thì việc phân giải tên máy tính
thành địa chỉ IP và ngược lại xem như bị gián đoạn. Việc gián đoạn này làm ảnh hư
hỏng rất lớn đến những tổ chức có nhu cầu trao đổi thông tin ra ngoài Internet cao.
Nhằm khắc phục nhược điểm này, những nhà thiết kế đã đưa ra một Server dự
phòng gọi là Secondary (hay Slave) Name Server. Server này có nhiệm vụ sao lưu
tất cả những dữ liệu trên Primary Name Server và khi Primary Name Server bị gián
đoạn thì nó sẽ đảm nhận việc phân giải tên máy tính thành địa chỉ IP và ngược lại.
Trong một miền có thể có một hay nhiều Secondary Name Server. Theo một chu
kỳ, Secondary sẽ sao chép và cập nhật CSDL từ Primary Name Server. Tên và địa
chỉ IP của Secondary Name Server cũng được mọi người trên Internet biết đến.
- Caching Name Server
Caching Name Server không có bất kỳ tập tin CSDL nào. Nó có chức năng
phân giải tên máy trên những mạng ở xa thông qua những Name Server khác. Nó
lưu giữ lại những tên máy đã được phân giải trước đó đã được phân giải trước đó và
được sử dụng trong những trường hợp sau:

o Làm tăng tốc độ phân giải bằng cách sử dụng cache.
o Giảm bớt gánh nặng phân giải tên máy cho các name server.
o Giảm việc lưu thông trên những mạng tin.
14
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
2.2.2 Dịch vụ DHCP
a) Giới thiệu DHCP
- DHCP là viết tắt của Dynamic Host Configuration Protocol, là giao thức
Cấu hình Host Động được thiết kế làm giảm thời gian chỉnh cấu hình cho
mạng TCP/IP bằng cách tự động gán các địa chỉ IP cho khách hàng khi
họ vào mạng. Dich vụ DHCP là một thuận lới rất lớn đối với người điều
hành mạng. Nó làm yên tâm về các vấn đề cố hữu phát sinh khi phải khai
báo cấu hình thủ công. Nói một cách tổng quan hơn DHCP là dich vụ
mang đến cho chúng ta nhiều lợi điểm trong công tác quản trị và duy trì
một mạng TCP/IP như:
o Tập trung quản trị thông tin về cấu hình IP.
o Cấu hình động các máy.
o Cấu hình IP cho các máy một cách liền mạch
o Sự linh hoạt
o Khả năng mở rộng.
- DHCP: Là sự quản lý tự động địa chỉ IP bởi việc tự động hóa việc cấp
phát thông tin cấu hình IP cho clients.
Mô hình DHCP cơ bản:
15
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Hình 2-5:Mô hình DHCP cơ bản
b) Chức năng
Mỗi thiết bị trên mạng cơ sở TCP/IP phải có một địa chỉ IP duy nhất để truy
cập mạng và các tài nguyên của nó. Không có DHCP, cấu hình IP phải được thực
hiện một cách thủ công cho các máy tính mới, các máy tính di chuyển từ mạng con

này sang mạng con khác, và các máy tính được loại bỏ khỏi mạng.
Bằng việc phát triển DHCP trên mạng, toàn bộ tiến trình này được quản lý tự
động và tập trung. DHCP server bảo quản vùng của các địa chỉ IP và giải phóng
một địa chỉ với bất cứ DHCP client có thể khi nó có thể ghi lên mạng. Bởi vì các địa
chỉ IP là động hơn tĩnh, các địa chỉ không còn được trả lại một cách tự động trong
sử dụng đối với các vùng cấp phát lại.
Các thuật ngữ trong DHCP:
- DHCP Server: máy quản lý việc cấu hình và cấp phát địa chỉ IP cho
Client.
- DHCP Client: máy trạm nhận thông tin cấu hình IP từ DHCP Server.
- Scope: phạm vi liên tiếp của các địa chỉ IP có thể cho một mạng.
- Exclusion Scope: là dải địa chỉ nằm trong Scope không được cấp phát
động cho Clients.
- Reservation: Địa chỉ đặt trước dành riêng cho máy tính hoặc thiết bị chạy
các dịch vụ (tùy chọn này thường được thiết lập để cấp phát địa chỉ cho
các Server, Printer, )
16
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
- Scope Options: các thông số được cấu hình thêm khi cấp phát IP động
cho Clients như DNS Server (006), Router (003)

Hình
2-6: Qúa
trình
DHCP
server
cấp phát IP
cho Client
c)
Vai trò của DHCP trong một hệ thống mạng

DHCP tự động quản lý các địa chỉ IP và loại bỏ được các lỗi có thể làm mất
liên lạc. Nó tự động gán lại các địa chỉ chưa được sử dụng và cho thuê địa chỉ trong
một khoảng thời gian.
d) Hoạt dộng của DHCP
- DHCP là một giao thức Internet có nguồn gốc ở BOOTP( bootstrap
protocol), được dùng để cấu hình các Clients không đĩa. DHCP khai thác
ưu điểm của giao thức truyền tin và các kỹ thuật khai báo cấu hình được
định nghĩa trong BOOTP, trong đó có khả năng gán địa chỉ. Sự tương tự
này cũng cho phép các bộ định tuyến hiện nay chuyển tiếp các thông điệp
BOOTP giữa các mạng con cũng có thể chuyển tiếp các thông điệp
DHCP. Vì thế, DHCP Server có thể đánh địa chỉ IP cho nhiều mạng con.
- Quá trình DHCP:
o B1: Máy trạm khởi động với “địa chỉ IP rỗng” cho phép liên lạc
với DHCP Servers bằng giao thức TCP/IP. Nó broadcast một
17
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
thông điệp DHCP Discover chứa địa chỉ MAC và tên máy tính để
tìm DHCP Server.
o B2: Nhiều DHCP Server có thể nhận thông điệp và chuẩn bị địa
chỉ IP cho máy trạm. Nếu máy chủ có cấu hình hợp lệ cho máy
trạm, nó gửi thông điệp “DHCP Offer” chứa địa chỉ MAC của
khách, địa chỉ IP “Offer”, mặt nạ mạng con (subnet mask), địa chỉ
IP của máy chủ và thời gian cho thuê đến Client. Địa chỉ “offer”
được đánh dấu là “reserve”( để dành).
o B3: Khi Client nhận thông điệp DHCP Offer và chấp nhận một
trong các địa chỉ IP, Client sẽ gửi thông điệp DHCP Request để
yêu cầu IP phù hợp cho DHCP Server thích hợp.
o B4: Cuối cùng, DHCP Server khẳng định lại với Client bằng thông
điệp DHCP Acknowledge.
- Các thông điệp DHCP:

o DHCP Discover: Thời gian đầu tiên một máy tính DHCP Client nỗ
lực để gia nhập mạng, nó yêu cầu thông tin địa chỉ IP từ DHCP
Server bởi việc broadcast một gói DHCP Discover. Địa chỉ IP
nguồn trong gói là 0.0.0.0 bởi vì client chưa có địa chỉ IP.
o DHCP Offer: Mỗi DHCP server nhận được gói DHCP Discover từ
client đáp ứng với gói DHCP Offer chứa địa chỉ IP không thuê bao
và thông tin định cấu hình TCP/IP bổ sung(thêm vào), chẳng hạn
như subnet mask và gateway mặc định. Nhiều hơn một DHCP
server có thể đáp ứng với gói DHCP Offer. Client sẽ chấp nhận
gói DHCP Offer đầu tiên nó nhận được.
o DHCP Request: Khi DHCP client nhận được một gói DHCP
Offer, nó đáp ứng lại bằng việc broadcast gói DHCP Request mà
18
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
chứa yêu cầu địa chỉ IP, và thể hiện sự chấp nhận của địa chỉ IP
được yêu cầu.
o DHCP Acknowledge: DHCP server được chọn lựa chấp nhận
DHCP Request từ Client cho địa chỉ IP bởi việc gửi một gói
DHCP Acknowledge. Tại thời điểm này, Server cũng định hướng
bất cứ các tham số định cấu hình tuỳ chọn. Sự chấp nhận trên của
DHCP Acknowledge, Client có thể tham gia trên mạng TCP/IP và
hoàn thành hệ thống khởi động.
o DHCP Nak: Nếu địa chỉ IP không thể được sữ dụng bởi client bởi
vì nó không còn giá trị nữa hoặc được sử dụng hiện tại bởi một
máy tính khác, DHCP Server đáp ứng với gói DHCP Nak, và
Client phải bắt đầu tiến trình thuê bao lại. Bất cứ khi nào DHCP
Server nhận được yêu cầu từ một địa chỉ IP mà không có giá trị
theo các Scope mà nó được định cấu hình với, nó gửi thông điệp
DHCP Nak đối với Client.
o DHCP Decline: Nếu DHCP Client quyết định tham số thông tin

được đề nghị nào không có giá trị, nó gửi gói DHCP Decline đến
các Server và Client phải bắt đầu tiến trình thuê bao lại.
o DHCP Release: Một DHCP Client gửi một gói DHCP Release đến
một server để giải phóng địa chỉ IP và xoá bất cứ thuê bao nào
đang tồn tại.
- Bổ sung và cấp phép cho dịch vụ DHCP hoạt động.
- Tại sao sử dụng dịch vụ DHCP?
o Giảm bớt được các hiện tượng xung đột về IP, hay các lỗi về IP,
luôn đảm bảo cho các máy client được cấu hình đúng.
o Đơn giản hóa trong công tác quản trị.
19
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
- Địa chỉ IP động đặc biệt là gì?
Địa chỉ IP động đặc biệt( Automatic private IP Addressing) hay APIPA là một
dặc trưng của hệ điều hành Microsoft windows cho phép gán một dải địa chỉ IP tự
động trên các máy Client dải địa chỉ này có giá trị trong khoảng từ: 169.254.0.0 đến
169.254.255.255. Khi mà dịch vụ DHCP server không được phép cấp phát IP cho
các máy Client.
- Cách thức cấp phát địa chỉ IP động
Dịch vụ DHCP sẽ thiết lập hợp đồng thuê địa chỉ IP và ra gạn hợp đồng cho
thuê địa chỉ IP nhằm cấp phát địa chỉ IP động cho các máy Client.
o Phạm vi cấp phát của dịch vụ DHCP.
• Phạm vi cấp phát DHCP là gì?
Phạm vi cấp phát là dải địa chỉ IP hợp lệ được dùng để
thuê hoặc gán cho các máy Client trên cùng một Subnet. Ta cấu
hình một pham vi cấp phát trên DHCP Server để xác định dải
địa chỉ IP mà các Server có thể gán cho các máy Client.
• Tại sao phải sử dụng phạm vi cấp phát DHCP?
Phạm vi cấp phát sẽ xác định xem những địa chỉ IP nào sẽ
được phép cấp phát cho các máy client

- Địa chỉ DHCP dành sẵn là gì?
Địa chỉ IP dành sẵn là một dải địa chỉ IP được gán cố định. Nó là dải địa chỉ IP
được tạo ra trong một phạm vi (scope) dành riêng, dải địa chỉ IP dành riêng này
được dùng để gàn cho các máy Client (Chúng là các địa chỉ IP tĩnh trong mạng
được gán cho các máy client).
- Tùy chọn DHCP là gì?
Các tùy chọn DHCP là các tham số cấu hình máy khách bổ sung mà một máy
chủ DHCP có thể gán khi phục vụ các máy khách DHCP.
o Tại sao phải sử dụng tùy chọn DHCP?
20
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Các tùy chọn DHCP được cấu hình sử dụng bảng điều khiển DHCP
và có thể được áp dụng cho nhiều phạm vi và sự dành sẵn.Một tùy
chọn DHCP sẽ làm tăng thêm các chức năng cho hệ thống mạng. Các
tùy chọn DHCP cho phép bạn thêm dữ liệu cấu hình IP các client.
o Một số tùy chọn chung của DHCP
Router (Default Gateway): Địa chỉ của bất cứ cổng ra mặc định
(default gateway) hay bộ định tuyến (router) nào.
DNS Domain Name: Tên miền DNS xác định miền mà máy
khách sẽ phụ thuộc. Máy khách có thể sử dụng thông tin này dể cập
nhật thông tin lên máy chủ DNS để các máy tính khác có thể tìm thấy
nó.
DNS Servers: Địa chỉ của bất cứ máy chủ DNS nào mà máy
khách có thể sử dụng trong quá trình truyền thông.
WINS Servers: Địa chỉ của bất cứ máy chủ WINS nào mà máy
khách có thể sử dụng trong quá trình truyền thông.
WINS Node Type: Là một kiểu phương thức phân giải tên
NetBIOS mà các máy khách (Client) có thế sử dụng.
- Phương thức hoạt động của dịch vụ DHCP
Dịch vụ DHCP hoạt động theo mô hình Client / Server. Theo đó quá trình

tương tác giữa DHCP client và server sẽ diễn ra theo các bước sau.
o B1: Khi máy Client khởi động, máy sẽ gửi broadcast gói tin
DHCP DISCOVER, yêu cầu một Server phục vụ mình. Gói tin
này cũng chứa địa chỉ MAC của client. Nếu client không liên lạc
được với DHCP Server thì sau 4 lần truy vấn không thành công nó
sẽ tự động phát sinh ra 1 địa chỉ IP riêng cho chính mình nằm
trong dãy 169.254.0.0 đến 169.254.255.255 dùng để liên lạc tạm
21
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
thời. Và client vẫn duy trì việc phát tín hiệu Broad cast sau mỗi 5
phút để xin cấp IP từ DHCP Server.
o B2: Các máy Server trên mạng khi nhận được yêu cầu đó. Nếu còn
khả năng cung cấp địa chỉ IP, đều gửi lại cho máy Client một gói
tin DHCP OFFER, đề nghị cho thuê một địa chỉ IP trong một
khoảng thời gian nhất định, kèm theo là một Subnet Mask và địa
chỉ của Server. Server sẽ không cấp phát đia chỉ IP vừa đề nghị
cho client thuê trông suốt thời gian thương thuyết.
o B3: Máy Client sẽ lựa chọn một trong những lời đền nghị
( DHCPOFFER) và gửi broadcast lại gói tin DHCPREQUEST và
chấp nhận lời đề nghị đó. Điều này cho phép các lời đề nghị không
được chấp nhận sẽ được các Server rút lại và dùng để cấp phát cho
các Client khác.
o B4: Máy Server được Client chấp nhận sẽ gửi ngược lại một gói
tin DHCP ACK như một lời xác nhận, cho biết địa chỉ IP đó,
Subnet Mask đó và thời hạn cho sử dụng đó sẽ chính thức được áp
dụng. Ngoài ra server còn gửi kèm những thông tin bổ xung như
địa chỉ Gateway mặc định, địa chỉ DNS Server
2.2.3 Web server
a) Giới thiệu Web server
HTTP là một giao thức cho phép Web browsers và Web.

Servers có thể giao tiếp với nhau. Nó chuẩn hoá các thao tác cơ bản mà một
Web Server phải làm được.
HTTP là giao thức đơn giản giống như với các giao thức chuẩn khác của
Internet, thông tin điều khiển được truyền dưới dạng văn bản thô thông qua kết nối
TCP.
22
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Web Server và cách hoạt động.
Web Server có thể phục vụ các tài liệu HTML dưới dạng siêu văn bản gồm:
văn bản, hình ảnh, âm thanh, phim,…
Đầu tiên xét Web server ở mức độ cơ bản thì nó phục vụ các nội dung tĩnh.
Nghĩa là khi Web server nhận 1 yêu cầu lấy trang Web từ Web browser thì nó sẽ
ánh xạ Uniform Resource Locator (URL) trên vào một file cục bộ trên máy server.
Mô hình hoạt động của Web Server.
- Chấp nhận kết nối.
- Sinh ra các nội dung tĩnh hoặc động cho Web browser.
- Đóng kết nối.
- Chấp nhận kết nối.
- Lặp lại quá trình trên .
Mặc dù mô hình này hoạt động, nó vẫn cần phải thiết kế lại để phục vụ được
nhiều người trong cùng 1 lúc. Web servers có xu hướng tận dụng ưu điểm của
2 phương pháp khác nhau để giải quyết vấn đề này: đa tiển trình (multi-threading)
hoặc đa tiến trình (multi - processing) hoặc các hệ lai giữa multi-processing và
multi-threading.
b) Apache
Apache: đây là web server phổ biến nhất, chiếm 2/3 tổng số web server hiện
nay (theo thống kê của Netcraft, ). Apache là một phần
mềm có nhiều tính năng mạnh và linh hoạt dùng để làm Webserver.
- Hỗ trợ đầy đủ những giao thức HTT trước đây như HTTP/1.1.
- Có thể cấu hình và mở rông với những module của công ty thứ 3.

- Cung cấp source code đầy đủ với license không hạn chế.
- Chạy trên nhiều hệ điều hành như Windows NT/9x, Netware 5.x, OS/2 và
trên hầu hết các hệ điều hành Unix.
Để sử dụng CentOS như một web server, bạn thực hiện theo các bước sau:
- Cài đặt Apache.
- Cài đặt công cụ system-config-httpd để cấu hình Apache web server.
23
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
- Cấu hình Linux để tự động khởi động Apache web server khi khởi động
hệ thống.
- Cấu hình firewall của Linux để cho phép trao đổi các yêu cầu của web.
c) Giao thức HTTP
- Lớp của giao thức HTTP
HTTP (Hypertext Transfer Protocol) là giao thức thuộc lớp ứng dụng trong
mô hình tham chiếu OSI. Hoạt động thông thường ở port 80 và là giao thức hướng
kết nối. Nói cách khác, trước khi thực hiện phiên làm việc, giao thức HTTP sẽ thực
hiện bắt tay ba bước.
Hình 2-7: Lớp của giao thức HTTP
- URI – Uniform Resource Identifiers
Thông thường, chúng ta thường quen thuộc với định nghĩa URL( Uniform
Resource Locators) Địa chỉ là một ví dụ về URL. Trên
thực tế, không có nhiều khác biệt giữa hai khái niệm URL và URI, URL một chỉ là
một loại của URI.
URI là một đặc điểm kỹ thuật của giao thức HTTP. Như hình dưới cho thấy
một URI chứa rất nhiều các thành phần, không đơn giản như URL.
24
Xây dựng ứng dụng hỗ trợ cấu hình một số dịch vụ mạng trên CentOS
Hình 2-8: Cấu trúc đầy đủ của URI
- Protocol: Xác định các giao thức và các ứng dụng cần thiết để truy cập tài
nguyên, trong trường hợp này là giao thức HTTP.

- Username: Nếu giao thức hỗ trợ khái niệm về tên người dùng thì sername
cung cấp tên người dùng để chứng thực truy cập tài nguyên .
- Password: Mật khẩu truy cập tài nguyên .
- Host: Tên miền truyền thông cho webserver.
- Port: Là port cho các giao thức lớp ứng dụng, ví dụ như HTTP là cổng 80
( có thể bỏ qua tham số này).
- Path: đường dẫn phân cấp đến tài nguyên được đặt trên Server.
- File: Tên các tập tin tài nguyên trên Server.
- Query: Các tuy vấn thêm thông tin về tài nguyên của Client.
- Fragment: Một vị trí nào đó trong tài nguyên.
Hoạt động HTTP
- Kết nối
HTTP thuộc giao thức TCP, vì vậy trước khi tiến hành truyền thông phải thực
hiện phiên kết nối TCP.
Trước đây, mỗi kết nối TCP sẽ thực hiện chỉ 1 request HTTP và 1 response,
nghĩa là nếu client request 2 lần thì sẽ cần 2 phiên kết nối TCP. Điều này gây ra
nhiều bất cập, ảnh hưởng rất nhiều đến hiệu năng hoạt động của server.
25

×