因为需要网络引导系统的安装,所以需要安装和配置DHCP服务器。DHCP(Dynamic Host Configuration Protocol) 动态主机配置协议,它提供了一种动态指定IP地址和配置参数的机制 ;是一种用于简化主机 IP 配置管理的 IP 标准。

1. 工作原理 

DHCP 使用客户端/服务器模型,网络管理员建立一个 DHCP 服务器来为客户端分配IP,同时DHCP 服务器以地址租约的形式将该配置提供给发出请求的客户端。

工作顺序:

  ①发现阶段:客户机以广播方式发送DHCP discover报文来寻找DHCP服务器。

  ②提供阶段:DHCP服务器在网络中接收到DHCP discover报文后会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCP offer报文。

  ③选择阶段:如果有多台DHCP服务器向DHCP客户机发来的DHCP offer提供报文,则DHCP客户机只接受第一个收到的DHCP offer提供报文,然后它就以广播方式回答一个DHCP request请求报文,该报文中包含向它所选定的DHCP服务器请求IP地址的内容。

  ④确认阶段:DHCP服务器收到DHCP客户机回答的DHCP request请求报文之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCP ack确认报文,告诉DHCP客户机可以使用它所提供的IP地址。

  ⑤重新登录:以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现报文了, 而是直接发送包含前一次所分配的IP地址的DHCP request请求报文。

  ⑥更新租约:DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限 ,期满后DHCP服务器便会收回出租的IP地址。

2. DHCP服务器的简单配置

  测试用了两台电脑,都是CentOS7系统,并用交叉线相连。

  选择其中的一台主机作为DHCP服务机,另一台作为测试机子。

  需要达到的目的:

    DHCP主机的IP为: 192.168.100.1/24

    DHCP动态分配的IP范围为: 192.168.100.100/24 - 192.168.100.200/24

    DHCP客户端的网关设置为: 192.168.100.1

  2.1 安装DHCPD 软件(yum install dhcp)

    我这里这前已经安装过了

  

  2.2 DHCP服务器机的IP设置

    查看用交叉线连接的网卡,我的网卡设备名为p4p1,此时是没有IP的。

[root@Amei dhcp]# ip addr show dev p4p1

  

    给此网卡配置IP为192.168.100.1/24

[root@Amei dhcp]# ip addr add 192.168.100.1/ brd +  dev p4p1
[root@Amei dhcp]# ip addr show dev p4p1

  

  2.3 DHCP 服务器软件配置

    编辑dhcp后台软件的配置文件

[root@Amei dhcp]# emacs /etc/dhcp/dhcpd.conf 

    dhcpd.conf的文件内容:

#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf() man page
#
# . 整体的环境设定 #不要更新 DDNS 的设定
ddns-update-style none;
#忽略客户端的 DNS更新功能
ignore client-updates;
# 预设租期为 3 天
default-lease-time ;
# 最大租期为 6 天
max-lease-time ;
# 域名服务器地址,因为暂时未打算联网,所以先写成本机地址,也就是DHCP客户端解析域名的时候先访问本机。 这个设定值会修改客户端的 /etc/resolv.conf
option domain-name-servers 192.168.100.1;
# 动态分配的 IP
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.101 192.168.100.200;
     # DHCP客户端的默认的转发地址
option routers 192.168.100.1;
     # DHCP客户端的子网掩码
option subnet-mask 255.255.255.0;
}

  将DHCP服务器绑定在"p4p1"网卡上

  在/etc/sysconfig/dhcpd文件末尾添加:

DHCPDARGS="p4p1"

  2.4 开启DHCP服务,并测试

# 开启dhcp服务,如果没有报错,则说明配置正确
root@Amei dhcp]# systemctl start dhcpd.service
# 查看服务状态
[root@Amei dhcp]# systemctl status dhcpd.service

  

  当DHCP服务器成功开启之后,测试另一台机器是否能够成功获取到IP,这里通过开启以太网接口,自动获取IP

  

  上边DHCP客户机已经成功获取到了IP, 此时查看以下路由转发表,可以发现,默认路由为192.168.100.1

  

3. 总结

  上述的配置仅仅是一种很简单的配置,DHCP还有固定IP配置,手动配置等,还有很多其它的参数,如果向了解更多就需要深入学习。

  

CentOS7中DHCP配置的更多相关文章

  1. Centos7中hadoop配置

    Centos7中hadoop配置 1.下载centos7安装教程: http://jingyan.baidu.com/article/a3aad71aa180e7b1fa009676.html (注意 ...

  2. CentOS7中yum配置

    1.打开centos的yum文件夹 输入命令cd  /etc/yum.repos.d/ 2.用wget下载repo文件 输入命令wget  http://mirrors.aliyun.com/repo ...

  3. CentOS7 中防火墙配置

    systemctl  stop firewalld.service  #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 开 ...

  4. Centos7中网络及设备相关配置

    centos7中,不再赞成使用ifconfig工具,取而代之的是nmcli工具,服务管理也是以systemctl工具取代了service,这些之前版本的工具虽然在centos7中还可以继续使用,只是出 ...

  5. CentOS7中使用阿里云镜像

    之前因为下载Docker镜像很慢所以用了一家国内的镜像DaoCloud,今天要用的是阿里云的镜像库. 首先要开通了阿里云开发者帐号,地址 : https://dev.aliyun.com/search ...

  6. centos7中安装、配置、验证、卸载redis

    本文介绍在centos7中安装.配置.验证.卸载redis等操作,以及在使用redis中的一些注意事项. 一 安装redis 1 创建redis的安装目录 利用以下命令,切换到/usr/local路径 ...

  7. Linux中DHCP服务器的简单配置

    我安装了两台linux系统,一个作为服务器,一个客户端 两个都有3个网卡, 后两个网卡聚合为zhi一个网卡:Linux 网卡聚合 两台电脑都一样. 那么如何为这个聚合网卡进行DHCP的分配呢? 1.由 ...

  8. CentOs7中的网卡配置工具

    CentOs7中的网卡配置工具 摘自:https://blog.51cto.com/13572810/2087991 misslaziness1人评论2715人阅读2018-03-17 22:09:1 ...

  9. Linux系统中DHCP的配置

    DHCP为动态主机配置协议,负责IP地址的动态分配(当一个主机的IP为自动,则不需要自己写IP,他会在DHCP服务器的范围内自动获取) 在真机或虚拟机下配置DHCP服务时,需要先下载dhcp软件,使用 ...

随机推荐

  1. hdu5468 Puzzled Elena

    hdu5468 Puzzled Elena 题意 求一棵子树内与它互质的点个数 解法 容斥 我们先求出与它不互质的数的个数,再用总数减去就好. #include <cstdio> #inc ...

  2. 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuqe.Queue)

    Python_Day_05 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuq ...

  3. Formal Definitions Using ASN.1 - SNMP Tutorial

    30.7 Formal Definitions Using ASN.1 The SMI standard specifies that all MIB variables must be define ...

  4. WinForm窗体代码结构优化

    选择系统新建WinForm程序,会生成FormMain.cs/ FormMain.Designer.cs/ FormMain.resx 当我们发现系统生成的FormMain.cs里面代码太多的时候,不 ...

  5. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  6. DiskFileItemFactory类的使用

      将请求消息实体中的每一个项目封装成单独的DiskFileItem (FileItem接口的实现) 对象的任务由 org.apache.commons.fileupload.FileItemFact ...

  7. todoList使用教程

    网页链接:http://www.cnblogs.com/sunada2005/articles/2663030.html

  8. CSS 和 JS 动画哪个更快

    基于Javascript的动画暗中同CSS过渡效果一样,甚至更加快,这怎么可能呢?而Adobe和Google持续发布的富媒体移动网站的性能可媲美本地应用,这又怎么可能呢? 本文逐一遍览了基于Javas ...

  9. 反射的一些用法(WP8.1下)

    我初步的理解:反射就是动态调用(dll)类. 比如某个dll有一个类,通过反射就可以知道它里面属性.方法,就可以实现调用. 确实,dll可以直接引用,但是如果遇到这种情况: 添加.删除功能同属一个Dl ...

  10. block要掌握的东西

    /* block要掌握的东西 1> 如何定义block变量 int (^sumBlock)(int, int); void (^myBlock)(); 2> 如何利用block封装代码 ^ ...