Linux系统安装DHCP服务详细过程

Linux系统安装DHCP服务详细过程

1.DHCP介绍

2.DHCP安装过程

2.1.安装前准备

(1)关闭防火墙

1.systemctl disable --now firewalld

2.setenforce 0

3.vim /etc/selinux/config

(SELINUX=disabled)

(2)查看是否已安装dhcp服务

rpm -qa|grep dhcp*(查看已安装的软件)

#或者

yum list installed | grep dhcp

#查看ip地址

ifconfig

2.2.安装dhcp服务

(1)安装

yum install -y dhcp

(2)查看文件所在位置

rpm -qc dhcp

#

find / -name "dhcp*"

(3)查看dhcp初始配置文件

cd /etc/dhcp

ls

cat dhcpd.conf

(4)将模板文件复制到配置文件

因为初始配置文件没有内容所以, 将模板文件复制到/etc/dhcp/目录下,覆盖原本的dhcpd.conf。

#

cd /usr/share/doc

#

find -name "dhcp*"

#

cd dhcp-4.2.5

#

cp -a /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

(5)dhcpd.conf原文解析

cd /etc/dhcp/

#

vim dhcpd.conf

#删除文件里面的注释,去除所有以 `#` 开头的行:

sed -i '/^#/d' dhcpd.conf

注:dhcpd.conf原文 解析

option domain-name "example.org"; #指定默认域名

#为客户端指明DNS服务器IP地址

option domain-name-servers ns1.example.org, ns2.example.org;

# 指定默认的租约期限(单位:秒)客户端在默认情况下可以持有分配的IP地址的时间长度

default-lease-time 600;

# 指定最大的租约期限(单位:秒),即客户端持有的IP地址租约时间的上限

max-lease-time 7200;

log-facility local7; # 指定DHCP服务器日志消息的发送目标或设施为local7

# 第一个子网配置

#没有服务这个子网将会被指定,但是要声明他来帮助DHCP服务器来了解网络拓扑

subnet 10.152.187.0 netmask 255.255.255.0 { }

# 第二个子网配置

#非常基础(简单)的子网声明

subnet 10.254.239.0 netmask 255.255.255.224 {

range 10.254.239.10 10.254.239.20; # 定义了一个静态分配的IP地址范围

option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; # 指定了两个路由(网关)

}

# 第三个子网配置

#这个声明运行BUUTP(引导协议)客户端获取地址,我们不是真正的推荐(我们并不建议这样)

subnet 10.254.239.32 netmask 255.255.255.224 {

# 定义了一个动态分配的IP地址范围,使用BOOTP协议

range dynamic-bootp 10.254.239.40 10.254.239.60;

option broadcast-address 10.254.239.31; # 指定了广播地址,

option routers rtr-239-32-1.example.org; # 设置路由(网关)

}

# 第四个子网配置

#为一个内部子网进行细微的配置

subnet 10.5.5.0 netmask 255.255.255.224 {

range 10.5.5.26 10.5.5.30; # 定义了一个静态分配的IP地址范围

option domain-name-servers ns1.internal.example.org; # 指定了域名服务器

option domain-name "internal.example.org"; # 指定了默认域名

option routers 10.5.5.1; # 设置路由的IP地址

option broadcast-address 10.5.5.31; # 指定了广播地址

default-lease-time 600; # 定义了租约(IP地址分配)的默认时间(单位:秒)

max-lease-time 7200; # 定义了租约的最大时间(单位:秒)

# 这个子网同样被分成了8个小的子网段,但只指定了一个地址范围

}

# 定义了一个名为passacaglia的主机

host passacaglia {

hardware ethernet 0:0:c0:5d:bd:95; # 指定了该主机的MAC地址

filename "vmunix.passacaglia"; # 指定了主机文件名

server-name "toccata.fugue.com"; # 指定了为该主机提供服务的DHCP服务器名称

}

# 定义了一个名为fantasia的主机

host fantasia {

hardware ethernet 08:00:07:26:c0:a5; # 指定了该主机的MAC地址

fixed-address fantasia.fugue.com; # 这里似乎是一个错误,通常fixed-address后面跟的是IP地址,而不是域名。

# 如果意图是分配一个固定的IP地址给这个主机,应该修改为类似:fixed-address 192.168.1.100;

}

# 定义了一个名为foo的类

class "foo" {

match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; # 根据客户端发送的vendor-class-identifier的前4个字符是否为"SUNW"来匹配这个类

}

# 定义了一个名为224-29的共享网络

#这一块DHCP配置的主要作用是定义了一个名为224-29的共享网络,该网络包含了两个子网(10.17.224.0/24 和 10.0.29.0/24),并为这两个子网指定了不同的默认网关(路由器)。此外,它还定义了两个IP地址池(pool),用于动态分配IP地址给请求DHCP服务的客户端,但这两个地址池有不同的访问控制策略。

shared-network 224-29 { # 包含两个子网

subnet 10.17.224.0 netmask 255.255.255.0 {

option routers rtr-224.example.org; # 指定了该子网内的默认网关(路由器)

}

subnet 10.0.29.0 netmask 255.255.255.0 {

option routers rtr-29.example.org; # 指定了该子网内的默认网关(路由器)

}

# 定义了两个IP地址池

pool {

allow members of "foo"; # 仅允许属于类"foo"的客户端从这个地址池中获取IP地址

range 10.17.224.10 10.17.224.250; # 定义了可分配的IP地址范围

}

pool {

deny members of "foo"; # 禁止属于类"foo"的客户端从这个地址池中获取IP地址

range 10.0.29.10 10.0.29.230; # 定义了另一个可分配的IP地址范围

}

# 注意:在共享网络中定义多个pool时,需要确保它们的分配策略不会相互冲突或导致配置错误。

}

配置文件格式

选项/参数 #这些选项/参数全局有效

声明 {

选项/参数 #这些选项/参数全局有效

}

保留特定的IP地址

可以保留特定的IP四肢给特定的DHCP客户端使用,也就是说,当这个客户每次向DHCP服务器索取地址或更新租约时,DHCP服务器都会给客户端分配相同的地址。

host 主机名 {

next-server IP地址;

hardware ethernet 网卡地址;

fixed-address IP地址;

filename "/pxelinux.0";

}

分配多网段的IP地址

超级作用域来解决DHCP单个作用域中IP地址不足的情况,同时也方便了多个作用域的同时管理。而且超级作用域可以实现DHCP服务器只有1个地址却可以分发多个网段的IP功能(不使用超级作用域的话要么给DHCP服务器增加多块网卡,要么通过DHCP终中继的方式来实现分发不同网段的IP)

shared-network 名称 {

subnet {

}

subnet {

}

原文链接:https://blog.csdn.net/owlcity123/article/details/104877938

(6)将要添加的配置文件

# 添加新的子网 添加位置与上面的224-29同级

#VMLdhcp(自己)

# VMLdhcp (可选注释,如果确实需要)

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.250; # 可分配的IP地址范围

option domain-name-servers 8.8.8.8,114.114.114.114; # 设置DNS服务器

# option domain-name "your.domain.name"; # 如果需要设置域名,则取消注释并替换为你的域名

option broadcast-address 192.168.1.255; # 设置广播地址

option routers 192.168.1.1; # 设置默认网关

default-lease-time 600;

max-lease-time 7200;

}

systemctl start dhcpd

#

systemctl status dhcpd

2.3.客户端的dhcp服务安装

dhclient 是用于从 DHCP 服务器获取网络配置的客户端程序,而 dhcpd 是运行在网络服务器上,为 DHCP 客户端分配网络配置的服务器程序。

dhclient.d 和 dhclient-exit-hooks.d 目录,这些目录通常是与 DHCP 客户端 dhclient 相关联的,而不是 DHCP 服务器 dhcpd。

(1)检查dhclient是否安装

rpm -q dhclient

如果系统提示找不到 dhclient,那么你需要安装它。

(2)安装

sudo yum install --y dhclient

dhclient.d:这个目录通常用于存放 dhclient 的配置文件或脚本,这些脚本会在 DHCP 客户端获得或失去 IP 地址时运行。不过,请注意,具体的文件名和路径可能会因不同的 Linux 发行版而异。

dhclient-exit-hooks.d:这个目录(如果存在)通常用于存放 DHCP 客户端退出时执行的脚本。但并非所有发行版都使用这个目录;有些系统可能使用不同的机制或路径来实现类似的功能。

🎈 相关推荐

世界杯竞彩规则详解:加时赛是否计入竞猜?这些细节你必须知道
无脑卖沽的结果会怎么样?
365bet体育在线365

无脑卖沽的结果会怎么样?

📅 08-07 👀 3839
中華人民共和國對小熊維尼的審查
预付365商城下载

中華人民共和國對小熊維尼的審查

📅 06-28 👀 9239