云计算百科
云计算领域专业知识百科平台

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 客户端退出时执行的脚本。但并非所有发行版都使用这个目录;有些系统可能使用不同的机制或路径来实现类似的功能。

赞(0)
未经允许不得转载:网硕互联帮助中心 » Linux系统安装DHCP服务详细过程
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!