Tải bản đầy đủ (.doc) (22 trang)

Tìm hiểu giao thức cấp phát địa chỉ DHCP và BOOTP

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 (260.62 KB, 22 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC THƯƠNG MẠI
----0O0----

BÀI THẢO LUẬN
MÔN: MẠNG VÀ TRUYỀN THÔNG (1.2)
ĐỀ TÀI 4: TÌM HIỂU GIAO THỨC CẤP PHÁT ĐỊA CHỈ
DHCP VÀ BOOTP.
Giáo viên hướng dẫn: Vũ Quang Huy
Nhóm 14 : 1. Bùi Đức Trọng
2. Hồ Phạm Nhật Trung
3. Nguyễn Hoàng Trung
4. Nguyễn Đình Tú
5. Vũ Minh Tú
6. Nguyễn Mạnh Tuấn
7. Nguyễn Ngọc Tuấn
8. Cấn Thanh Tùng
9. Nguyễn Công Tùng
Lớp: 1105NWMG0311.
2


Mục Lục
Trang
Chương I. Mục đích, đặc điểm và hoạt động của giao thức cấp phát địa chỉ BOOTP
và DHCP................................................................................................................................04
I.Giao thức cấp phát địa chỉ BOOTP.....................................................................................04
1. Giới thiệu về BOOTP.....................................................................................................04
2. Mục đích của BOOTP....................................................................................................04
3. Đặc điểm giao thức BOOTP............................................................................................04
4. Hoạt động của BOOTP...................................................................................................07


II. Giao thức cấp phát địa chỉ DHCP......................................................................................09
1. Giới thiệu về DHCP.......................................................................................................09
2. Mục đích của DHCP.......................................................................................................12
3. Đặc điểm giao thức DHCP..............................................................................................12
4. Hoạt động của DHCP.....................................................................................................14

Chương II. Sự khác biệt giữa BOOTP và DHCP. Yêu cầu khi cấu hình DHCP..................17
I. Sự khác biệt giữa BOOTP và DHCP........................................................................................17
II. Yêu cầu khi cấu hình DHCP...................................................................................................18

Tài liệu tham khảo..................................................................................................................20

3


Chương I: Mục đích, đặc điểm và hoạt động của giao thức cấp
phát địa chỉ BOOTP và DHCP.
I. Giao thức cấp phát địa chỉ BOOTP:
1. Giới thiệu về BOOTP
Cộng đồng Internet phát triển giao thức BOOTP để cấu hình cho máy trạm không có ổ
đĩa. Và BOOTP được định nghĩa trong RFC 951 vào năm 1985. Là một phiên bản đi trước
của DHCP nên BOOTP cũng có nhiều đặc điểm họat động tương tự như DHCP. Cả hai
giao thức này đều dựa trên cơ sở client-server và sử dụng port UDP 67, 68. Hai port này
hiện vẫn được biết đến như là port BOOTP.

2. Mục đích của BOOTP
BOOTP là một giao thức Internet có thể cung cấp thông tin cấu hình mạng cho các
trạm làm việc không có đĩa cứng hay các trạm làm việc khác nếu cần thiết trong mạng cục
bộ. Khi một trạm làm việc khởi động, nó gửi thông điệp BOOTP lên mạng. Một máy dịch
vụ BOOTP nhận thông điệp này, lấy thông tin cấu hình cho máy tính được thiết kế đó, và

gửi lại nó cho máy tính. Lưu ý là hệ thống khởi động không có địa chỉ IP khi gửi thông
điệp BOOTP. Thay vào đó địa chỉ phần cứng của NIC ( Network Interface Card) sẽ được
đặt trong thông điệp và máy dịch vụ sẽ gửi câu trả lời của nó tới địa chỉ này.

3. Đặc điểm giao thức BOOTP
Bộ giao thức TCP/IP đã có mặt gần 3 thập kỷ, và vấn đề làm thế nào tự động hóa
việc cấu hình các thông số cho các máy sử dụng địa chỉ IP đã có từ lâu. Vào đầu thập niên
1980, các mạng điện toán còn nhỏ và tương đối đơn giản. Việc cấu hình tự động TCP/IP
không được coi là quan trọng lắm mặc dù có sự khó khăn trong cấu hình các thông số
bằng tay. Nó quan trọng ở chỗ không có cách nào khác để cấu hình các máy trạm không
có ổ đĩa cứng.
Như chúng ta đã biết, nếu không có một dạng nào đó cất giữ dữ liệu bên trong
máy, một thiết bị phải dựa vào một người nào đó hay một cái gì đó bên ngoài để nói cho
nó biết nó “là ai”(địa chỉ của nó) và phải vận hành như thế nào mỗi lần mở máy. Khi một
thiết bị như thế được bật lên , nó bị rơi một tình thế khó khăn: nó cần phải sử dụng IP để
4


liên lạc với một thiết bị khác để nhờ thiết bị này cung cấp thông tin cho nó biết làm sao
liên lạc với nhau bằng cách sử dụng IP! Tiến trình này được gọi là “bootstrapping” hay
nói cho gọn “booting”, từ bootstrap nghĩa đen là dây gắn vào phía trên gót giày , ẩn dụ
một người dùng một vật nhỏ để kéo một vật lớn hơn là chiếc giày vào chân. Cũng như
vậy, một chương trình nhỏ dùng để kéo một chương trình lớn hơn là hệ điều hành vào bộ
nhớ.
- BOOTP vẫn còn dựa vào quan hệ client/server, nhưng nó được triển khai ở tầng
cao hơn, dùng UDP cho việc vận chuyển. BOOTP không tự động cấp phát địa chỉ IP cho
một host. Khi client yêu cầu một địa chỉ IP, BOOTP server tìm trong bảng đã được cấu
hình trước xem có hàng nào tương ứng với địa chỉ MAC của client hay không.Nếu có thì
địa chỉ IP tương ứng sẽ được cung cấp cho client. Điều này có nghĩa là địa chỉ MAC và
địa chỉ IP tương ứng phải được cấu hình trước trên BOOTP server.

- BOOTP hỗ trợ gửi thêm thông tin tới máy client ngoài địa chỉ IP.Thông tin thêm
này thường được gửi trong một thông điệp duy nhất.
- BOOTP có thể sử dụng trong môi trường client và server ở trong những hệ thống
mạng gồm nhiều NetID khác nhau. Điều này cho phép quản lý địa chỉ IP tập trung ở một
server.
- BOOTP chỉ cấp 4 thông tin cơ bản của cấu hình IP:
 Địa chỉ IP.
 Địa chỉ Gateway.
 Subnet mask.
 Địa chỉ DNS server.



NHƯỢC ĐIỂM CỦA RARPS VÀ ƯU ĐIỂM CỦA BOOTP
Giao thức RARP (Reverse Address Resolution Protocol) là giao thức đầu tiên

được tạo ra để giải quyết “vấn đề bootstrap”. RARP ra đời năm 1984, là một sự biến thể
trực tiếp từ giao thức cấp thấp ARP (Address Resolution Protocol), một giao thức kết
buộc địa chỉ IP với địa chỉ tầng data-link. RARP có khả năng cấp địa chỉ IP cho thiết bị
không có ổ đĩa cứng, bằng cách dùng sự trao đổi đơn giản bằng một truy vấn và một trả
lời trong mối quan hệ client/server .
 Quá nhiều hạn chế của RARP trở thành một khó khăn cho mạng:
5


- Vì hoạt động bằng broadcast ở tầng data-link nên nó đòi hỏi phải có sự điều chỉnh cho
phù hợp với từng phần cứng của nhà sản xuất khác nhau.
- Một server RARP đòi hỏi phải nằm trên mỗi mạng vật lý để đáp ứng cho các broadcast ở
tầng 2.
- Mỗi server RARP phải có một người Admin cấp địa chỉ IP bằng tay trên server.

- Và nhược điểm lớn nhất của RARP là chỉ cấp địa chỉ IP và không cho thêm một thông
tin nào khác mà máy client rất cần.
RARP rõ ràng là cung cấp thông tin không đầy đủ cho cấu hình TCP/IP cho các
máy tính. Để hỗ trợ vừa cho các máy tính không có đĩa cứng vừa cho việc cấu hình
TCP/IP tự động, vì thế mà BOOTP (Bootstrap) được tạo ra.
 BOOTP được chuẩn hóa trong RFC 951, xuất bản tháng 9 năm 1985.
Giao thức này được phát triển để giải quyết các hạn chế của RARP:
- Dù vẫn còn dựa vào quan hệ client/server, nhưng nó được triển khai ở tầng cao hơn,
dùng UDP cho việc vận chuyển. Nó không còn phụ thuộc vào phần cứng đặc biệt nào của
nhà sản xuất như là RARP.
- Hỗ trợ gửi thêm thông tin tới máy client ngoài địa chỉ IP. Thông tin thêm này thường
được gửi trong một thông điệp duy nhất.
- Nó có thể sử dụng trong môi trường client và server ở trong những hệ thống mạng gồm
nhiều NetID khác nhau. Điều này cho phép quản lý địa chỉ IP tập trung ở một server.

6


 NHƯỢC ĐIỂM CỦA BOOTP
Chúng ta cũng cần phải lưu ý rằng mặc dù có tên là BOOTP, ám chỉ rằng nó có đủ
mọi thứ cần thiết để máy tính không có đĩa cứng có thể “boot” được, nhưng điều này thực
sự không đúng. Vì chính BOOTP đã tự mô tả, “bootstrapping” đòi hỏi hai giai đoạn:
- Giai đoạn đầu tiên, máy client được cung cấp địa chỉ IP và các thông số khác.
- Giai đoạn hai, máy client download phần mềm, như là hệ điều hành và các drivers, để nó
có thể hoạt động trên mạng và thực hiện các công tác mà nó được giao.
BOOTP thực sự chỉ giải quyết được giai đoạn đầu tiên: giải quyết việc cấp địa chỉ và
thông số cấu hình. Giai đoạn hai mặc định xảy ra bằng cách sử dụng một giao thức khác
dùng để vận chuyển file như là TFTP (Trivial File Transfer Protocol).

4. Hoạt động của BOOTP

Trong mạng máy tính, giao thức Bootstrap, hay BOOTP, là một giao thức mạng
mà máy client sử dụng để lấy địa chỉ IP từ một máy server. Giao thức BOOTP được chỉ
định trong RFC 951.
BOOTP thường được sử dụng trong tiến trình “bootstrap” khi máy tính đang khởi
động. Server cấu hình BOOTP gán địa chỉ IP cho từng máy client từ một dãy địa chỉ.
BOOTP sử dụng giao thức UDP (User Datagram Protocol) làm giao thức vận chuyển.
Về phương diện lịch sử, BOOTP được sử dụng cho các máy trạm không đĩa cứng
với hệ điều hành UNIX ( hoặc tương tự) tìm thấy được vị trí của file boot máy ngoài việc
nhận được địa chỉ IP, và cũng bởi giao thức này mà các cơ quan xí nghiệp dùng để trỉển
khai việc cài đặt mới hệ điều hành (ví dụ :hệ điều hành Windows) cho các máy tính cá
nhân (PC) chưa có hệ điều hành.
Lúc ban đầu người ta phải để chương trình của giao thức này trong đĩa mềm gọi là
đĩa mềm boot. Đĩa mềm này khởi động để thiết lập các kết nối mạng sơ khởi. Sau này việc
sản xuất ra các cạc mạng tích hợp giao thức này trong BIOS cũng như là tích hợp trong bo
mạch chủ với những cạc mạng on-board, như thế cho phép máy boot trực tiếp qua cạc

7


mạng. Bootstrap Protocol - BOOTP là một internet protocol cho phép một diskless
workstation (ám chỉ một workstation không có đĩa cứng) thi hành các công việc sau:
1 - tìm kiếm địa chỉ IP cho chính nó 2 - tìm IP của BOOTP server 3 - nạp một file
khởi động từ server vào bộ nhớ 4 - và khởi động.
Theo cách này, BOOTP cho phép một workstation khởi động mà không cần
đĩa cứng hay đĩa mềm:


Một gói tin trao đổi duy nhất được thực hiện. Timeout được sử dụng để truyền lại

cho đến khi trả lời nhận được. Các trường cùng một gói bố trí được sử dụng trong cả hai

hướng. Cố định chiều dài tối đa lĩnh vực chiều dài hợp lý được sử dụng để đơn giản hóa
cấu trúc và định nghĩa phân tích cú pháp.

Một "opcode" trường tồn với hai giá trị. Các khách hàng chương trình phát sóng
một 'bootrequest' gói. Server sau đó sẽ trả lời với một 'Bootreply' gói. bootrequest chứa
các khách hàng địa chỉ phần cứng và địa chỉ IP của nó, nếu biết.

Các yêu cầu tùy chọn có thể chứa tên của máy chủ khách hàng muốn trả lời. Điều
này là để khách hàng có thể khởi động từ một máy chủ cụ thể (ví dụ: nếu nhiều phiên bản
của các bootfile cùng tồn tại hoặc nếu máy chủ được đặt trong một distantnet/domain).
Các khách hàng không phải đối phó với tên / tên miền dịch vụ, thay vào đó chức năng này
được đẩy ra tới máy chủ BOOTP.

Các yêu cầu tùy chọn có thể chứa các 'generic' tên tập tin được khởi động. Đối với
'Unix' mẫu hoặc 'ethertip'.Khi máy chủ gửi bootreply, nó thay thế lĩnh vực này với đầy đủ
tên đường dẫn của tập tin khởi động thích hợp. Khi xác định tên này, các máy chủ có thể
tham khảo cơ sở dữ liệu của mình So sánh các khách hàng địa chỉ và tên tập tin yêu cầu,
với một tập tin khởi động đặc biệt tùy chỉnh cho khách hàng đó. Nếu bootrequest tên tập
tin là một null chuỗi, sau đó máy chủ trả về một tên tập tin cho biết lĩnh vực tập tin mặc
định để được nạp cho khách hàng đó.

Trong trường hợp khách hàng không biết địa chỉ IP của họ, máy chủ cũng phải có
một cơ sở dữ liệu địa chỉ liên quan phần cứng để IP địa chỉ. Địa chỉ IP của máy khách sau
đó được đặt vào một trường trong các bootreply.

Một số cấu trúc liên kết mạng (chẳng hạn như Stanford's) có thể được như vậy
rằng một cho vật lý cáp không có một máy chủ TFTP trực tiếp kèm theo nó (ví dụ như tất
cả các cổng và máy chủ trên một số cáp có thể không đĩa). Với sự hợp tác của các cổng
8



“láng giềng”, BOOTP có thể cho phép khách hàng để khởi động tắt của một vài máy chủ
bước nhảy xa, thông qua các cổng này. Xem 'Booting Through Gateways' dưới đây. Điều
này một phần của giao thức không yêu cầu đặc biệt hành động trên một phần của khách
hàng. Thực hiện là tùy chọn và đòi hỏi một lượng nhỏ mã bổ sung tại các cổng và các máy
chủ.

Định dạng gói
Tất cả các số hiển thị là số thập phân, trừ khi chỉ định khác. Các BOOTP gói tin được
đính kèm trong một chuẩn IP UDP datagram. Đối với đơn giản nó là giả định rằng các gói
BOOTP là không bao giờ bị phân mảnh. Bất kỳ trường số hiển thị là đóng gói trong tiêu
chuẩn mạng thứ tự byte, tức là bit bậc cao được gửi đầu tiên. Trong tiêu đề IP của
bootrequest một, khách hàng điền vào IP riêng của nó nguồn địa chỉ nếu biết, nếu không
số không. Khi các địa chỉ máy không rõ, các địa chỉ IP đích sẽ là “broadcast address”
255.255.255.255. Điều này có nghĩa là địa chỉ “broadcast on the local cable” (tôi không
biết số mạng của tôi).

II. Giao thức cấp phát địa chỉ DHCP
1.Giới thiệu về DHCP
 Lịch sử ra đời của DHCP
Như ta đã biết, BOOTP thông thường sử dụng một phương pháp tĩnh để xác định
địa chỉ IP nào gán cho thiết bị. Khi máy client gửi thông điệp yêu cầu thì thông điệp đó
bao gồm cả địa chỉ vật lý, rồi server tra địa chỉ đó trong bảng địa chỉ để xác định địa chỉ IP
nào cho máy client.(BOOTP còn có thể sử dụng những phương pháp khác để xác lập mối
quan hệ giữa địa chỉ IP và địa chỉ vật lý, nhưng cho tương ứng tĩnh là phương pháp
thường sử dụng). Điều này có nghĩa là BOOTP làm việc tương đối tốt trong môi trường
tĩnh, nơi mà những sự thay đổi về địa chỉ IP của các thiết bị không thường xảy ra. Những
mạng như thế là thông thường trong thập niên 1980 và đầu thập niên 1990.
Sau một thời gian, nhiều mạng máy tính rời xa khỏi mô hình này vì một số lý do:
- Khi các máy tính ngày càng nhỏ và nhẹ hơn thì thật dễ cho chúng được di chuyển từ

mạng này đến mạng khác. Ở mạng khác chúng lại cần một địa chỉ khác với Network ID
của mạng mới.
9


- Các máy tính xách tay như là Laptop hay palmtop có thể di chuyển từ mạng này đến
mạng khác nhiều lần trong ngày.
- Một vấn đề lớn khác là sự cạn kiệt không gian địa chỉ IP. Trong nhiều cơ quan , việc gán
địa chỉ IP tĩnh và dùng mãi cho mỗi máy để chúng kết nối vào mạng là một phí phạm.
- Trong nhiều cơ quan, việc theo dõi những sự thay đổi địa chỉ cố định trở nên một công
việc nản lòng. BOOTP, với bảng ánh xạ địa chỉ tĩnh giữa địa chỉ vật lý và địa chỉ IP không
thích hợp cho công việc này. Nó cũng không có cách nào sử dụng lại các địa chỉ; mỗi lần
mà một địa chỉ đã cấp, máy tính sẽ giữ mãi địa chỉ đó, ngay cả khi nó không còn cần dùng
đến nữa.
Chính vì vậy, người ta cần một giao thức cấu hình TCP/IP mới để phục vụ cho
những mạng điện toán hiện đại hơn. Tổ chức IETF đáp ứng điều này bằng giao thức
DHCP (Dynamic Host Configuration Protocol), lần đầu tiên được xuất bản trong RFC
1541, tháng 10 năm 1993. (Thực ra, chuẩn trong giao thức đó đã được nói đến trong RFC
1531 xuất bản trong cùng tháng nhưng vì có một vài lỗi nhỏ trong chuẩn này nên người ta
hiệu chỉnh và xuất bản RFC 1541)
DHCP (Dynamic Host Configuration Protocol) là một giao thức cho phép các nhà
quản trị mạng có thể từ một trung tâm quản lý và tự động hóa quá trình gán các thông số
cấu hình IP cho một mạng máy tính. Khi sử dụng giao thức của Internet (TCP/IP), một
máy tính muốn trao đổi với một máy tính khác, nó phải có một địa chỉ IP duy nhất. Khi
không có DHCP, các nhà quản trị mạng tại từng máy tính phải tự tay mình gán (gõ trên
bàn phím) địa chỉ IP (cho các máy client). Với DHCP, các nhà quản trị mạng có thể theo
dõi và phân phối các địa chỉ IP từ một trung tâm.
Dĩ nhiên, khác với BOOTP là một protocol còn kém cỏi. DHCP đã hoạt động rất
tốt và cũng đã được sử dụng rộng rãi nhiều nơi khác nhau. Các yếu tố này cho thấy giao
thức này đã tiếp nối BOOTP và được bổ sung thêm nhiều theo năm tháng.

DHCP gồm hai thành phần chính:

10


1. Cơ chế cấp địa chỉ IP.
2. Cơ chế cho phép máy client yêu cầu và server cung cấp thông tin cấu hình.
DHCP thực hiện cả hai chức năng này cùng một cách như BOOTP nhưng có
nhiều cải tiến hơn:
- DHCP là một cơ chế thay vì là một chính sách áp đặt. DHCP phải cho phép người
quản lý hệ thống kiểm soát toàn bộ các tham số về cấu hình. Ví dụ như người quản lý có
thể cho phép một số các quy tắc về sử dụng tài nguyên trong mạng cục bộ
- Máy khách không cần bất cứ thao tác cấu hình bằng tay nào. Mỗi máy khách có
khả năng tự phát hiện và cài đặt thông tin về cấu hình mạng mà không có sự can thiệp của
người sử dụng.
- Bất cứ thiết bị nào trong mạng cũng không cần đến sự can thiệp của người quản
trị. Người quản trị không cần thiết lập bất cứ thông số nào trên phía máy khách, kể cả các
máy có địa chỉ cần cố định như là các server dịch vụ.
- Không yêu cầu mỗi DHCP cho một phân đoạn mạng riêng rẽ hay một mạng con
nào. Để bảo đảm tính khả mở và kinh tế, DHCP phải được các bộ định tuyến chuyển tiếp
hoặc thông qua sự can thiệp của các dịch vụ chuyển tiếp BOOTP.
- Một máy khách DHCP cần phải chuẩn bị để có thể tiếp nhận nhiều câu trả lời khác
nhau cho cùng một thông điệp yêu cầu. Trong một số trường hợp, để tăng tính tin cậy và
hiệu năng cho mạng người ta thiết kế nhiều máy chủ DHCP chồng lấp lên nhau.
- DHCP phải có thể tồn tại đồng thời với các máy cấu hình tĩnh, không được quản lý
và những giao thức mạng khác nhau.
- DHCP phải cung cấp đầy đủ các dịch vụ dành cho các máy trạm BOOTP tồn tại
trong mạng.
- Các mục tiêu mà DHCP cần đạt được khi tham gia vào quá trình cấp phát địa chỉ
như sau:



Bảo đảm rằng bất cứ một địa chỉ nào trong mạng sẽ không được cấp phát

quá một lần tại một thời điểm.

Giữ lại được các thông tin cấu hình của các máy trạm khi mà các máy trạm
này khởi động lại. Mỗi máy trạm nên được cấp phát một tham số cấu hình duy nhất
nếu như thể cho các lần yêu cầu.

11




Giữ lại được thông tin cấu hình đã cấp phát cho máy trạm trong quá trình

máy chủ khởi động lại và mỗi máy trạm DHCP nên có một tham số cấu hình duy nhất
bất chấp cơ chế cấp phát khởi động lại.

Cung cấp cơ chế tự động đăng ký và cung cấp địa chỉ cho các thiết bị mới
tham gia vào mạng để tránh quá trình người sử dụng phải cấu hình bằng tay.

Cung cấp một địa chỉ cố định hoặc lâu dài cho một số người dùng có yêu
cầu đặc biệt.

2. Mục đích của DHCP.
Mục đích của DHCP là cung cấp thông số cấu hình IP một cách tự động cho các
máy client để sử dụng trong một khoảng thời gian nhất định (còn gọi là thời gian rảnh ) và
khỏi phải làm công việc bắt buộc khi quản lý một mạng máy tính lớn.


3. Đặc điểm giao thức DHCP.
Giao thức cấu hình họat động (DHCP – Dynamic Host Configuration Protocol)
làm việc theo chế độ client-server. DHCP cho phép các DHCP client trong một mạng IP
nhận cấu hình IP của mình từ một DHCP server. Khi sử dụng DHCP thì công việc quản lý
mạng IP sẽ ít hơn vì phần lớn cấu hình IP của client được lấy về từ server. Giao thức
DHCP được mô tả trong RFC 2131.
Một DHCP client có thể chạy hầu hết các hệ điều hành Windows, Netvell Netuare,
Sun Solaris, Linux và MAC OS. Client yêu cầu server DHCP cấp một địa chỉ cho nó.
Server này quản lý việc cấp phát địa chỉ IP, sẽ gửi trả lời cấu hình IP cho client.
Một DHCP có thể phục vụ cho nhiều subnet khác nhau nhưng không phục vụ cho cấu
hình router, switch và các server khác vì những thiết bị này cần phải có địa chỉ IP cố định.
- Server chạy DHCP thực hiện tiến trình xác định địa chỉ IP cấp cho client. Client sử
dụng địa chỉ được cấp từ server trong một khoảng thời gian nhất định do người quản trị
mạng quy định. Khi thời này hết hạn thì client phải yêu cầu cấp lại địa chỉ mới. Client có
thể lấy địa chỉ mới hoặc vẫn có thể tiếp tục giữ địa chỉ cũ. DHCP ánh xạ tự động giữa địa
chỉ MAC và giải địa chỉ IP tương ứng.
- DHCP sử dụng giao thức UDP (User Datagram Protocol) làm giao thức vận
chuyển của nó. Client gửi thông điệp cho server trên port 67. Server gửi thông điệp cho
client trên port 68.
DHCP cung cấp 3 cơ chế dùng để cấp phát địa chỉ IP cho client:

12


• Cấp phát tự động – DHCP tự động chọn một địa chỉ IP trong dải địa chỉ được cấu
hình và cấp địa chỉ IP đó cố định, không thay đổi cho một client.
• Cấp phát cố định – Địa chỉ IP của một client do người quản trị mạng quyết
định. DHCP chỉ truyền địa chỉ này cho client đó.
• Cấp phát động – DHCP cấp và thu hồi lại một địa chỉ IP của client theo một

khoảng thời gian giới hạn.
Trong phần này chúng ta tập trung vào cơ chế cấp phát động. Một số thông số
cấu hình được liệt kê trong IETF RFC 1533 là:
• Subnet mask
• Router
• Tên miền
• Server DNS
• WINS server
Chúng ta có thể tạo trên DHCP server nhiều dải địa chỉ IP và thông số như trên
tương ứng. Mỗi một dải địa chỉ dành riêng cho một subnet IP. Điều này cho phép có thể
có nhiều DHCP cùng trả lời và IP client có thể di động. Nếu có nhiều server cùng trả lời
thì client có thể chọn một trả lời duy nhất.

- DHCP cung cấp cho client nhiều thông tin cấu hình IP khác như địa chỉ WINS
server, tên miền…( DHCP có thể cung cấp hơn 30 thông tin cấu hình IP).

4. Hoạt động của DHCP.
13


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. DHCP cho thuê địa chỉ trong một
khoảng thời gian, có nghĩa là những địa chỉ này sẽ còn dùng được cho các hệ thống khác.
Bạn hiếm khi bị hết địa chỉ. DHCP tự động gán địa chỉ IP thích hợp với mạng con chứa
máy trạm này. Cũng vậy, DHCP tự động gán địa chỉ cho người dùng di động tại mạng con
họ kết nối.
Trình tự thuê Địa chỉ IP 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 trạm 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ế, máy chủ DHCP có thể đánh địa chỉ IP cho nhiều mạng con.

Quá trình DHCP client lấy cấu hình DHCP diễn ra theo các bước sau:
1) Client phải có cấu hình DHCP khi bắt đầu tiến trình tìm các thành viên trong
mạng. Client gửi một yêu cầu cho server để yêu cầu cấu hình IP. Đôi khi
client có thể đề nghị trước địa chỉ IP mà nó muốn, ví dụ như khi nó hết thời
gian sử dụng địa chỉ IP hiện tại và muốn gia hạn thêm thời gian. Client sẽ
xác định được DHCP server bằng cách gửi gói quảng bá gọi là DHCPDISCOVER.
2) Khi server nhận được gói quảng bá, nó sẽ tìm trong cơ sở dữ liệu của nó và
quyết định là có trả lời được yêu cầu này không. Nếu server không trả lời yêu cầu thì nó
sẽ gửi gói trả lời trực tiếp bằng DHCPOFFER về cho client, trong đó mời client sử dụng
cấu hình IP của server. Trong DHCPOFER có thể có các thôngtin cho client về địa chỉ IP,
địa chỉ DNS server và thời gian sử dụng địa chỉ này.
3) Nếu client nhận thấy lời mời của server phù hợp thì nó sẽ gửi quảng bá một
DHCPREQUEST để yêu cầu cung cấp những thông cố cụ thể của cấu hình IP. Tại sao lúc
này client lại gửi quảng bá mà nó không gửi trực tiếp cho server? Do thông điệp đầu tiên
là DHCPDISCOVER đã được gửi quảng bá nên thông điệp này có thể sẽ đến được nhiều
14


server DHCP khác nhau. Khi đó, có thể sẽ có nhiều server cùng mời một client chấp nhận.
Thông thường lời mời mà client nhận được đầu tiên sẽ được chấp nhận.
4) Server nào nhận được DHCPREQUEST cho biết client đã chấp nhận sử dụng
cấu hình IP mà server đã mời thì server đó sẽ gửi trả lời trực tiếp cho client một gói
DHCPACK. Rất hiếm khi nhưng cũng có thể server sẽ không gửi DHCPACK vì có thể
cấu hình IP đó đã được cấp cho client khác rồi.
5) Sau khi client nhận được DHCPACK thì có thể bắt đầu sử dụng địa chỉ IP ngay.
6) Nếu client phát hiện rằng địa chỉ IP này đã được sử dụng trong cùng mạng nội
bộ với nó thì client sẽ gửi thông điệp DHCPDECLINE và bắt đầu tiến trình DHCP lại từ

đầu. Hoặc nếu client nhận được thông điệp DHCPNAK từ server trả lời cho thông điệp
DHCPREQUEST thì sau đó client cũng bắt đầu tiến trình lại từ đầu.
7) Nếu client không cần sủ dụng địa chỉ IP này nữa thì client gửi thông điệp
DHCPRELEASE cho server.

Tiến trình hoạt động DHCP
Tùy theo quy định của mỗi tổ chức, công ty, người quản trị mạng có thể cấp cố
định cho một địa chỉ IP nằm trong dải địa chỉ của một DHCP server. Cisco IOS DHCP
server luôn luôn phải kiểm tra một địa chỉ IP đã được sử dụng trong mạng hay chưa trước
khi mời client sử dụng địa chỉ IP đó. Server sẽ phát một yêu cầu ICMP echo, hay còn gọi
là ping, đến các địa chỉ IP nằm trong dải địa chỉ của mình trước khi gửi DHCPOFFER cho
client. Số lượng ping mặc định được sử dụng để kiểm tra một địa chỉ IP là 2 gói và chúng
ta có thể cấu hình con số này được.

15


Thứ tự các thông điệp DHCP được gửi đi trong tiến trình DHCP

Chương II: Sự khác biệt giữa BOOTP và DHCP
Yêu cầu khi cấu hình DHCP
I. Sự khác biệt giữa BOOTP và DHCP
Đầu tiên cộng đồng Internet phát triển giao thức BOOTP để cấu hình cho máy
trạm không có ổ đĩa. BOOTP được định nghĩa trong RFC 951 vào năm 1985. Là một
phiên bản đi trước của DHCP nên BOOTP cũng có nhiều đặc điểm họat động tương tự
như DHCP. Cả hai giao thức này đều dựa trên cơ sở client – server và sử dụng port UDP
67, 68. Hai port này hiện vẫn được biết đến như là port BOOTP.

Một cấu hình IP cơ bản bao gồm 4 thông tin sau:
-


Địa chỉ IP.
Địa chỉ Gateway.
Subnet mask.
Địa chỉ DNS server.
BOOTP không tự động cấp phát địa chỉ IP cho một host. Khi client yêu cầu một

địa chỉ IP, BOOTP server tìm trong bảng đã được cấu hình trước xem có hàng nào tương
ứng với địa chỉ MAC của client hay không. Nếu có thì địa chỉ IP tương ứng sẽ được cung
cấp cho client. Điều này có nghĩa là địa chỉ MAC và địa chỉ IP tương ứng phải được cấu
hình trước trên BOOTP server.
Sự thay đổi có ý nghĩa nhất giữa DHCP và BOOTP là trong lĩnh vực cấp địa chỉ IP
đó là tính năng cấp địa chỉ IP động của DHCP đối lập với BOOTP việc người admin phải
tạo bảng ánh xạ giữa địa chỉ vật lý và địa chỉ IP trên BOOTP server
16




DHCP sử dụng một dãy địa chỉ IP mà người admin đã cấu hình và tự cấp cho máy

client không cấn phải ghép sẵn trước.


Đồng thời DHCP hỗ trợ cho việc ánh xạ địa chỉ IP với địa chỉ vật lý khi nào thấy

cần (ta gọi tính năng này là Reservation).
Còn về việc thông tin liên lạc giữa máy client và server,tổng thể mà nói DHCP lại
tương tự với BOOTP nhưng vẫn có sự thay đổi. Cũng cùng giao thức hỏi/đáp bằng cách
sử dụng UDP để liên lạc thông tin cấu hình, nhưng lại có thêm các gói thông điệp được

tạo ra để hổ trợ những tính năng được tăng cường của DHCP. DHCP có thể dùng BOOTP
relay agents cùng một cách tương tự mà máy client và server BOOTP sử dụng. Phần mở
rộng thông tin cho nhà sản xuất phần cứng cũng được giữ lại, nhưng được hình thức hoá
và đặt tên lại là DHCP Options, và được mở rộng thêm để truyền được nhiều thông tin
hơn.
Dưới đây là các điểm khác nhau cơ bản giữa BOOTP và DHCP:
BOOTP

DHCP

Anh xạ cố định giữa địa chỉ MAC và giải Anh xạ tự động giữa địa chỉ MAC và giải địa
địa chỉ IP tương ứng

chỉ IP tương ứng

Kiểm tra địa chỉ MAC có gán địa chỉ IP Không kiểm tra địa chỉ MAC, khi máy client
nào trên table không, nếu có thì cấp IP xin IP là cấp
tương ứng, nếu không thì không cấp IP
Cấp phát IP cho máy client một lần duy Một IP có thể cấp cho các máy khác nhau vào
nhất và mãi mãi

những lúc khác nhau

Chỉ cung cấp 4 thông tin cấu hình cơ bản

Cung cấp tới 30 thông tin cấu hình khác nhau

Cấp cố định

Cấp trong khoảng thời gian nhất định


17


II. Yêu cầu khi cấu hình DHCP
Tương tự như NAT, DHCP server cũng yêu cầu người quản trị mạng phải khai báo
trước dải địa chỉ. Câu lệnh “IP dhcp pool” dùng để khai báo dải địa chỉ mà server có thể
cấp pháp cho host. Câu lệnh đầu tiên, “IP dhcp pool”, tạo dải địa chỉ với một tên cụ thể và
đặt router vào chế độ cấu hình DHCP. Trong chế độ cấu hình DHCP, lệnh network được
dùng để xác định dải địa chỉ được cấp phát. Nếu trong mạng đã có sử dụng cố định một số
địa chỉ IP nằm trong dải đã khai báo thì chúng ra quay trở lại chế độ cấu hình toàn cục.
Chúng ra sử dụng lệnh “IP dhcp excluded-address” để cấu hình cho Router loại trừ một số
hoặc một dải địa chỉ khi phân phối địa chỉ cho client. Những địa chỉ dành riêng này
thường được cấu hình cố định cho những host quan trọng và cho các cổng của Router.
Thông thường, chúng ta còn có thể cấu hình thêm nhiều thông tin khác ngoài thông tin về
địa chỉ IP cho một DHCP server. Trong chế độ cấu hình DHCP, chúng ta dùng lệnh
“default-router” để khai báo cổng mặc định gateway, lệnh “dns-server” để khai báo địa chỉ
của DNS server, lệnh “netbios-name-server” dùng để khai báo cho WINS server. Dịch vụ
DHCP được chạy mặc định trên các phiên bản Cisco IOS có hỗ trợ dịch vụ này. Để tắt
dịch vụ này, chúng ta dùng lệnh “no service dhcp” và dùng lệnh “IP service dhcp” để chạy
lại dịch vụ này.

Lệnh
Network

Giải thích
Khai báo địa chỉ mạng và subnet mask tương ứung cho dải

network-number


địa chỉ DHCP. Chiều dài bit thuộc phần network có thể

[mask /

được khai báo bằng subnet mask hoặc bằng con số thể
hiện số lượng bit, con số này luôn có dấu xổ phải (/) đứng

/prefix-length]
Default-router

trước.
Khai báo địa chỉ của cổng mặc định gateway cho DHCP

Addresss

client. Mặc dù chỉ cần một địa chỉ những trong cấu lệnh này

[address2 …

bạn có thể khai báo tới 8 địa chỉ.

Address8]
Dns-server

Khai báo địa chỉ của DNS server cho DHCP client. Mặc

Address

dù chỉ cần một địa chỉ những trong câu lệnh này bạn có thể


[address2 …

khai báo tối đa 8 địa chỉ.
18


Address8]
Netbios-name-

Khai báo địa chỉ NetBios WINS server cho các Microsoft

Server address

DHCP client. Mặc dù chỉ cần một địa chỉ những trong câu
lệnh này bạn có thể khai báo tới 8 địa chỉ.

[address2…

Tài liệu tham khảo
Giáo trình hệ thống mạng máy tính CCNA (Nhà xuất bản Lao động –
Xã hội)
Bách khoa toàn thư mở wikipedia:
Diễn đàn www.vn-zoom.com
Thư viện trực tuyến www.tailieu.vn
Slide Mạng Và Truyền Thông (Bộ môn CNTT TMĐT)
Mạng máy tính chuyên sâu
Và các websites:
/> /> />bootp_dhcp.htm
/>
19



CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do - Hạnh phúc
-----o0o----BIÊN BẢN HỌP NHÓM
(Lần 1)

1. Thời gian: Ngày , tháng năm 2011.
2. Địa điểm : Thư viện trường.
3. Nội dung :
+) Thành viên trong nhóm tập trung cùng tìm phương án làm bài thảo luận.
+) Nhóm trưởng nhận xét phương án của các thành viên trong nhóm, các thành
viên góp ý cho nhau và thống nhất phương án hoàn chỉnh.
4. Số thành viên tham gia : 9 thành viên tham gia đầy đủ.
5. Đánh giá:
Cuộc họp sôi nổi, mọi người tham gia đóng góp ý kiến tích cực và đều đi đầy đủ.

Xác nhận của thư ký

Xác nhận của nhóm trưởng

20


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do - Hạnh phúc
-----o0o----BIÊN BẢN HỌP NHÓM
(Lần 2)

1. Thời gian: Ngày , tháng năm 2011.

2. Địa điểm : Thư viện trường.
3. Nội dung :
+) Thành viên trong nhóm nộp bài đã tìm hiểu cho nhóm trưởng.
+) Nhóm trưởng và thư kí nhận xét và chỉnh sửa bài của các thành viên cho
hợp lí, các thành viên góp ý cho nhau và thống nhất bài hoàn chỉnh.

4. Số thành viên tham gia : 9 thành viên tham gia đầy đủ.
5. Đánh giá:
Cuộc họp sôi nổi, mọi người tham gia đóng góp ý kiến tích cực, và tập trung đầy đủ.

Xác nhận của thư ký

Xác nhận của nhóm trưởng

21


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do - Hạnh phúc
-----o0o----BIÊN BẢN HỌP NHÓM
(Lần 3)

1. Thời gian: Ngày , tháng năm 2011.
2. Địa điểm : Thư viện trường.
3. Nội dung :
+) Thành viên trong nhóm họp để tập trình bày bài thảo luận, phân công người
thuyết trình và người phản biện.
+) Nhóm trưởng và thư kí nhận xét phần trình bày của các cá nhân và chỉnh
sửa cho hợp lý.
+) Các thành viên tự đánh giá mức độ tham gia thảo luận của mình.

4. Số thành viên tham gia : 9 thành viên tham gia đầy đủ.
5. Đánh giá:
Cuộc họp sôi nổi, mọi người tham gia đóng góp ý kiến tích cực, và tập trung đầy đủ.

Xác nhận của thư ký

Xác nhận của nhóm trưởng

22


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
***************

BIÊN BẢN ĐÁNH GIÁ THẢO LUẬN
Môn: Mạng Và Truyền Thông (1.2)

Nhóm: 14
Giảng viên: Vũ Quang Huy
Lớp: 1105NWMG0311
Số buổi

STT
theo
DS

Họ và tên sinh
viên


Mã SV

Lớp

họp nhóm
thảo luận
Số buổi Ký
họp
tên
nhóm

118

Bùi Đức Trọng

10D140314 K46I5

119

Hồ Phạm Nhật
Trung

10D140246 K46I4

120

Nguyễn Hoàng
Trung

10D140389 K46I3


121

Nguyễn Đình


10D140250 K46I4

122

Vũ Minh Tú

10D140390 K46I3

123

Nguyễn Mạnh
Tuấn

10D140248 K46I4

124

Nguyễn Ngọc
Tuấn

10D140317 K46I5

125


Cấn Thanh
Tùng

10D140319 K46I5

126

Nguyễn Công
Tùng

10D140251 K46I4

Điểm tự
đánh giá
của các cá
nhân
Điểm


tên

Hà nội, ngày
Xác nhận của thư ký

Điểm
trưởng
nhóm
chấm

Giáo

viên
kết
luận

tháng năm 2011

Xác nhận của nhóm trưởng
23

Ghi
chu



×