如何在 Debian 中安装 DHCP 服务器

简介: 动态主机配置协议(DHCP)是一种用于使主机能够从服务器自动分配 IP 地址和相关的网络配置的网络协议。DHCP 服务器分配给 DHCP 客户端的 IP 地址处于“租用”状态,租用时间通常取决于客户端计算机要求连接的时间或 DHCP 服务器配置的时间。

动态主机配置协议(DHCP)是一种用于使主机能够从服务器自动分配 IP 地址和相关的网络配置的网络协议。DHCP 服务器分配给 DHCP 客户端的 IP 地址处于“租用”状态,租用时间通常取决于客户端计算机要求连接的时间或 DHCP 服务器配置的时间。

DHCP 如何工作?

以下是 DHCP 实际工作原理的简要说明:

  •   一旦客户端(配置为使用 DHCP 的机器)连接到网络后,它会向 DHCP 服务器发送DHCPDISCOVER数据包。
  • 当 DHCP 服务器收到DHCPDISCOVER请求报文后会使用DHCPOFFER包进行回复。
  • 然后客户端获取到DHCPOFFER数据包,并向服务器发送一个DHCPREQUEST包,表示它已准备好接收DHCPOFFER包中提供的网络配置信息。
  • 最后,DHCP 服务器从客户端收到DHCPREQUEST报文后,发送DHCPACK报文,表示现在允许客户端使用分配给它的 IP 地址。

在本文中,我们将介绍如何在 Debian Linux 中设置 DHCP 服务器,我们将使用 sudo 命令来运行所有命令,以获得 root 用户权限。

测试环境设置

在这步中我们会使用如下的测试环境。

  • DHCP Server – Debian 8.7
  • DHCP Clients – CentOS 7 and Fedora 25

步骤 1:在 Debian 中安装 DHCP 服务器

1、 运行下面的命令来安装 DHCP 服务器包,也就是dhcp3-server。

  1. $ sudo apt install isc-dhcp-server

2、 安装完成后,编辑 /etc/default/isc-dhcp-server 使用 INTERFACES 选项定义 DHCPD 响应 DHCP 请求所使用的接口。

比如,如果你想让 DHCPD 守护进程监听 eth0,按如下设置:

  1. INTERFACES=”eth0″

同样记得为上面的接口配置静态地址。

步骤 2:在 Debian 中配置 DHCP 服务器

3、 DHCP 配置的主文件是 /etc/dhcp/dhcpd.conf, 你必须填写会发送到客户端的所有网络信息。

并且 DHCP 配置中定义了两种不同的声明,它们是:

  • parameters – 指定如何执行任务、是否执行任务,还有指定要发送给 DHCP 客户端的网络配置选项。
  • declarations – 定义网络拓扑、指定客户端、为客户端提供地址,或将一组参数应用于一组声明。

4、 现在打开并修改主文件,定义 DHCP 服务器选项:

  1. $ sudo vi /etc/dhcp/dhcpd.conf

在文件顶部设置以下全局参数,它们将应用于下面的所有声明(请指定适用于你情况的值):

  1. option domain-name “tecmint.lan”;
  2. option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
  3. default-lease-time 3600;
  4. max-lease-time 7200;
  5. authoritative;

5、 现在定义一个子网,这里我们为 192.168.10.0/24 局域网设置 DHCP (请使用适用你情况的参数):

  1. subnet 192.168.10.0 netmask 255.255.255.0 {
  2. option routers 192.168.10.1;
  3. option subnet-mask 255.255.255.0;
  4. option domain-search “tecmint.lan”;
  5. option domain-name-servers 192.168.10.1;
  6. range 192.168.10.10 192.168.10.100;
  7. range 192.168.10.110 192.168.10.200;
  8. }

步骤 3:在 DHCP 客户端上配置静态地址

6、 要给特定的客户机分配一个固定的(静态)的 IP,你需要显式将这台机器的 MAC 地址以及静态分配的地址添加到下面这部分。

  1. host centos-node {
  2. hardware ethernet 00:f0:m4:6y:89:0g;
  3. fixed-address 192.168.10.105;
  4. }
  5. host fedora-node {
  6. hardware ethernet 00:4g:8h:13:8h:3a;
  7. fixed-address 192.168.10.106;
  8. }

保存并关闭文件。

7、 接下来,启动 DHCP 服务,并让它下次开机自启动,如下所示:

  1. ———— SystemD ————
  2. $ sudo systemctl start isc-dhcp-server.service
  3. $ sudo systemctl enable isc-dhcp-server.service
  4. ———— SysVinit ————
  5. $ sudo service isc-dhcp-server.service start
  6. $ sudo service isc-dhcp-server.service enable

8、 接下来不要忘记允许 DHCP 服务(DHCP 守护进程监听 67 UDP 端口)的防火墙权限:

  1. $ sudo ufw allow 67/udp
  2. $ sudo ufw reload
  3. $ sudo ufw show

步骤 4:配置 DHCP 客户端

9、 此时,你可以将客户端计算机配置为自动从 DHCP 服务器接收 IP 地址。

登录到客户端并编辑以太网接口的配置文件(注意接口名称/号码):

  1. $ sudo vi /etc/network/interfaces

定义如下选项:

  1. auto eth0
  2. iface eth0 inet dhcp

保存文件并退出。重启网络服务(或重启系统):

  1. ———— SystemD ————
  2. $ sudo systemctl restart networking
  3. ———— SysVinit ————
  4. $ sudo service networking restart

另外你也可以使用 GUI 来在进行设置,如截图所示(在 Fedora 25 桌面中)设置将方式设为自动(DHCP)。

在 Fedora 中设置 DHCP 网络

在 Fedora 中设置 DHCP 网络

此时,如果所有设置完成了,你的客户端应该可以自动从 DHCP 服务器接收 IP 地址了。

就是这样了!在本篇教程中,我们向你展示了如何在 Ubuntu/Debian 设置 DHCP 服务器。在反馈栏中分享你的想法。如果你正在使用基于 Fedora 的发行版,请阅读如何在 CentOS/RHEL 中设置 DHCP 服务器。


作者简介: Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux SysAdmin 和 web 开发人员,目前是 TecMint 的内容创建者,他喜欢用电脑工作,并坚信分享知识。


原文发布时间:2017-03-30
本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。
相关文章
|
29天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
51 5
Linux系统之安装Ward服务器监控工具
|
1月前
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
|
1月前
|
网络协议 Windows
Windows Server 2003 DHCP服务器搭建
Windows Server 2003 DHCP服务器搭建
|
1月前
|
人工智能 安全 大数据
ARM 服务器上安装 OpenEuler (欧拉)
openEuler 是华为于2019年开源的操作系统,支持多种处理器架构,包括X86和鲲鹏。截至2020年底,openEuler 拥有3万社区用户、2万多个拉取请求、2000多名贡献者和7032款软件。openEuler 提供高效、稳定、安全的系统,适用于数据库、大数据、云计算和人工智能等场景。本文介绍了在神州鲲泰 R522 服务器上安装 openEuler 的详细步骤,包括下载镜像、配置 RAID 和 BIOS 设置等。
201 0
ARM 服务器上安装 OpenEuler (欧拉)
|
1月前
|
Ubuntu TensorFlow 算法框架/工具
NVIDIA Triton系列05-安装服务器软件
本文介绍了NVIDIA Triton推理服务器的安装方法,涵盖源代码编译、可执行文件安装及Docker容器部署三种方式。重点讲解了在NVIDIA Jetson AGX Orin设备上的安装步骤,适合Ubuntu 18及以上系统。通过检查HTTP端口状态确认服务器运行正常,为后续客户端软件安装做准备。
43 0
NVIDIA Triton系列05-安装服务器软件
|
1月前
|
弹性计算 应用服务中间件 网络安全
ECS服务器使用:SSL证书安装、配置和问题定位指南
本文简要介绍了SSL证书的生成与部署方法,包括使用OpenSSL生成自签名证书和从CA获取证书的步骤,以及在Apache和Nginx服务器上的配置方法。此外,还提供了测试证书是否生效的方法和常见问题的解决策略,帮助确保证书正确安装并解决调试过程中可能遇到的问题。
143 0
|
1月前
|
域名解析 安全 网络安全
阿里云服务器WordPress环境上安装SSL证书
阿里云服务器WordPress环境上安装SSL证书
|
1月前
|
Oracle Java 关系型数据库
在 Debian 12 上安装 Java 21
在 Debian 12 上安装 Java 21
|
3月前
|
Kubernetes 应用服务中间件 nginx
debian11使用kubeadm安装k8s
debian11使用kubeadm安装k8s
|
3月前
|
安全 Ubuntu Shell
深入挖掘Debian系统中安装Docker
【8月更文挑战第21天】在Debian系统中安装Docker需按步骤操作:首先确保软件包更新,执行`sudo apt update`并安装必要软件包支持HTTPS;接着添加Docker官方GPG密钥以验证包的完整性和安全性;然后设置Docker稳定版仓库,通过`tee`命令配置仓库文件;再更新软件包索引;最后安装Docker Engine并通过运行测试容器确认安装成功。此指南适用于多数Debian版本,如遇问题请查阅官方文档。
253 0
下一篇
无影云桌面