使用PXE技术实现网络安装系统

使用PXE技术实现网络安装系统

一、简介

要实现网络安装系统首先网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置,客户机的网卡支持 PXE 协议(集成 BOOTROM 芯片),且主板支持网络引导,实际上是硬件要求,目前绝大多数服务器和大多数 PC 都能够提供此支持,只需在 BIOS 设置中允许从 Network 或 LAN 启动即可;服务器通过 TFTP(Trivial File Transfer Protocol,简单文件传输协议)提供引导镜像文件的下载,配置安装时如何实现无人值守安装等。

1、PXE 原理和概念

1.1、概述

PXE是由 Intel 公司开发的网络引导技术,工作在 Client/Server 模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

PXE 严格来说并不是一种安装方式,而是一种引导的方式。

进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。

工作模式:

PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动。

协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。

运行 PXE 协议需要设置 DHCP 服务器 和 TFTP 服务器。DHCP 服务器用来给 PXE client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。

此外,在 PXE client 的 ROM 中,已经存在了 TFTP Client。PXE Client 通过 TFTP 协议到 TFTP Server 上下载所需的文件。

1.2、PXE优点

规模化:同时装配多台服务器;

自动化:安装系统、配置各种服务;

远程实现:不需要光盘、U 盘等安装介质

PXE组件及过程分析

需要哪些服务组件?

DHCP服务,分配IP地址、定位引导程序

TFTP服务,提供引导程序下载

HTTP服务(或FTP/NFS),提供yum安装源

客户机应具备的条件

网卡芯片必须支持PXE协议

主板支持从网卡启动

安装软件包生成的pxclinux.0时默认生成的就是这个名称,在dhcp中调用时也调用这个名称。

2、搭建DHCP:

2.1、DHCP概述及原理

Dynamic Host Configuration Protocol

动态主机配置协议,由 IETF (Internet 网络工程师任务小组)组织制定,用来简化主机地址分配管理

主要分配以下入网参数

IP地址/子网掩码/广播地址

默认网关地址、DNS服务器地址

DHCP地址分配的四次会话

DISCOVERY --> OFFER --> REQUEST-->ACK

服务端基本概念

租期:允许客户机租用IP地址的时间期限,单位为秒

作用域:分配给客户机的IP地址所在的网段

地址池:用来动态分配的IP地址的范围

2.2、配置主机环境

(1)、关闭selinux,以及关闭防火墙

[root@localhost ~]# setenforce 0

[root@localhost ~]# sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

[root@localhost ~]# systemctl stop firewalld && systemctl disable firewalld

(2)、设置主机名

[root@localhost ~]# hostnamectl set-hostname PXE-Server

2.3、安装DHCP服务和配置

(1)、安装

[root@pxe-server ~]# yum install dhcp -y

(2)、配置DHCP服务

查看dhcp的配置文件,只有以下的内容,但内容中提示有DHCP示例配置文件路径:

使用vi编辑器打开dhcp配置文件,然后将示例配置文件读入当前的dhcp的配置文件,操作方法输入冒号和r 后面跟上示例配置文件的路径,写法为 :r /usr/share/doc/dhcp*/dhcpd.conf.example

[root@pxe-server ~]# vi /etc/dhcp/dhcpd.conf

注意读入的位置就是光标所在的行,就是把其他文件的内容读入当前文件光标所在的开始写入。

DHCP的配置文件保留以下配置就可以:

# DHCP Server Configuration file.

# see /usr/share/doc/dhcp*/dhcpd.conf.example

# see dhcpd.conf(5) man page

#

subnet 172.16.0.0 netmask 255.255.255.0 {

range 172.16.0.100 172.16.0.200;

option domain-name-servers 172.16.0.9;

option routers 172.16.0.9;

default-lease-time 600;

max-lease-time 7200;

}

在DHCP的配置文件中还必须使用next-server参数指定下一个服务器,继续完成网络安装系统的其他步骤,就是到下一个服务器找一个引导文件,文件就叫"pxelinux.0",并使用filename参数指定引导文件的文件名,所以在DHCP的配置文件在增加以下内容:

next-server 172.16.0.9 //指定PEX服务器

filename "pxelinux.0" //引导文件名

完整配置如下:

# DHCP Server Configuration file.

# see /usr/share/doc/dhcp*/dhcpd.conf.example

# see dhcpd.conf(5) man page

#

subnet 172.16.0.0 netmask 255.255.255.0 {

range 172.16.0.100 172.16.0.200;

option domain-name-servers 172.16.0.9;

option routers 172.16.0.9;

default-lease-time 600;

max-lease-time 7200;

next-server 172.16.0.9; //指定PEX服务器

filename "pxelin

相关推荐