✨Giao thức Bootstrap

Giao thức Bootstrap

Giao thức Bootstrap hay giao thức BOOTP là một giao thức Internet protocol được sử dụng để gán một địa chỉ IP và một loạt các tham số bổ sung cho một máy tính trong mạng TCP/IP.

Ví dụ, BOOTP được sử dụng để thiết lập địa chỉ mạng của thiết bị đầu cuối và các máy trạm không đĩa cứng, mà hệ điều hành của chúng lấy từ một máy chủ khởi động (boot server thí dụ như DHCP server). Việc truyền tải chương trình hoạt động sau đó thường được thực hiện thông qua TFTP. Ngoài ra, một số thiết bị ngoại vi, chẳng hạn như máy in mạng, có thể sử dụng BOOTP để xác định địa chỉ IP và cấu hình mạng (subnet/gateway).

Trước đây, RARP được sử dụng để xác định địa chỉ IP cho các thiết bị không đĩa cứng. Trái ngược với RARP, chỉ chuyên cung cấp địa chỉ IP, BOOTP có nhiều tham số bổ sung, đặc biệt là mặt nạ mạng con, Gateway và máy chủ khởi động. Tuy nhiên, để cấu hình các máy trạm và máy tính cá nhân, nó vẫn chưa đủ, bởi vì các thiết đặt bổ sung như máy in, máy chủ thời gian và những thứ khác là cần thiết. Giao thức cấu hình động máy chủ (DHCP) là một mở rộng của BOOTP. DHCP cung cấp chức năng cơ bản của BOOTP, nó còn, ví dụ, cho phép giới hạn thời gian của việc gán địa chỉ IP ("lease"). Giao thức BOOTP được định nghĩa trong RFC 951.

Hoạt động một máy trạm không có đĩa cứng

BOOTP cho phép một máy trạm 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.

Quá trình hỏi đáp BOOTP

Yêu cầu BOOTP (request) bao gồm yêu cầu của thiết bị và phản hồi của máy chủ.

Yêu cầu BOOTP

Khi thiết bị được cho chạy, nó không biết địa chỉ IP của nó hoặc máy chủ BOOTP. Yêu cầu khởi động (boot request) được gửi. Đây là một gói UDP bình thường. Địa chỉ 0.0.0.0 được sử dụng làm người gửi vì không có gì khác được biết. Địa chỉ của người nhận là 255.255.255.255, được hiểu là phát sóng (Broadcast) trong mạng riêng của nó, vì client BOOTP không biết địa chỉ cục bộ của chuỗi mạng.

Yêu cầu khởi động từ máy khách (client) luôn được gửi tới cổng đích 67 (máy chủ BOOTP). Sau đó, máy khách lắng nghe trên cổng 68 (BOOTP client), mà một đáp ứng (boot reply) được gửi đi.

Không phải mỗi kết nối IP đều có hai cổng dành riêng được sử dụng như trong trường hợp này. Hầu hết các giao thức sử dụng một số cổng ngẫu nhiên như là cổng ra (cổng của máy khách). Các phản hồi của máy chủ cũng dự kiến ​​xảy ra trên cổng này. Đối với BOOTP, điều này có thể sẽ không thực hiện được vì phản hồi của máy chủ BOOTP (Bootreply) không nhất thiết phải được gửi đến một địa chỉ đích cụ thể, mà được phát sóng tới tất cả các trạm trong mạng con riêng của nó. Nếu không có số cổng cố định được sử dụng, có thể máy khách khác đang lắng nghe trên cùng một cổng nhưng mong đợi điều gì đó khác.

Với yêu cầu khởi động (boot request), máy khách sẽ gửi một số thông tin về chính nó: Quan trọng nhất là địa chỉ phần cứng của card mạng (địa chỉ MAC). Đây là tính năng nhận dạng duy nhất của trạm. Máy khách cũng tạo ra một con số ngẫu nhiên 4 byte, mà phải xuất hiện lại trong boot reply. Hơn nữa, một bộ đếm thời gian được cung cấp để tính toán máy khách đã chờ đợi trong bao lâu boot reply của nó.

Phản hồi BOOTP

Nếu máy chủ BOOTP nhận được yêu cầu hợp lệ trên cổng tương ứng, trước tiên nó sẽ xem xét địa chỉ MAC. Địa chỉ MAC từ yêu cầu được so sánh với cơ sở dữ liệu trong đó các địa chỉ IP được gán với các địa chỉ MAC. Nếu một mục nhập được tìm thấy cho yêu cầu, máy chủ sẽ gửi phản hồi (boot reply). Thông thường, phản hồi chỉ đơn giản được gửi dưới dạng broadcast, nhưng cũng có thể hoạt động theo bảng ARP của máy chủ. Tuy nhiên, nhân hệ điều hành phải cung cấp khả năng này.

Nếu phản hồi được gửi dưới dạng broadcast, nó sẽ chứa các thông tin sau:

  • Địa chỉ phần cứng của máy khách. Máy khách mong đợi một phản hồi với địa chỉ phần cứng của nó để nhận ra rằng gói tin là dành cho nó.
  • Số ngẫu nhiên được tạo ra bởi máy khách trong yêu cầu.
  • Địa chỉ IP của máy khách.

Các tham số sau là tùy chọn và chỉ được truyền nếu máy chủ BOOTP được cấu hình cho phù hợp:

  • Địa chỉ IP và tên máy chủ của máy chủ boot. Từ đó, một hệ điều hành có thể được nạp thông qua TFTP trong bước tiếp theo.
  • Tên và đường dẫn đến tệp khởi động. Tệp khởi động chứa nhân hệ điều hành, mà sau đó được truyền tải bằng TFTP.
  • Tên của thư mục sẽ được sử dụng như phần vùng gốc (/) của nhân hệ điều hành thông qua NFS.

Máy khách BOOTP lắng nghe trên cổng đã cho và chờ đợi phản hồi từ máy chủ. Nếu nó nhận được một gói tin, địa chỉ MAC được so sánh với địa chỉ MAC của nó, cũng như số ngẫu nhiên với con số được gởi đến. Nếu máy khách nhận ra phản hồi, địa chỉ IP được gán cho giao diện mạng.

👁️ 106 | 🔗 | 💖 | ✨ | 🌍 | ⌚
**Giao thức Bootstrap** hay **giao thức BOOTP** là một giao thức Internet protocol được sử dụng để gán một địa chỉ IP và một loạt các tham số bổ sung cho một máy tính trong
**Dynamic Host Configuration Protocol** (**DHCP** - giao thức cấu hình động máy chủ) là một giao thức cho phép cấp phát địa chỉ IP một cách tự động cùng với các cấu hình liên quan
**Tầng ứng dụng** (tiếng Anh: Application layer) là tầng thứ bảy trong bảy tầng cấp của mô hình OSI. Tầng này giao tiếp trực tiếp với các tiến trình của ứng dụng và thi hành
GS - TS Nguyễn Văn Tuấn là giám đốc Chương trình Nghiên cứu di truyền dịch tễ học và loãng xương thuộc Viện nghiên cứu Y khoa Garvan, Australia. Ông hiện là Giáo sư Y khoa của Đại học New South Wales, Giáo
- Giảng dạy được một trong các môn theo giáo trình CNTT như C, HTML/CSS, MS SQL, Framework Laravel, Java, Net.. - Soạn tài liệu giáo trình: Slide bài giảng, Labguide hướng dẫn thực hành, hướng
Những đột phá trong vật lý hiện đại – Từ hấp dẫn entropic đến siêu dẫn fractal Thế giới vật lý đang thay đổi nhanh hơn bao giờ hết. Những năm gần đây, chúng ta
**Apache Kafka** là một nền tảng theo kiến trúc phân tán cho phép lưu trữ sự kiện và xử lý dữ liệu luồng (streaming) mã nguồn mở được phát triển bởi Apache Software Foundation được
**Hệ điều hành** (tiếng Anh: Operating system, viết tắt: OS) là phần mềm hệ thống quản lý tài nguyên phần cứng máy tính, phần mềm và cung cấp các dịch vụ chung cho các chương
**Aptech** là một công ty giáo dục và đào tạo công nghệ thông tin với hơn 3500 trung tâm đào tạo tại 53 quốc gia (Theo nguồn thông tin của Aptech World Wide). Công ty
**William Turner Jr.** là một nhân vật giả tưởng và là nhân vật chính của dòng phim _Cướp biển vùng Ca-ri-bê_. Anh ấy xuất hiện trong các phần phim _The Curse of the Black Pearl_
**_Cướp biển vùng Caribbean: Nơi tận cùng thế giới_** (tựa gốc: **Pirates of the Caribbean: At World's End**) là một bộ phim hành động phiêu lưu hài hước của Mỹ năm 2007 và là phần
Thuyền trưởng **Hector Barbossa** là một nhân vật hư cấu trong loạt phim _Cướp biển vùng Caribbean_, được thể hiện bởi diễn viên người Úc Geoffrey Rush. Barbossa xuất hiện trong tất cả các bộ
**Vue.js**, gọi tắt là **Vue** (phát âm là /vjuː/, giống như view trong tiếng Anh), là một framework linh động dùng để xây dựng giao diện người dùng (user interfaces - UI). Khác với các
NỘI DUNG SÁCH “Python Và Ứng Dụng-Lập Trình Web” PHẦN 1: TỔNG QUAN VỀ THIẾT KẾ WEB GIỚI THIỆU CHƯƠNG 1: LẬP TRÌNH VỚI WEB 3   PHẦN 2: HƯỚNG DẪN SỬ DỤNG FLASK Phần 2 gồm 11 chương hướng dẫn bạn đọc khai thác và sử dụng Flask trong thiết kế Web CHƯƠNG 2: 40 CÂU HỎI ĐÁP VỚI THƯ VIỆN FLASK CHƯƠNG 3: THỰC HÀNH VỚI FLASK (CƠ BẢN) Bài tập 1: Chương trình Hello Word! Bài tập 2: Bắt đầu với dự án Headline đầu tiên. Bài tập 3: Sử dụng template trong dự án Headlines. Bài tập 1: Chương trình Hello Word! hướng dẫn người học cách thiết lập môi trường phát triển, thiết lập máy chủ web và viết ứng dụng Flask đầu tiên. Bài tập 2: Bắt đầu với dự án headlines hướng dẫn cách chạy code Python khi người dùng truy cập một URL và cách trả về dữ liệu cơ bản cho người dùng. Bạn đọc sẽ tìm hiểu cách tự động tìm nạp các headlines mới nhất bằng cách sử dụng nguồn cấp dữ liệu RSS. Bài tập 3: Sử dụng template trong dự án headlines: Giới thiệu các template Jinja và cách tích hợp các template này vào dự án Headlines. Các tác giả cũng sẽ hướng dẫn cách phục vụ các nội dung HTML động bằng cách chuyển dữ liệu từ code Python sang file template.   CHƯƠNG 4 - THÔNG TIN ĐẦU VÀO CỦA NGƯỜI DÙNG CHO DỰ ÁN HEADLINES: Chương này trình bày cách lấy thông tin đầu vào từ người dùng qua Internet và sử dụng thông tin đầu vào này để tùy chỉnh nội dung sẽ hiển thị cho người dùng. Bạn đọc sẽ tìm hiểu xét cách truy cập thông tin thời tiết hiện tại thông qua API JSON và đưa thông tin này vào dự án Headlines .   CHƯƠNG 5  - CẢI THIỆN TRẢI NGHIỆM NGƯỜI DÙNG TRONG DỰ ÁN HEADLINES: Chương này hướng dẫn cách thêm cookie vào dự án Headlinesđể ứng dụng có thể ghi nhớ các lựa chọn của người dùng. Bạn đọc cũng sẽ tạo kiểu cho ứng dụng bằng cách thêm một số CSS cơ bản.   CHƯƠNG 6 - XÂY DỰNG CRIME MAP TƯƠNG TÁC: Chương này giới thiệu một dự án mới là xây dựng một bản đồ tội phạm. Bạn sẽ học về cơ sở dữ liệu quan hệ, cài đặt MySQL trên máy chủ, và xem cách tương tác với cơ sở dữ liệu từ ứng dụng Flask.   CHƯƠNG 7 - THÊM GOOGLE MAPS VÀO DỰ ÁN CRIME MAP: Chương này hướng dẫn cách thêm tiện ích Google Maps và cách thêm và xóa điểm đánh dấu khỏi bản đồ dựa trên cơ sở dữ liệu. Bạn sẽ thêm một form HTML với nhiều thông tin đầu vào khác nhau cho người dùng để báo cáo tội phạm mới và hiển thị các tội phạm hiện có.   CHƯƠNG 8 - XÁC THỰC THÔNG TIN ĐẦU VÀO CỦA NGƯỜI DÙNG TRONG DỰ ÁN CRIME MAP: Chương này hướng dẫn cách thêm tính năng vào ứng dụng bản đồ tội phạm, để đảm bảo rằng, người dùng không thể phá vỡ đầu vào, dù là vô tình hay cố ý.   CHƯƠNG 9 - XÂY DỰNG ỨNG DỤNG WAITER CALLER: Chương này giới thiệu một dự án khác - Dự án ứng dụng gọi người phục vụ đến bàn tại nhà hàng. Bạn đọc sẽ tìm hiểu về Bootstrap và thiết lập hệ thống Kiểm soát tài khoản người dùng cơ bản sử dụng Bootstrap làm giao diện người dùng.   CHƯƠNG 10 - SỰ KẾ THỪA TEMPLATE VÀ WTFORMS TRONG DỰ ÁN WAITER CALLER: chương này giới thiệu các tính năng kế thừa template của Jinja để chúng ta có thể thêm các trang tương tự mà không cần code trùng lặp. Chúng ta sẽ sử dụng thư viện WTForms để làm cho việc xây dựng và xác thực các form web trở nên dễ dàng hơn.   CHƯƠNG 11 - SỬ DỤNG MONGODB VỚI DỰ ÁN WAITER CALLER: chương này giới thiệu cách cài đặt và định cấu hình MongoDB trên máy chủ và liên kết MongoDB với dự án WAITER CALLER. Bạn đọc cũng sẽ hoàn thành dự án cuối cùng bằng cách thêm các chỉ mục vào cơ sở dữ liệu và thêm một biểu tượng yêu thích vào ứng dụng.   CHƯƠNG 12: HƯỚNG DẪN SỬ DỤNG PYQT6 Giới thiệu PyQt6. Ngày và giờ trong PyQt6.
**Vốn tư nhân** ( **PE** ) là cổ phần trong một công ty tư nhân không chào bán cổ phiếu cho công chúng. Trong lĩnh vực tài chính, vốn cổ phần tư nhân được cung
**Mua lại thừa hưởng** (LBO) hay **mua lại đòn bẩy** là khi một công ty hoặc tài sản đơn lẻ (ví dụ, một bất động sản) được mua với một sự kết hợp vốn cổ
thumb|upright=2|Hình chụp màn hình [[FreeDOS cho thấy giao diện dòng lệnh với màn hình, cấu trúc thư mục và thông tin phiên bản.]] **DOS** (, ) là từ viết tắt độc lập với nền tảng
nhỏ|chip BIOS AMD27C256 **BIOS,** viết tắt của cụm từ "**Basic Input/Output System**" (tạm dịch: **Hệ thống nhập xuất cơ bản)** là chương trình được chạy đầu tiên khi máy tính cá nhân khởi động để
**Douglas "Doug" Carl Engelbart** (30 tháng 1 năm 1925 – 2 tháng 7 năm 2013) là một nhà phát minh Hoa Kỳ, một người tiên phong về Internet. Ông được biết đến nhiều nhất với
"Tôi rất hân hạnh giới thiệu đến các bạn một cuốn sách mới có tựa đề là "Mô hình hồi qui và khám phá khoa học" (có thể dịch sang tiếng Anh là "Regression models
Khi cạnh tranh trong nước và quốc tế ngày càng gia tăng, các công ty đang dựa vào công nghệ để tăng trưởng và phát triển hoạt động kinh doanh của mình.  Tại Việt Nam,
Khi cạnh tranh trong nước và quốc tế ngày càng gia tăng, các công ty đang dựa vào công nghệ để tăng trưởng và phát triển hoạt động kinh doanh của mình.  Tại Việt Nam,
Xin chào, tôi là một người đam mê công nghệ và mới chập chững bước vào thế giới Front-end Developer. Hành trình học tập ban đầu có vẻ như một mê cung với vô số
**Intel 4004** là bộ xử lý trung tâm (CPU) 4 bit do Intel phát hành vào năm 1971. Với giá 60 USD, nó là vi xử lý được sản xuất thương mại đầu tiên trên
Trong khoa học máy tính, **thiết bị khởi động** đôi khi còn có tên gọi không đầy đủ là **ổ khởi động** là một thiết bị có thể nhận lệnh (thông thường là từ hệ
Nội dung cuốn sách này là những vấn đề mới nhất trong vật lí xuất hiện trong các năm 2016, 2017 và 2018: hấp dẫn entropic và cảm ứng, vũ trụ Dirac-Milne, cách mạng nhiệt