当前位置: 代码迷 >> 综合 >> 网络协议笔记:DHCP=》应用层协议,传输层使用UDP
  详细解决方案

网络协议笔记:DHCP=》应用层协议,传输层使用UDP

热度:86   发布时间:2023-12-24 19:11:27.0

1、操作系统启动的过程: 
(1)首先,启动BIOS,这是一个特别小的小系统,它读取硬盘的MBR启动扇区,将GRUB启动起来; 
(2)然后将权力交给GRUB,GRUB加载内核、加载作为根文件系统的initramfs文件; 
(3)然后将权力交给内核; 
(4)最后内核启动,初始化整个操作系统。

注:BIOS会依据用户的设置去取得能够开机的硬盘,并且到该硬盘里面去读取第一个扇区中的主引导分区(Master Boot Record,MBR)位置。MBR这个仅有446bytes的硬盘容量里面会放置最基本的引导加载程序(Boot loader)

推荐好的博客给大家 参考:https://www.cnblogs.com/lifeinsmile/p/4245261.html 
2、DHCP的过程(动态主机配置协议) 
看王道 
DHCP Discover:新来的机器使用 IP 地址 0.0.0.0 发送了一个广播包,广播包封装到UDP里面。 
DHCP Offer:DHCP Server 仍然使用广播地址作为目的地址,分配可用IP以及子网掩码、网关等信息。 
新来的机器向网络发送一个 DHCP Request 广播数据包,仍然使用 0.0.0.0 为源 IP 地址。 
当 DHCP Server 接收到客户机的 DHCP request 之后,会广播返回给客户机一个 DHCP ACK消息包。

注意:新的机器使用的是0。0。0。0的IP地址发送广播包,目的地址255。255。255。255,且广播包封装在 UDP 里面. 
3、DHCP与PXE协议 
(1)预启动执行环境(Pre-boot Execution Environment):即使用DHCP安装操作系统。 
(2)PXE 协议分为客户端和服务器端,由于还没有操作系统,只能先把客户端放在 BIOS 里面。当计算机启动时,BIOS 把 PXE 客户端调入内存里面,就可以连接到服务端做一些操作了。 
(3)首先,PXE 客户端自己也需要有个 IP 地址。因为 PXE 的客户端启动起来,就可以发送一个 DHCP 的请求,让 DHCP Server 给它分配一个地址。 
(4)DHCP Server 除了分配 IP 地址以外,还可以做一些其他的事情:配置 next-server,指向 PXE 服务器的地址,另外要配置初始启动文件 filename。 
PXE 客户端启动之后,发送 DHCP 请求之后,除了能得到一个 IP 地址,还可以知道 PXE 服务器在哪里,也可以知道如何从 PXE 服务器上下载某个文件,去初始化操作系统。 
4、PXE的工作过程 
(1)首先,启动 PXE 客户端。第一步是通过 DHCP 协议向 DHCP Server发送请求。DHCP Server 便租给它一个 IP 地址,同时也给它 PXE 服务器的地址、启动文件 pxelinux.0。

(2)其次,PXE 客户端去 PXE 服务器下载这个文件,初始化机器,下载的时候使用的是 TFTP 协议。所以 PXE 服务器上,往往还需要有一个 TFTP 服务器。PXE 客户端向 TFTP 服务器请求下载这个文件。

(3)然后,PXE 客户端收到这个文件后,就开始执行这个文件。这个文件会指示 PXE 客户端,向 TFTP 服务器请求计算机的配置信息 pxelinux.cfg。TFTP 服务器会给 PXE 客户端一个配置文件,里面有内核、initramfs的位置。PXE 客户端会请求这些文件。

(4)最好,启动 Linux 内核。一旦启动了操作系统,以后就啥都好办了。
 

  相关解决方案