【Linux网络】DHCP原理与配置

发布于:2024-04-25 ⋅ 阅读:(26) ⋅ 点赞:(0)

目录

一、DHCP工作原理

1.了解DHCP服务

2.使用DHCP的好处

3.DHCP的分配方式

二、DHCP的租约过程

三、DHCP场景应用实验


一、DHCP工作原理

1.了解DHCP服务

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

由Internet工作任务小组设计开发

专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

2.使用DHCP的好处

        减少管理员的工作量

        避免输入错误的可能

        避免IP地址冲突

        当更改IP地址段时,不需要重新配置每个用户的IP地址

        提高了IP地址的利用率

        方便客户端的配置

3.DHCP的分配方式

        自动分配:分配到一个IP地址后永久使用

        手动分配:由DHCP服务器管理员专门指定IP地址

        动态分配:使用完后释放该IP,供其他客户机使用

二、DHCP的租约过程

客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

 一共分为四个过程:

第一步:客户端在网络中搜索服务器
客户端通过广播发送DHCP  Discover报文寻找服务器端


第二步:服务器向客户端响应服务
服务器端通过广播发送DHCP offer 报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的Ip地址分配给客户端


第三步:客户端向服务器发出服务请求
如果有多台DHCP服务器向该客户端发来DHCP-offer报文,客户端只接受第一个收到的DHCP-offer报文并提取IP地址,然后客户端通过广播发送DHCP Request 报文告知服务器端本地选择使用该IP地址


第四步:服务器向客户端提供服务
服务器通过单播发送DHCP Ack报文告知客户端IP地址是合法可用的,并在选项字段中增加IP地址的使用租期信息

重新登录
DHCP 客户机每次重新登录网络时,不需要再发送 DHCP Discover 信息,而是直接发送包含前一次所分配的 IP  地址的 DHCP Request 请求信息

三、DHCP场景应用实验

关闭防火墙,关闭核心防护

[root@bogon ~]# systemctl disable --now firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@bogon ~]# setenforce 0
[root@bogon ~]# vi /etc/selinux/config
[root@bogon ~]# 

 安装dhcp服务

[root@bogon ~]# yum install -y dhcp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.ustc.edu.cn
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
软件包 12:dhcp-4.2.5-83.el7.centos.1.x86_64 已安装并且是最新版本
无须任何处理

查找dhcp.conf文件的模版:dhcpd.conf.example

[root@bogon ~]# cd /usr/share/
[root@bogon share]# cd /usr/share/doc/
[root@bogon doc]# ls dhcp*
dhcp-4.2.5:
dhcpd6.conf.example  dhcpd.conf.example  ldap

dhcp-common-4.2.5:
LICENSE  README  References.txt  RELNOTES
[root@bogon doc]# cd dhcp-4.2.5/
[root@bogon dhcp-4.2.5]# ls
dhcpd6.conf.example  dhcpd.conf.example  ldap

[root@bogon dhcp-4.2.5]# vi dhcpd.conf.example        #dhcp.conf的模版

复制这个模版到/etc/dhcp/下

[root@bogon dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes
[root@bogon dhcp-4.2.5]# cd
[root@bogon ~]# cd /etc/dhcp
[root@bogon dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@bogon dhcp]# vim dhcpd.conf 

#设置全局配置参数
default-lease-time 21600;                                     #默认租约为 6 小时,单位为秒
max-lease-time 43200;                                         #最大租约为 12 小时,单位为秒
option domain-name "benet.com";                             #指定默认域名
option domain-name-servers 202.106.0.20, 202.106.148.1;     #指定 DNS 服务器地址
ddns-update-style none;                                     #禁用 DNS 动态更新

#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.80.0 netmask 255.255.255.0 {            #声明要分配的网段地址
  range 192.168.80.10 192.168.80.20;                #设置地址池
  option routers 192.168.80.254;                    #指定默认网关地址
}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  option routers 192.168.1.254;
}

subnet 192.168.2.0 netmask 255.255.255.0 {
  range 192.168.2.20 192.168.2.30;
  option routers 192.168.2.254;
}

#host主机声明(给单机分配固定的 IP 地址)
host hostname {                                        #指定需要分配固定 IP地址的客户机名称
  hardware ethernet 00:c0:c3:22:46:81;                #指定该主机的 MAC地址
  fixed-address 192.168.4.100;                        #指定保留给该主机的 IP地址
}

#后面内容可都删除

systemctl start dhcpd
systemctl stop firewalld
setenforce 0

netstat -anpu | grep ":67"

#如果DHCP服务启动失败,可以查看日志文件
tail -f /var/log/messages


在ensp中配置DHCP 中继
dhcp enable                                    #开启DHCP功能
#
interface Vlanif10
 ip address 192.168.1.254 255.255.255.0
 dhcp select relay                            #开启DHCP中继功能
 dhcp relay server-ip 192.168.80.10            #指向DHCP服务器的地址

 设置全局配置参数

虚拟机设置

此时的终端工具会断开,需要打开电脑的网络适配器进行修改

重新连接终端工具,并重启dhcp

寻找主机进行查看,需要在一个网络模式下

以win10为例查看

以linux为例,查了ip地址和DNS

host主机声明(给单机分配固定的 IP 地址)以192.168.10.188为例

修改配置文件:找到主机的物理地址