Linux(openEuler、CentOS8)企业内网DHCP服务器搭建(固定Mac获取指定IP)

----本实验环境为openEuler系统<以server方式安装>(CentOS8基本一致,可参考本文)----

目录

一、知识点


:
在CentOS 8上,你可以使用命令 sudo dnf install -y dhcp来安装DHCP服务。
:
DHCP服务器的主要配置文件通常是 /etc/dhcp/dhcpd.conf。编辑此文件以设置网络参数、子网掩码、DNS服务器、默认网关等。

复制代码
为特定MAC地址分配固定IP地址,你需要在配置文件中添加主机声明。例如:
conf 复制代码
host myhost {
  hardware ethernet 00:1A:2B:3C:4D:5E; # MAC地址
  fixed-address 192.168.1.100; # 指定的IP地址
}
# 这将确保具有MAC地址00:1A:2B:3C:4D:5E的主机
#总是获得IP地址192.168.1.100

:
定期检查DHCP服务器的日志文件,通常位于 /var/log/messages/var/log/syslog,以监控任何潜在问题或错误。
:
主配置文件 /etc/dhcpd.conf

bash 复制代码
option domain-name "test.com";     //指定默认搜索域,本地域名
option domain-name-servers 192.168.200.113, 192.168.200.114;    //指定DNS 服务器地址,多台用逗号隔开
default-lease-time 600;    //默认租约为600秒
max-lease-time 7200;    //最大租约为2小时,在客户端没有特殊的租约时间请求的时候,都会统一的指派默认租约时间(多数情况)。如果客户端请求了自定义的租约时间,服务器将会启用最大租约时间作为限制,客户端自己请求的租约时间不能大于该值
ddns-update-style none;     //禁用DNS 动态更新,提高DHCP的效率,减少带宽的使用,默认注释了
ignore client-updates:     //与ddns-update-style设定相关,客户端可以通过DHcP服务器来更新DNs相关信息,这里暂时不予考虑,所以设置成igore.

###网段声明   
subnet 192.168.10.0 netmask 255.255.255.0 {
  range   dynamic-bootp 192.168.10.51 192.168.10.199;  #ip地址池
  #option domain-name-servers ns1.internal.example.org;
  #option domain-name "internal.example.org";
  option routers 192.168.10.254; # 为客户端设定默认网关
  option broadcast-address 192.168.10.255; #为客户端设定广播地址
  #default-lease-time 600;
  #max-lease-time 7200;
}           
host pc_deepin {                                #指定需要分配固定IP地址的客户机名称
  hardware ethernet 00:0C:29:25:D4:C6;   #指定网卡接口类型和MAC地址
  fixed-address 192.168.10.1;  #分配给客户端一个固定的地址
  server-name "deepin.test.com";#分配给客户端一个计算机名
}

二、实验

(一)为服务器配置网卡和IP

  1. 配置一个新的网络




  2. 新增一张网卡并配置到刚新建的网络




  1. 配置IP
bash 复制代码
ip addr
cd /etc/sysconfig/network-scripts/ 
ll

发现新加的网卡ens192并没有文件

bash 复制代码
nmtui




以上MAC地址可通过 ip addr 查看或者通过 vmware查看(如下图)

bash 复制代码
cd /etc/sysconfig/network-scripts
ll
cat ifcfg-ens192

(二)为服务器安装DHCP服务软件

说明已预装dhcp,无需安装

(三)配置DHCP服务器

bash 复制代码
 vim /etc/dhcp/dhcpd.conf

说明/usr/share/doc/dhcp-server/dhcpd.conf.example有模板文件,复制过来即可

bash 复制代码
cp -p /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf

-p 选项的作用是保留源文件或目录的属性

bash 复制代码
vim /etc/dhcp/dhcpd.conf

配置文件如下:

conf 复制代码
##全局配置
option domain-name "test.com";
option domain-name-servers 192.168.200.113, 192.168.200.114;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
##全局配置结束

###网段声明   
subnet 192.168.10.0 netmask 255.255.255.0 {
  range   dynamic-bootp 192.168.10.51 192.168.10.199;  #ip地址池
  #option domain-name-servers ns1.internal.example.org; #相当于默认使用全局配置
  #option domain-name "internal.example.org";
  option routers 192.168.10.254; # 为客户端设定默认网关
  option broadcast-address 192.168.10.255; #为客户端设定广播地址
  #default-lease-time 600;
  #max-lease-time 7200;
}
host pc_deepin {                                #指定需要分配固定IP地址的客户机名称
  hardware ethernet 00:0C:29:25:D4:C6;   #指定网卡接口类型和MAC地址
  fixed-address 192.168.10.1;  #分配给客户端一个固定的地址
  server-name "deepin.test.com";#分配给客户端一个计算机名
}

systemctl restart dhcpd重启dhcp服务

(四)测试DHCP服务器

  1. 为客户端新增一张网卡
  1. 获取IP

    再加一张网卡

强制释放dhclient -d

重新获取dhclient -r ens37

相关推荐
棒棒的唐20 分钟前
armbian平台ubuntu环境下telnet安装及启动,给pantherX2增加一个应急通道
linux·运维·armbian·telnetd
bug攻城狮21 分钟前
CentOS 7 设置静态 IP 地址
linux·tcp/ip·centos
纳切威30 分钟前
CentOS 7部署Zabbix5.0
linux·运维·centos·zabbix
sunshine-sm33 分钟前
CentOS Steam 9安装 MySQL 8
linux·运维·服务器·数据库·mysql·centos·centos stream
bug攻城狮34 分钟前
CentOS 7 快速检查软件包是否已安装的5种方法
linux·运维·centos
尚久龙1 小时前
安卓学习 之 用户登录界面的简单实现
android·运维·服务器·学习·手机·android studio·安卓
DONG9992 小时前
ubuntu 22 安装轻量级桌面Xfce并使用xrdp远程桌面连接
linux·运维·ubuntu
帅得不敢出门2 小时前
macOS苹果电脑运行向日葵远程控制软件闪退
windows·macos·远程控制·向日葵
呆萌小新@渊洁2 小时前
linux升级系统,重启出现Minimal BASH-like line editingis supported
linux·服务器
東雪蓮☆2 小时前
从零开始掌握 Web 与 Nginx:入门详解
运维·服务器·前端·nginx