linux-配置与管理DHCP服务器

一、DHCP服务概述

DHCP全称是Dynamic Host Configuration Protocol(动态主机配置协议),该协议可以自动为局域网中的每一台计算机自动分配IP地址,并完成每台计算机的TCP/IP协议配置,包括IP地址、子网掩码、网关,以及DNS服务器等。

在DHCP机制中可以分为服务器和客户端两个部分,服务器使用固定的IP地址,在局域网中扮演着给客户端提供动态IP地址、DNS配置和网管配置的角色。客户端与IP地址相关的配置,都在启动时由服务器自动分配。

二、DHCP的工作原理

2.1 DHCP 租约的生成过程

DHCP客户端和服务器端申请IP地址、获得IP地址的过程一般分为4个阶段:
1.IP租约请求:DHCP client广播DHCPDISCOVER
2.IP租约提供:DHCP servers广播DHCPOFFER
3.IP租约选择:DHCP client广播DHCPREQUEST
4.IP租约确认:DHCP servers广播DHCPACK

(1)客户端发送广播向服务器申请IP地址。
(2)服务器收到请求后查看主配置文件dhcpd.conf,先根据客户端的MAC地址查看是否为客户端设置了固定IP地址。
(3)如果为客户端设置了固定IP地址,则将该IP地址发送给客户端。如果没有设置固定IP地址,则将地址池中的IP地址发送给客户端。
(4)客户端收到服务器回应后,客户端给予服务器回应,告诉服务器已经使用了分配的IP地址。
(5)服务器将相关租约信息存入数据库。

1.DHCP客户机发送完DHCPDISCOVER消息后,会等待DHCPOFFER消息,如果未能接受到DHCPOFFER,它就会重试4次(相隔2,4,8,16s,加上一个0到1000s之间的随机时间数)


2.如果DHCP客户机经过努力仍未获得任何有效服务器的IP地址将使用169.254.0.1~169.254.255.254这一保留地址中的一个IP地址(这也是帮助我们排错的一个根据)


3.每隔5分钟,该客户机都继续尝试发现一个DHCP服务器,如果有某个DHCP服务器成为可用,客户机将接受到合法的IP地址。


注意事项:若DHCP客户端获取的IP不是我们设置的服务器IP,则有可能是网络中其他DHCP服务器提供给DHCP客户端IP了,例如VMware就自带DHCP服务,如果要避免此类干扰,可以手动关闭该服务

2.2 DHCP 租约的自动更新过程

1.DHCP客户机在它们的租约期限已过去50%,自动尝试更新租约。
2.如果DHCP服务器可用,那么将更新。如果DHCP服务器不可用,客户机将继续使用它的当前配置。
3.当期限过去87.5% 发出广播再次更新租约。在这一阶段,DHCP客户机接受任何DHCP服务器发出的租约。如果租约已经到期(100%),客户机必须立即停止使用当前的IP地址。然后DHCP客户机开始新的DHCP租约过程,尝试租用新的IP地址。

人工手动更新租约:

如果需要立即更新DHCP配置信息,你可以使用人工方式更新IP租约。
Windows命令行实用工具:ipconfig /renew 和 ipconfig /release


三、DHCP服务器的配置与管理

3.1 DHCP 服务的安装

检测系统是否安装了DHCP相关软件 rpm -qa dhcp

默认情况下DHCP服务是没有安装的,需手动安装 yum install dhcp -y

在ubuntu中,默认软件包管理器不是yum,而是dpkg,安装软件时应使用apt-get
ubuntu下的命令:
检测是否安装了dhcp:
sudo dpkg -l dhcp3-server
sudo dpkg -l isc-dhcp-server
安装dhcp: sudo apt-get install dhcp3-server

3.2 /etc/default/isc-dhcp-server配置文件

DHCP服务的配置文件是:/etc/default/isc-dhcp-server,用来配置DHCP服务器监听的网络接口。默认红色部分为"(服务器网卡)"

3.3 /etc/dhcp/dhcpd.conf配置文件

默认主配置文件(/etc/dhcp/dhcpd.conf)没有任何实质内容,打开查阅,发现里面有一句话“see /usr/share/doc/dhcp*/dhcpd.conf.example”。使用命令将cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.confexample文件内容复制到主配置文件中

3.3.1 配置文件声明

声明 {
选项或参数;
}

  1. subnet 网络号 netmask 子网掩码 {.………}   作用: 定义作用域, 指定子网。
    subnet 192.168.10.0 netmask 255.255.255.0 {
    …………
    }

  2. range dynamic-bootp 起始IP地址 结束IP地址   作用: 指定动态IP地址范围。
    range dynamic-bootp 192.168.10.100 192.168.10.200

在这里插入图片描述

3.3.2配置文件参数

在这里插入图片描述

3.3.3 配置文件选项

选项内容都是以option关键字开始的。

  1. option routers IP地址   作用: 为客户端指定默认网关。
    option routers 192.168.10.254

  2. option subnet-mask 子网掩码   作用: 设置客户端的子网掩码。
    option subnet-mask 255.255.255.0

  3. option domain-name-servers IP地址   作用:为客户端指定DNS服务器地址。
    option domain-name-servers 192.168.10.1

注意:以上三个选项可以用在全局配置中,也可以用在局部配置中。

在这里插入图片描述

3.3.4 IP地址绑定
host  computer1{   //host 主机名, 用于定义保留地址
hardware  ethernet  3a:b5:cd:32:65:12   //hardware类型硬件地址, 用于定义网络接口类型和硬件地址。常用类型为以太网(ethernet), 地址为MAC地址。
fixed-address   192.168.10.105          //fixed-address IP地址,用于定义DHCP客户端指定的IP地址
}

配置实例
在这里插入图片描述

配置完成后,需要重启dhcpd服务 systemctl restart dhcpd

四、DHCP客户端配置

4.1 linux客户端

在这里插入图片描述

完成上图操作,即关闭虚拟机自带的dhcp服务后,在终端输入以下命令重新获取ip地址

ifdown ens33
ifup ens33

4.2 windows客户端

Windows客户端没什么好讲的,这个比较简单,在TCP/IP属性中设置自动获取就可以。
在这里插入图片描述
在Windows命令提示符下,利用ipconfig可以释放IP地址后,重新获取IP地址。

释放IP地址: ipconfig /release。
重新申请IP地址: ipconfig /renew。
好的,关于 LinuxDHCP 服务器配置DHCP 服务器中继的问题,我可以给你一些简单的解释。 DHCP(动态主机配置协议)是一种网络协议,它可以自动分配 IP 地址和其他网络参数,比如子网掩码、默认网关和 DNS 服务器等。在 Linux 中,你可以通过配置 DHCP 服务器来实现自动分配 IP 地址。 在 Ubuntu 系统中,你可以使用 ISC DHCP 服务器配置 DHCP。首先,你需要安装 DHCP 服务器: ``` sudo apt-get update sudo apt-get install isc-dhcp-server ``` 安装完成之后,你需要编辑 `/etc/dhcp/dhcpd.conf` 文件来配置 DHCP 服务器。在文件中,你可以设置 DHCP 服务器的 IP 地址池、子网掩码、默认网关、DNS 服务器等参数。例如: ``` subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; option routers 192.168.1.1; option domain-name-servers 8.8.8.8, 8.8.4.4; } ``` 这个配置文件表示 DHCP 服务器为 192.168.1.0/24 子网内的设备分配 IP 地址,IP 地址池为 192.168.1.10 到 192.168.1.100,默认网关为 192.168.1.1,DNS 服务器为 8.8.8.8 和 8.8.4.4。 另外,DHCP 服务器还支持中继模式,也就是将来自一个子网的 DHCP 请求转发到另一个子网上的 DHCP 服务器上。这个功能可以通过在 `/etc/dhcp/dhcpd.conf` 文件中设置 `relay` 选项来实现。例如: ``` subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name-servers 8.8.8.8, 8.8.4.4; relay 192.168.2.1; } ``` 这个配置文件表示将来自 192.168.1.0/24 子网的 DHCP 请求转发到 192.168.2.1 这个 DHCP 服务器上。需要注意的是,在转发 DHCP 请求之前,你需要在转发的子网上配置一个 DHCP 中继代理。 希望这些信息能对你有所帮助。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值