首页 > 系统相关 >CentOS7.9 搭建DHCP服务器 - DHCP中继代理

CentOS7.9 搭建DHCP服务器 - DHCP中继代理

时间:2022-09-28 20:36:18浏览次数:63  
标签:中继 192.168 CentOS7.9 地址 服务器 DHCP MengXin root

一、DHCP概述

1.DHCP的简介

  • DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。

  • DHCP前身是BOOTP,在Linux的网卡配置中也能看到显示的是BOOTP,DHCP引进一个bootp没有的概念:租约。bootp分配的地址是永久的,而dhcp分配的地址是可以有期限的。

2.DHCP的作用及特点

  • DHCP可以自动分配IP、子网掩码、网关、DNS。
  • DHCP客户端使用的端口68,服务端使用端口67,使用的UDP应用层的协议。
  • DHCP一般不为服务器分配IP,因为他们要使用固定IP,所以DHCP一般只为办公环境的主机分配IP。
  • DHCP服务器和客户端需要在一个局域网内,在为客户端分配IP的时候需要进行多次广播。但DHCP也可以为其他网段内主机分配IP,只要连接两个网段中间的路由器能转发DHCP配置请求即可,但这要求路由器配置中继功能。

3.DHCP报文

  • DHCP DISCOVER :客户端开始DHCP过程发送的包,是DHCP协议的开始
  • DHCP OFFER :服务器接收到DHCP DISCOVER之后做出的响应,它包括了给予客户端的IP(yiaddr)、客户端的MAC地址、租约过期时间、服务器的识别符以及其他信息
  • DHCP REQUEST :客户端对于服务器发出的DHCP OFFER所做出的响应。在续约租期的时候同样会使用。
  • DHCP ACK :服务器在接收到客户端发来的DHCP REQUEST之后发出的成功确认的报文。在建立连接的时候,客户端在接收到这个报文之后才会确认分配给它的IP和其他信息可以被允许使用。
  • DHCP NAK :DHCP ACK的相反的报文,表示服务器拒绝了客户端的请求。
  • DHCP RELEASE :一般出现在客户端关机、下线等状况。这个报文将会使DHCP服务器释放发出此报文的客户端的IP地址
  • DHCP INFORM :客户端发出的向服务器请求一些信息的报文
  • DHCP DECLINE :当客户端发现服务器分配的IP地址无法使用(如IP地址冲突时),将发出此报文,通知服务器禁止使用该IP地址。

4.DHCP中继

  • 用DHCP Relay代理可以去掉在每个物理的网段都要有DHCP服务器的必要,它可以传递消息到不在同一个物理子网的DHCP服务器,也可以将服务器的消息传回给不在同一个物理子网的DHCP客户机。

二、配置DHCP服务器

1.事先准备

准备三台主机,分别是DHCP服务器、中继服务器、测试客户机
中间的中继服务器两个网络适配器,分别连接服务器和客户机的网段

2.安装DHCP服务

在DHCP服务器和中继服务器上都要安装DHCP服务,先保证服务器都能正常上网

//这里我安装了所有有关DHCP的软件包,可根据需要自行选择
[root@MengXin ~]# yum install -y dhcp-*

3.修改主机的IP地址(请先关闭VMware的DHCP服务)

这里为最终的地址配置,首先需要修改DHCP服务器的网络1的IP和服务器的网络2的IP,均为静态IP,网关配置可忽略
中继设备的网络1的地址为DHCP请求,这里先忽略。

设备 网络1 网络2
服务器 192.168.255.10/24
中继设备 DHCP获取 192.168.48.10
客户机 DHCP获取

4.配置静态路由

DHCP服务器上需要配置通向客户机网段的静态路由

//给你的网络添加一个文件,不存在则新建
[root@MengXin ~]# vim /etc/sysconfig/network-scripts/route-ens160    //我的Linux服务器系统是RHEL,默认是ifcfg-ens160,这个根据实际情况而定

下面是我的配置文件内容

//注意:这里的网关地址可以是你的网络1的IP地址,如果你的主机在nat模式下则可以直接指向中继服务器的网络2的IP地址(我的是主机模式)
ADDRESS0=192.168.48.0
NETMASK0=255.255.255.0
GATEWAY0=192.168.255.10

5.修改DHCP的配置文件

需要先去复制一份模板文件,也可以直接编辑‘/etc/dhcp/dhcpd.conf’文件

//模板目录可能会有所不同,可以用通配符‘*’来模糊查找,或者自己寻找准确目录
[root@MengXin ~]# cp -a /usr/share/doc/dhcp-*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

5.1全局参数

  • ddns-update-style none; ## 禁止dns动态更新

  • default-lease-time 21600; ## 默认租约期限

  • max-lease-time 43200; ## 最大租约期限

  • option domain-name “immengxin.top”; ## 指定域名

  • option domain-name-servers 202.106.0.20; ## 指定分配dns地址

5.2地址池参数

  • range参数:设置用于分配的P地址池

  • option subnet-mask参数:设置客户机的子网掩码

  • option routers参数:设置客户机的默认网关地址

5.3绑定机器MAC

  • hardware ethernet参数:指定对应主机的MAC地址

  • fixed-address参数:指定为该主机保留的IP地址
    以下是我的配置文件修改的内容

# 这里是网络1的地址池
subnet 192.168.255.0 netmask 255.255.255.0 {           //定义了网络号和子网掩码
  range 192.168.255.100 192.168.255.200;         //地址池范围
  option domain-name-servers 192.168.255.2;      //DNS服务器,可用‘,’分隔多个地址
  option domain-name "immengxin.top";            //域名
  option routers 192.168.255.2;                  //网关地址
  option broadcast-address 192.168.255.255;         //广播地址
  default-lease-time 600;                        //默认租期
  max-lease-time 7200;                          //最大租期
}

# 这里是客户机所在网络2的地址池
subnet 192.168.48.0 netmask 255.255.255.0 {
  range 192.168.48.100 192.168.48.200;
  option domain-name-servers 8.8.8.8;
  option domain-name "immengxin.top";
  option routers 192.168.48.10;
  option broadcast-address 192.168.48.255;
  default-lease-time 600;
  max-lease-time 7200;
}

# 中继服务器网络2的保留地址
host myself {
  hardware ethernet 00:0c:29:47:28:c9;    //我的中继服务器网络1的MAC地址
  fixed-address 192.168.255.150;       //固定的保留地址
}




[root@MengXin ~]# systemcTL restart dhcpd    //重启DHCP服务
[root@MengXin ~]# systemcTL enable dhcpd     //开机自启DHCP

6.防火墙命令

  • 防火墙允许DHCP服务通过,也可直接关闭
    其他设备同样是,如出现问题,可以先考虑防火墙问题
[root@MengXin ~]# firewall-cmd --permanent --add-service=dhcp    //允许DHCP服务通过
[root@MengXin ~]# firewall-cmd --reload    //重载防火墙
[root@MengXin ~]# systemctl stop firewalld.service    //关闭防火墙
[root@MengXin ~]# sstenforce 0    //临时关闭selinux,永久关闭请自行百度

三、中继服务器配置

这里我是直接关闭的防火墙和selinux,先保证实验正常进行

修改配置文件‘vim /usr/lib/systemd/system/dhcrelay.service’,修改成下面的样子

[Unit]
Description=DHCP Relay Agent Daemon
Documentation=man:dhcrelay(8)
Wants=network-online.target
After=network-online.target

[Service]
Type=notify
ExecStart=/usr/sbin/dhcrelay -d --no-pid 192.168.255.10     //这里加上你的DHCP服务器的地址
StandardError=null

[Install]
WantedBy=multi-user.target

开启路由转向,自行体会

[root@MengXin ~]# echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
[root@MengXin ~]# sysctl -p    //立即生效路由转向

修改配置文件以后执行以下命令,这里我不多解释了

[root@MengXin ~]# systemctl --system daemon-reload
[root@MengXin ~]# systemctl restart dhcrelay.service
[root@MengXin ~]# systemctl enable dhcrelay.service
//这个命令可以直接指向需要中继的DHCP服务器的地址,重启失效。配置以后可不需要修改配置文件
[root@MengXin ~]# dhcrelay 192.168.255.10

四、结果验证

我的主机名都是同样的,记得使用不同的主机进行配置

[root@MengXin ~]# dhclient -r       //释放DHCP地址
[root@MengXin ~]# dhclient -d       //请求DHCP地址
[root@MengXin ~]# ip a s ens33      //查看网络适配器地址
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:50:a2:bf brd ff:ff:ff:ff:ff:ff
    inet 192.168.48.100/24 brd 192.168.255.255 scope global noprefixroute dynamic ens33
       valid_lft 442sec preferred_lft 442sec
    inet6 fe80::7022:564b:5dff:7d53/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
[root@MengXin ~]# 

如果以上步骤出现错误,请帮忙指正,非常感谢!!!

标签:中继,192.168,CentOS7.9,地址,服务器,DHCP,MengXin,root
From: https://www.cnblogs.com/immengxin/p/16737467.html

相关文章

  • CentOS7.9编译安装gp
    前提条件yumupdate-yyum-yinstallepel-releaseyum–yinstallpython-pipyuminstall-ylrzsz设置python国内下载源mkdir-p~/.pipvi~/.pip/pip.conf......
  • CentOS7.9 搭建Samba服务器
    一、Samba概述1.Samba简介Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。NFS与samba一样,也是在网络中实现文件共享的......
  • 201-CH32V307(RISC-V)学习开发-以太网例程-DHCP
    <p><iframename="ifd"src="https://mnifdv.cn/resource/cnblogs/LearnCH32V307VCT6"frameborder="0"scrolling="auto"width="100%"height="1500"></iframe></p>DHC......
  • rh358 005 dhcp dhcp6 打印机 ansible配置dhcp和打印机
    部署dhcp服务器主机发送Discover报文目标为广播地址同一网段的dhcp收到报文后,dhcp响应一个offer报文offer报文:dhcp自己的ip地址。和客户端ip以及使用周期,和客户端ip网......
  • CentOS7.9安装rsyslog+loganalyzer日志服务器详细配置
    1、CentOS7.9安装rsyslog+loganalyzer日志服务器详细配置 一、简介:随着机房内的服务器和网络设备增加,日志管理和查询就成了让系统管理员头疼的事。系统管理员遇到的常见......
  • Centos7.9 升级内核到最新稳定版
    环境:Centos7.9内核3.10版本0x01导入ELreporpm--importhttps://www.elrepo.org/RPM-GPG-KEY-elrepo.org#下载并安装elrepo.el7yuminstallinstallhttps://www......
  • HCNP Routing&Switching之DHCP安全
    前文我们了解了MAC地址防漂移技术,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16632239.html;今天我们来了解下DHCP安全相关话题;回顾DHCP工作流程DHCP......
  • DHCP
    1、DHCP服务又两个角色,一个是server,一个是client。DHCP是基于UDP传输,server的端口号为67,client的端口号为68。2、DHCP请求过程:①client端发送discover报文进行全网泛洪。......
  • 华为路由器基于全局、接口、Vlanif的DHCP配置
    DHCP动态主机配置协议1、原理:DHCP服务器:为客户端分配IP地址和其他网参数的服务器DHCP客户端:可以自动获取IP地址网关和DNS的设备DHCP首次接入:1,发送......
  • Centos7.9离线安装ORACLE19C
    一、基础环境配置1、关闭系统防火墙systemctlstopfirewalldsystemctldisablefirewalld2、关闭selinuxvim/etc/selinux/configSELINUX=disabled3、准备安装......