TỔNG QUAN VỀ ĐỀ TÀI
Lý do chọn đề tài
Khi nghiên cứu về máy tính, chúng ta cần tìm hiểu từ phần cứng như màn hình, chuột, bàn phím đến phần mềm và hệ điều hành (HĐH) HĐH là phần mềm quản lý phần cứng và cung cấp dịch vụ cho các chương trình máy tính Windows là HĐH phổ biến nhất, nhưng tỷ lệ sử dụng Windows lậu ở Việt Nam rất cao do chi phí bản quyền Người dùng thường gặp khó khăn với virus, phần mềm độc hại và chi phí sửa chữa Một giải pháp thay thế là HĐH Linux, hoàn toàn miễn phí, mã nguồn mở, hoạt động ổn định trên máy tính cấu hình thấp, và có tính bảo mật cao Việc sử dụng thành thạo HĐH Linux hỗ trợ tốt cho công việc như quản trị mạng và lập trình viên, đồng thời giúp người dùng linh hoạt hơn trong công việc Đó là lý do tôi chọn đề tài "Quản Trị Hệ Điều Hành Linux" cho tiểu luận môn học của mình.
Mục tiêu nghiên cứu
- Tìm hiểu về HĐH Linux
- Tìm hiểu về bản phân phối CentOS 7 của Linux
- Tìm hiểu một số dịch vụ mạng trên Linux
- Cài đặt và cấu hình DHCP Server trên CentOS 7.
Phạm vi nghiên cứu
- Phạm vi không gian: đề tài nghiên cứu được thực hiện và thực hành dựa trên bản phân phối CentOS 5.6 của Linux
- Phạm vị thời gian: đề tài nghiên cứu được thực hiện trong tháng 10/2021.
CƠ SỞ LÝ THUYẾT
Tổng quan về hệ điều hành Linux
2.1.1 Lịch sử phát triển của Linux
Linux là hệ điều hành mã nguồn mở quan trọng mà lập trình viên cần nắm vững Nó quản lý phần cứng và tài nguyên hệ thống như CPU, bộ nhớ và lưu trữ, hoạt động như cầu nối giữa ứng dụng và phần cứng Tương tự như Windows, iOS và Mac OS, Linux cũng là một hệ điều hành Đặc biệt, hệ điều hành Linux là nền tảng cho một trong những hệ điều hành phổ biến nhất hiện nay, đó là Android.
- Ngày 5/4/1991, Linus Torvalds, chàng sinh viên 21 tuổi của trường Đại học Helsinki, Phần Lan đã bắt tay vào viết những dòng lệnh đầu tiên của Linux
Vào tháng 8 năm 1991, Linus Torvalds đã công bố thông điệp nổi tiếng về sự ra đời của hệ điều hành Linux, trong đó ông cho biết: “Tôi đang làm một hệ điều hành miễn phí, chỉ làm theo sở thích và sẽ không lớn và chuyên nghiệp.” Torvalds không thể ngờ rằng Linux sẽ đạt được thành công vượt bậc như ngày hôm nay.
- Tháng 9/1991, phiên bản Linux 0.01, phiên bản Linux đầu tiên được Torvalds công bố, với 10.239 dòng lệnh Phiên bản 0.02 được ra mắt 1 tháng sau đó
Năm 1992, Torvalds đã có một quyết định quan trọng khi phát hành Linux dưới dạng mã nguồn mở theo giấy phép GPL, cho phép mọi người tải về và xem mã nguồn để cùng nhau phát triển Quyết định này đã góp phần lớn vào sự phổ biến của Linux ngày nay.
Slackware, hệ điều hành đầu tiên phát triển dựa trên mã nguồn Linux, ra đời vào năm 1993 Đây là một trong những hệ điều hành Linux lâu đời nhất và vẫn được duy trì cho đến nay Phiên bản mới nhất của Slackware đã được công bố vào tháng 5/2010.
Vào ngày 14 tháng 3 năm 1994, sau ba năm nỗ lực không ngừng, Linus Torvalds đã ra mắt phiên bản hoàn thiện đầu tiên của hệ điều hành Linux 1.0, bao gồm 176.250 dòng lệnh Chỉ một năm sau, phiên bản 1.2 được phát hành với sự nâng cấp lên tới 310.950 dòng lệnh.
- Ngày 3/11/1994, Red Hat Linux, phiên bản 1.0 được giới thiệu Đây là một trong những hệ điều hành được thương mại hóa đầu tiên dựa trên Linux
Vào năm 1996, Linus Torvalds đã đến thăm một công viên hải dương học, nơi ông quyết định chọn hình ảnh chú chim cánh cụt làm biểu tượng chính thức cho hệ điều hành Linux.
Năm 1998, Linux thu hút sự chú ý và đầu tư từ các công ty công nghệ lớn, đặc biệt là IBM, với khoản đầu tư lên tới hàng tỉ USD để phát triển dịch vụ và phần mềm trên nền tảng này, cùng đội ngũ phát triển hơn 300 nhân viên Ngoài IBM, các công ty như Compaq và Oracle cũng bắt đầu tham gia vào việc đầu tư và phát triển Linux.
- Năm 2005, Linus Torvalds được xuất hiện trên trang bìa của tạp chí về kinh tế BusinessWeek, với câu chuyện về sự thành công của hệ điều hành Linux
- Năm 2007, hàng loạt hãng sản xuất máy tính lớn như HP, ASUS, Dell, Lenovo bắt đầu bán ra các sản phẩm laptop được cài đặt sẵn Linux
Tính đến nay, Linux đã phát triển thành nhiều biến thể và phiên bản khác nhau, được xây dựng bởi các công ty phần mềm và cá nhân Trong số đó, hệ điều hành di động Android của Google nổi bật, hiện đang là một trong những hệ điều hành phổ biến nhất trên thế giới.
Tính đến tháng 1/2009, số lượng người dùng Linux đã đạt 10 triệu trên toàn cầu Sau 20 năm phát triển, Linux hiện nay được sử dụng rộng rãi trên nhiều thiết bị, từ máy tính cá nhân và máy chủ cho đến điện thoại di động, máy nghe nhạc, máy tính bảng, máy ATM và cả siêu máy tính.
Từ phiên bản đầu tiên với hơn 10.000 dòng lệnh, Linux 2.6.38 đã được phát hành vào ngày 14/3/2011, đánh dấu 20 năm phát triển với 14.294.493 dòng lệnh Ngày nay, Linux không chỉ là biểu tượng của sự chia sẻ cộng đồng mà còn được phát triển và hỗ trợ hoàn toàn miễn phí Nó được xem là đối thủ của Windows (Microsoft), khi nhiều người cho rằng Microsoft chỉ tập trung vào lợi nhuận.
2.1.2 Ưu nhược điểm của hệ điều hành Linux
Linux là hệ điều hành miễn phí, cho phép người dùng truy cập mà không phải trả phí bản quyền Điều này có nghĩa là mọi người có thể sử dụng, chỉnh sửa và xem tất cả các dòng mã nguồn của Linux mà không tốn chi phí nào.
Hệ điều hành Linux nổi bật với tính bảo mật cực cao, giúp người dùng yên tâm không lo mất tệp hay file do virus hay mã độc tấn công, vì những mối đe dọa này không thể hoạt động trên nền tảng này Chính vì vậy, bảo mật được xem là điểm mạnh hàng đầu của Linux.
Linux mang lại khả năng thao tác dễ dàng và tính linh hoạt cao, cho phép người dùng tự do chỉnh sửa mọi thứ theo ý muốn mà không cần sự hỗ trợ từ bên ngoài Điều này đặc biệt phù hợp cho các lập trình viên và nhà phát triển, giúp họ tối ưu hóa quy trình làm việc của mình.
Máy tính cấu hình yếu vẫn có thể chạy Linux, vì hệ điều hành này không yêu cầu nâng cấp phần cứng khi cập nhật phiên bản mới Dù là máy tính yếu hay mạnh, người dùng vẫn nhận được sự hỗ trợ và nâng cấp thường xuyên, đảm bảo hiệu suất hoạt động luôn trơn tru và ổn định.
Các ứng dụng hỗ trợ trên Linux hiện vẫn còn hạn chế và chưa phong phú như trên Windows Mặc dù Linux có những phần mềm tương tự như OpenOffice thay thế cho MS Office và GIMP thay thế cho Photoshop, nhưng chất lượng của các sản phẩm này chưa thể so sánh với những ứng dụng được phát triển cho Windows.
- Với Linux có một số nhà sản xuất lại không phát triển driver hỗ trợ
Một số lưu ý khi cài đặt HĐH Linux
Linux không yêu cầu cấu hình máy tính mạnh mẽ, nhưng nếu phần cứng quá yếu, có thể không chạy được Xwindows hoặc các ứng dụng có sẵn Cấu hình tối thiểu cho Linux nên được đảm bảo để đảm bảo hoạt động hiệu quả.
- CPU: Pentium MMX trở lên
- 8MB cho card màn hình đồ họa
2.2.2 Quản lý ổ đĩa và partition trong Linux
Linux sử dụng cơ chế truy xuất ổ đĩa thông qua tập tin Mỗi ổ đĩa được gán với
Trong thư mục /dev/, các thiết bị lưu trữ được ký hiệu như sau: ổ mềm là fd, ổ cứng là hd, và ổ SCSI là sd, với các ký tự a, b, c, g để phân biệt các ổ khác nhau cùng loại Đối với hệ điều hành Linux, ít nhất cần có hai phân vùng (partition) để hoạt động hiệu quả.
- Partition chính chứa thư mục gốc (/) và hạt nhân (gọi là Linux Native Partition)
Partition Swap là bộ nhớ đệm giúp chuyển đổi dữ liệu khi bộ nhớ chính (RAM) đầy Kích thước của vùng Swap phụ thuộc vào mức độ sử dụng ứng dụng của hệ thống Thông thường, kích thước của vùng Swap nên gấp đôi kích thước bộ nhớ chính để đảm bảo hiệu suất hoạt động tối ưu.
2.2.3 Các câu lệnh cơ bản trên Linux
Khi làm việc với các lệnh liên quan đến file và thư mục, bạn có thể sử dụng các ký tự đại diện để xác định tên file và thư mục Ví dụ, để liệt kê tất cả các file có đuôi c, bạn có thể sử dụng lệnh: ls *.c.
Ký tự đại diện * trong shell được sử dụng để thay thế cho tất cả các tên file có đuôi c Dưới đây là bảng liệt kê một số ký tự đại diện phổ biến thường được sử dụng.
* Tương ứng với thứ tự bất kỳ của một hay nhiều ký tự
? Tương ứng với một ký tự bất kỳ
[] Tương ứng với một trong những ký tự trong ngoặc hoặc giới hạn
^ Tương ứng với bắt đầu của một dòng
$ Tương ứng với kết thúc một dòng
\< Tương ứng với bắt đầu một từ
\> Tương ứng với kết thúc một từ
[^] Tương ứng với các ký tự bất kỳ không nằm trong ngoặc
\ Lấy ký hiệu theo sau dấu gạch ngược
Để tìm kiếm các dòng chứa chữ “foo” trong file data.txt, sử dụng lệnh: `grep foo data.txt` Nếu muốn tìm kiếm các dòng bắt đầu bằng từ “foo”, sử dụng lệnh: `grep '^foo' data.txt` Dấu trích dẫn đơn giúp giữ nguyên các ký tự đặc biệt trong shell Để tìm các dòng kết thúc bằng chuỗi “hello”, sử dụng: `grep 'hello$' data.txt` Để tìm kiếm từ bắt đầu bằng “ki”, sử dụng: `grep '\' data.txt` Lưu ý rằng dấu chấm trong biểu thức chính quy sẽ khớp với bất kỳ ký tự nào trừ dòng mới Để tìm các dòng chứa ký tự ‘C’ theo sau bởi hai ký tự và kết thúc bằng ký tự ‘s’, sử dụng: `grep 'C s' data.txt`.
Biểu thức tìm kiếm có thể bao gồm các mẫu như 'Cats', 'Cars' và 'Cris' nếu chúng có trong file data.txt Để xác định một dãy ký tự, bạn cần sử dụng dấu gạch nối để phân biệt ký tự bắt đầu và ký tự kết thúc Thứ tự ký tự phải tuân theo mã ASCII Ví dụ, để tìm tất cả các dòng chứa ký tự “B” theo sau bởi một ký tự thường, bạn sử dụng lệnh: grep ‘B[a-z]’ data.txt Bạn cũng có thể xác định nhiều giới hạn trong cùng một mẫu bằng cách sử dụng lệnh: grep ‘B[A-Za-z]’ data.txt.
* Các câu lệnh về thư mục và file
Lệnh cat được sử dụng để hiển thị nội dung của một file ra thiết bị đầu ra chuẩn, rất hữu ích cho việc kiểm tra nội dung file Để xem toàn bộ nội dung của một file, bạn chỉ cần sử dụng lệnh cat kèm theo tên file mà bạn muốn xem.
Cú pháp: cat file [>|>] [destination file] cat name Lệnh cat cũng cú thể trộn nhiều file ủang tồn tại vào một file: cat name1 name2 name3 > allnames
Ví dụ này minh họa cách kết hợp các file name1, name2 và name3 để tạo ra file cuối cùng allnames, với thứ tự được xác định theo thứ tự các file trên dòng lệnh Bằng cách sử dụng lệnh cat, chúng ta có thể thêm nội dung của một file vào file khác đã tồn tại Nếu bạn quên thêm name4 vào lệnh trước đó, bạn vẫn có thể đạt được kết quả mong muốn bằng cách thực hiện lệnh cat name4 > allnames, lệnh này sẽ bổ sung nội dung của file name4 vào allnames.
• Lệnh chmod: dùng để thay đổi quyền truy cập file hoặc thư mục
Cú pháp để thay đổi quyền truy cập cho file hoặc thư mục là: chmod [-R] permission-mode file hoặc thư mục Ví dụ, để thay đổi quyền cho file myscript.pl, bạn sử dụng câu lệnh chmod myscript.pl Để thay đổi quyền cho một thư mục cùng với tất cả các file và thư mục con bên trong, bạn có thể sử dụng câu lệnh chmod -R 744 public_html.
Lệnh chown được sử dụng để thay đổi quyền sở hữu của file hoặc thư mục Giá trị của tham số Group có thể là ID của nhóm người dùng hoặc tên nhóm người dùng được xác định trong file /etc/group.
Cú pháp để thay đổi quyền sở hữu file là: chown [ -fhR ] Owner [ :Group ] { file …| thư mục… } Chỉ có người dùng root mới có quyền thực hiện việc này Dưới đây là chi tiết về các tùy chọn có sẵn.
-f : ngăn chặn tất cả các thông báo lỗi trừ các thong báo sử dụng
-h: thay đổi quyền sở hữu của liên kết tượng trưng nhưng không thay đổi quyền sở hữu của file mà được chỉ đến bởi liờn kết tượng trưng ủú
-R: thay đổi quyền sở hữu của thư mục, các file và các thư mục con bên trong thư mục hiện tại được chỉ ra
• Lệnh clear: Xoá màn hình, trả lại dấu chắc dòng lệnh ở phía trên của màn hình clear
Lệnh cmp dùng để so sánh nội dung của hai file Nếu hai file giống nhau, lệnh sẽ kết thúc mà không hiển thị thông tin Sử dụng tùy chọn –l để nhận số byte và các giá trị khác nhau giữa hai file Tùy chọn –s không hiển thị gì mà chỉ trả về trạng thái tương đương giữa hai file: giá trị 0 cho biết các file giống hệt nhau, giá trị 1 nếu chúng khác nhau, và giá trị lớn hơn 1 nếu có lỗi xảy ra trong quá trình thực hiện lệnh.
Cú pháp: cmp [ -ls ] file1 file2
Lệnh cp trong hệ điều hành Unix/Linux cho phép bạn sao chép một file từ thư mục nguồn đến thư mục đích Để sao chép toàn bộ các file và thư mục con bên trong một thư mục, bạn cần sử dụng câu lệnh cp kèm theo tùy chọn -R.
Cú pháp: cp [ -R ] file_hoặc_thư_mục file_hoặc_thư_mục
Lệnh du là công cụ hữu ích để tổng kết việc sử dụng đĩa trong hệ thống Khi bạn chỉ định một thư mục cụ thể, lệnh này sẽ cung cấp thông tin chi tiết về dung lượng đĩa được sử dụng cho các thư mục đó.
Cú pháp: du [ -ask ] tên_file
- Tuỳ chọn –a sẽ đưa ra màn hình kích thước của mỗi thư mục và file
- Tuỳ chọn –s sẽ chỉ in ra tổng cộng
- Tuỳ chọn –k sẽ in ra tất cả các kích thước file theo kilobytes
• Lệnh file: Câu lệnh xác định kiểu của file Nếu file không phải là file thông thường, kiểu của file được xác định
• Lệnh find: Câu lệnh find tìm các file và các thư mục
Một số dịch vụ mạng trên Linux
Domain Name Service (DNS) is an essential internet service that translates IP addresses into fully qualified domain names (FQDN) of actual servers and vice versa.
Khi bạn mở trình duyệt web và nhập tên miền của một website, trình duyệt sẽ tự động truy cập vào trang đó mà không cần phải nhập địa chỉ IP Quá trình này giúp người dùng dễ dàng truy cập thông tin trực tuyến mà không cần nhớ các chuỗi số phức tạp.
Máy chủ DNS có nhiệm vụ "dịch" tên miền thành địa chỉ IP, giúp trình duyệt hiểu và truy cập vào website Các máy chủ DNS tương tác với nhau để thực hiện việc chuyển đổi địa chỉ này.
Người dùng chỉ cần ghi nhớ "tên" thay vì địa chỉ IP, vì địa chỉ IP thường là những chuỗi số khó nhớ.
Phân loại domain name server
Tên miền riêng (Primary Name Server): Mỗi một máy chủ tên miền có một tên miền riêng Tên miền riêng này được đăng ký trên Internet
Tên miền dự phòng, hay còn gọi là tên miền thứ hai (Secondary name server), là một DNS Server được thiết lập để thay thế cho Primary name server Nó thực hiện việc sao lưu tất cả các bản ghi dữ liệu từ Primary name server Khi Primary name server gặp sự cố, tên miền dự phòng sẽ đảm nhận vai trò phân giải và ánh xạ tên miền với địa chỉ IP, đảm bảo tính liên tục trong việc cung cấp dịch vụ.
Caching Name Server là một máy chủ có chức năng lưu trữ tất cả các tên miền và địa chỉ IP đã được phân giải và ánh xạ thành công Máy chủ này được sử dụng trong nhiều trường hợp khác nhau để cải thiện hiệu suất truy cập và giảm thời gian phản hồi của các yêu cầu DNS.
- Làm tăng tốc độ phân giải bằng cách sử dụng cache
- Giảm bớt gánh nặng phân giải tên máy cho các DNS Server
- Giảm lưu lượng tham gia vào mạng và giảm độ trễ trên mạng (rất quan trọng) 2.3.2 Dịch vụ DHCP
DHCP (Dynamic Host Configuration Protocol) là giao thức cấu hình động giúp giảm thời gian cấu hình mạng TCP/IP bằng cách tự động gán địa chỉ IP cho khách hàng khi họ kết nối Dịch vụ DHCP mang lại nhiều lợi ích cho người quản trị mạng, giúp giảm bớt lo lắng về các vấn đề phát sinh từ việc khai báo cấu hình thủ công Tổng quan, DHCP là một công cụ quan trọng trong việc quản lý và duy trì mạng TCP/IP hiệu quả.
- Tập trung quản trị thông tin về cấu hình IP
- Cấu hình động các máy
- Cấu hình IP cho các máy một cách liền mạch
Máy chủ DHCP cung cấp địa chỉ IP cho các máy tính trong mạng, giúp giảm thiểu công việc cấu hình cho doanh nghiệp Tất cả địa chỉ IP của các thiết bị được lưu trữ trong cơ sở dữ liệu trên máy chủ, đảm bảo quản lý hiệu quả và dễ dàng.
Một máy chủ DHCP có thể cài đặt cấu hình và sử dụng theo hai phương pháp:
Phương pháp xác định vùng địa chỉ trong DHCP yêu cầu xác định một phạm vi địa chỉ IP mà server cung cấp cho khách hàng Khi một DHCP Client không còn hoạt động trên mạng trong một khoảng thời gian nhất định, cấu hình địa chỉ IP sẽ hết hạn Khi client quay trở lại, nó sẽ nhận được địa chỉ IP mới thông qua dịch vụ DHCP.
Địa chỉ MAC là một phương pháp cần sử dụng dịch vụ DHCP để xác định địa chỉ phần cứng duy nhất của từng card mạng kết nối với mạng Phương pháp này cho phép cung cấp liên tục một cấu hình DHCP mỗi khi khách hàng yêu cầu, qua đó tạo ra một trình phục vụ DHCP bằng cách sử dụng các thiết bị mạ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:
Khi máy Client khởi động, nó gửi gói tin DHCP DISCOVER để yêu cầu một DHCP Server phục vụ Gói tin này bao gồm địa chỉ MAC của client Nếu không nhận được phản hồi sau 4 lần truy vấn, client sẽ tự động tạo ra một địa chỉ IP riêng trong dãy địa chỉ IP tạm thời Đồng thời, client vẫn tiếp tục phát tín hiệu broadcast mỗi 5 phút để xin cấp IP từ DHCP Server.
Khi máy Client gửi yêu cầu DHCP, các máy Server trên mạng sẽ phản hồi bằng cách gửi gói tin DHCP OFFER nếu còn khả năng cung cấp địa chỉ IP Gói tin này sẽ đề nghị cho thuê một địa chỉ IP trong một khoảng thời gian nhất định, kèm theo Subnet Mask và địa chỉ của Server Trong suốt thời gian thương thuyết, Server sẽ không cấp phát địa chỉ IP mà đã đề nghị cho Client.
Trong bước 3, máy Client sẽ chọn một lời đề nghị DHCPOFFER và gửi gói tin DHCPREQUEST dưới dạng broadcast để chấp nhận lời đề nghị đó Hành động này cho phép các lời đề nghị không được chấp nhận được các Server thu hồi và sử dụng để cấp phát cho các Client khác.
Khi Client chấp nhận địa chỉ IP từ máy Server, nó sẽ nhận được một gói tin DHCP ACK, xác nhận thông tin về địa chỉ IP, Subnet Mask và thời hạn sử dụng Đồng thời, Server cũng cung cấp các thông tin bổ sung như địa chỉ Gateway mặc định và địa chỉ DNS Server.
Các hệ thống Linux sử dụng giao thức TCP/IP để kết nối mạng, trong khi hệ điều hành Microsoft dựa vào giao thức Server Message Block (SMB) kết hợp với NetBIOS để chia sẻ tài nguyên trong mạng cục bộ Để kết nối với các mạng lớn, bao gồm cả hệ thống Unix, Microsoft phát triển Common Internet File System (CIFS), vẫn dựa trên SMB và NetBIOS Samba, một phiên bản của SMB, cho phép các hệ thống Unix và Linux kết nối với mạng Windows, sử dụng tài nguyên từ hệ thống Windows và chia sẻ tài nguyên của mình với máy tính Windows.
CÀI ĐẶT VÀ CẤU HÌNH DHCP SERVER TRÊN CENTOS 7
DHCP server
Một DHCP server bao gồm bốn mục chính sau:
- Options: các thông tin như địa chỉ IP, địa chỉ Subnet Mask, địa chỉ Gateway, địa chỉ DNS,… sẽ được DHCP Server cung cấp đầy đủ thông tin
Một dãy địa chỉ IP được quy hoạch và chỉ định cho DHCP Server cho phép cấp phát IP động cho các máy tính client thông qua giao thức DHCP.
- Reservation: là những thông tin địa chỉ IP đã được “để dành”, tức cấu hình sẵn địa chỉ IP đó cho một số loại máy tính client
- Lease: Thời gian “cho thuê” hoặc tồn tại của địa chỉ IP động đối với mỗi máy client.
Mô hình lab dịch vụ DHCP Server trên CentOS 7
Để cấu hình IP tĩnh cho DHCP Server trên CentOS 7, trước tiên cần xác định các thông số mạng Theo thông tin đã cung cấp, DHCP Server sẽ sử dụng địa chỉ IP “172.16.10.0”, với Subnet Mask là “255.255.255.0” và Gateway là “172.16.10.254”.
Cài đặt chương trình dịch vụ DHCP Server trên CentOS 7
Cài đặt gói chương trình DHCP với lệnh “yum“
Hình 3.1 Cài đặt gói chương trình DHCP với lệnh “yum“
Kiểm tra xem gói chương trình “dhcp” đã được cài đặt hay chưa ? Nếu ra các gói “dhcp-*” như dưới đây, tức là đã cài đặt rồi
To configure the DHCP service to start automatically with the system on CentOS, you need to identify the DHCP daemon, which is named "dhcpd." The installed packages related to DHCP can be verified using the command `rpm -qa | grep dhcp`, which will show the versions of the DHCP service and its libraries, such as dhcp-4.2.5-58.el7.centos.x86_64, dhcp-libs-4.2.5-58.el7.centos.x86_64, and dhcp-common-4.2.5-58.el7.centos.x86_64.
Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service to /usr/lib/systemd/system/dhcpd.service
Cấu trúc các file/thư mục của dịch vụ DHCP Server mà bạn cần biết:
/etc/dhcp/dhcpd.conf : file cấu hình dịch vụ DHCP
/var/lib/dhcpd/dhcpd.leases : file chứa thông tin các IP động đang cấp qua DHCP
/var/log/message : log mặc định chứa quá trình DHCP 4 bước.
Cấu hình dịch vụ DHCP
Đầu tiên bạn có thể copy file cấu hình config mẫu sẵn có để sử dụng cho cấu hình dịch vụ DHCP
The configuration file for the DHCP Server on CentOS can be found at a specific path It's important to copy the sample config file provided for setting up the DHCP service.
Hình 3.3 File cấu hình DHCP Server trên CentOS nằm ở đường dẫn
Tiến hành cấu hình DHCP nào File cấu hình dịch vụ DHCP sẽ gồm 2 phần cơ bản:
- Cấu hình toàn cục (global) : quy định những thông tin giá trị mặc định cho các khai báo lớp mạng (subnet) cấp phát ip động DHCP
- Cấu hình lớp mạng cấp phát IP động DHCP: quy định những giá trị thông tin cho việc cấp phát IP động thông qua DHCP
Hình 3.4 Nội dung cấu hình mẫu của DHCP Server Option domain-name: khai báo tên miền lớp mạng chung
Option domain-name-server: khai báo Name Server của domain bạn đã cung cấp ở trên
Default-lease-time: thời gian mặc định một IP DHCP tồn tại được cấp phát cho người dùng
Max-lease-time: thời gian tối đa một IP DHCP tồn tại được cấp phát cho người dùng
Lease-file-name: chỉ định file chứa thông tin về địa chỉ IP đã được cấp phát qua DHCP
If this DHCP service server is the official DHCP Server for internal networks, this configuration will designate it as the master DHCP server, helping to prevent unauthorized servers.
Một số config khác dành cho khai báo cấu hình toàn cục DHCP Server
- Allow [bootp]: cho phép phản hồi với các gói tin query BOOTP
- Deny [leasequery]: không trả lời các gói tin DHCPLEASEQUERY, gói tin này nhằm gia hạn thời gian sử dụng IP DHCP cấp khi sắp hết hạn sử dụng
- Ignore [client-updates]: từ chối các request cập nhật Dynamic DNS
*Cấu hình DHCP – Khai báo mạng cấp phát DHCP:
Cấu hình lớp mạng và dải IP là yếu tố quan trọng trong việc cấp phát IP qua DHCP Ví dụ, mạng nội bộ được thiết lập với địa chỉ 172.16.10.0/24, trong khi dải IP cấp phát từ 172.16.10.150 đến 172.16.10.200 Ngoài ra, bạn có thể dễ dàng cấu hình nhiều "subnet" trong file cấu hình DHCP để đáp ứng nhu cầu mạng của mình.
Hình 3.5 Cấu hình lớp mạng và dãi IP được sử dụng để cấp phát IP DHCP
- Range : ip_1 là điểm bắt đầu và ip_2 là điểm kết thúc
- Option subnet-mask: thông tin subnet mask của mạng IP được cấp phát
- Option routers: cung cấp thông tin địa chỉ IP của router gateway mà client sẽ sử dụng khi nhận IP DHCP
- Option broadcast-address: cung cấp thông tin broadcast của lớp mạng mà client sẽ nhận IP sử dụng
- Option domain-name-servers: cung cấp thông tin DNS Server cho client
Thời gian mặc định một địa chỉ IP DHCP được cấp phát cho người dùng, gọi là default-lease-time, sẽ được áp dụng riêng cho từng cấu hình “subnet” và không bị ảnh hưởng bởi giá trị cấu hình “global”.
Thời gian tối đa cho phép một địa chỉ IP DHCP được cấp phát cho người dùng, gọi là max-lease-time, là một yếu tố quan trọng trong cấu hình mạng Giá trị này, khi được thiết lập trong cấu hình "subnet", sẽ được áp dụng riêng biệt so với giá trị trong cấu hình "global".
*Khởi động dịch vụ DHCP trên CentOS
Hình 3.6 Khởi động dịch vụ DHCP trên CentOS.
Cấp IP DHCP cho 1 host cụ thể
Để gán một địa chỉ IP cố định cho một máy tính cụ thể trong mạng, bạn cần thông tin địa chỉ MAC của máy tính đó trên DHCP Server chạy CentOS Khi máy tính client yêu cầu địa chỉ IP từ DHCP, server sẽ dựa vào địa chỉ MAC được cấu hình trong file mẫu để cấp phát địa chỉ IP nằm trong giá trị “fixed-address”.
Trên máy chủ dịch vụ DHCP Server trên CentOS, thì file
File ‘/var/lib/dhcpd/dhcpd.leases’ lưu trữ toàn bộ thông tin về các địa chỉ IP được cấp phát cho máy tính client Nếu file này không tồn tại, DHCP Server sẽ không hoạt động Do đó, hãy kiểm tra sự hiện diện của file này trên máy chủ DHCP; nếu chưa có, hãy tạo file bằng cách thực hiện các bước cần thiết.
# touch /var/lib/dhcp/dhcpd.leases
# chown dhcpd:dhcpd /var/lib/dhcp/dhcpd.leases
# chmod 644 /var/lib/dhcp/dhcpd.leases
Vào “Control Panel > Network and Ethernet > Network and Sharing Center > Change Adapter Settings“
- Chuột phải vào biểu tượng card mạng bạn muốn cấp DHCP IP, chọn
“Properties“ Chọn “Internet Protocol Version 4 (TCP/IP) > Properties“
To obtain an IP address automatically on a Windows computer, select the option "Obtain an IP Address automatically." This will prompt the system to perform a DHCP broadcast to request an IP address Alternatively, you can enter specific commands in the Command Prompt to achieve the same result.
Hình 3.7 Chọn “Obtain an IP Address automatically“