DHCP原理与配置

DHCP  动态主机配置协议

作用:

给网络内的客户机自动分配ip地址

DHCP协议采用的是UDP作为传输协议

DHCP客户端发送请求消息给服务端的67号端口

DHCP服务端回应响应消息给客户端的68号端口

DHCP工作原理:

1)客户端通过广播发送DHCP Discover报文寻找DHCP服务端

2)服务端通过广播发送DHcp offer报文向客户端提供从地址池中挑选的可用IP等网络信息

3)客户端只接收第一个收到的DHCPoffer报文并提取IP地址,然后向通过广播发送DHCPRequest报文告知服务端要使用该IP地址

4)服务端通过广播发送DHCPACK报文告知客户端该IP地址是合法可用的,并提供租约信息

[root@localhost ~]# 
[root@localhost ~]# 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@localhost ~]# 
[root@localhost ~]# setenforce 0
[root@localhost ~]# vim /etc/selinux/config
[root@localhost ~]# 

[root@localhost ~]# df
文件系统                   1K-块    已用     可用 已用% 挂载点
devtmpfs                 1913548       0  1913548    0% /dev
tmpfs                    1930624       0  1930624    0% /dev/shm
tmpfs                    1930624   12812  1917812    1% /run
tmpfs                    1930624       0  1930624    0% /sys/fs/cgroup
/dev/mapper/centos-root 36805060 4530528 32274532   13% /
/dev/sda1                1038336  191088   847248   19% /boot
tmpfs                     386128      56   386072    1% /run/user/0
/dev/sr0                 4635056 4635056        0  100% /mnt
[root@localhost ~]# 

[root@localhost ~]# cd /mnt/
[root@localhost mnt]# ls
CentOS_BuildTag  images    repodata
EFI              isolinux  RPM-GPG-KEY-CentOS-7
EULA             LiveOS    RPM-GPG-KEY-CentOS-Testing-7
GPL              Packages  TRANS.TBL
[root@localhost mnt]# cd Packages/
[root@localhost Packages]# ls | grep dhcp
dhcp-4.2.5-83.el7.centos.1.x86_64.rpm
dhcp-common-4.2.5-83.el7.centos.1.x86_64.rpm
dhcp-libs-4.2.5-83.el7.centos.1.x86_64.rpm
[root@localhost Packages]# 

[root@localhost Packages]# yum install -y dhcp  //用本地yum源安装dhcp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
local                                                                                                                                    | 3.6 kB  00:00:00     
(1/2): local/group_gz                                                                                                                    | 153 kB  00:00:00     
(2/2): local/primary_db                                                                                                                  | 3.3 MB  00:00:00     
正在解决依赖关系
--> 正在检查事务
---> 软件包 dhcp.x86_64.12.4.2.5-83.el7.centos.1 将被 安装
--> 解决依赖关系完成

依赖关系解决

================================================================================================================================================================
 Package                         架构                              版本                                                  源                                大小
================================================================================================================================================================
正在安装:
 dhcp                            x86_64                            12:4.2.5-83.el7.centos.1                              local                            515 k

事务概要
================================================================================================================================================================
安装  1 软件包

总下载量:515 k
安装大小:1.4 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : 12:dhcp-4.2.5-83.el7.centos.1.x86_64                                                                                                        1/1 
  验证中      : 12:dhcp-4.2.5-83.el7.centos.1.x86_64                                                                                                        1/1 

已安装:
  dhcp.x86_64 12:4.2.5-83.el7.centos.1     

安装好之后进行相关的配置管理

[root@localhost Packages]# rpm -qpc dhcp-4.2.5-83.el7.centos.1.x86_64.rpm  
//查看这个qpc dhcp-4.2.5-83.el7.centos.1.x86_64.rpm软件包安装完他的配置文件放在哪个路径
警告:dhcp-4.2.5-83.el7.centos.1.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
/etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd6.conf
/etc/openldap/schema/dhcp.schema
/etc/sysconfig/dhcpd
/var/lib/dhcpd/dhcpd.leases
/var/lib/dhcpd/dhcpd6.leases
[root@localhost Packages]# 
[root@localhost Packages]# cd /etc/dhcp/
[root@localhost dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@localhost dhcp]# 

[root@localhost dhcp]# vim dhcpd.conf

[root@localhost share]# cd /usr/share/doc/
[root@localhost 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@localhost doc]# 

[root@localhost doc]# cd dhcp-4.2.5/
[root@localhost dhcp-4.2.5]# 
[root@localhost dhcp-4.2.5]# 
[root@localhost dhcp-4.2.5]# pwd
/usr/share/doc/dhcp-4.2.5
[root@localhost dhcp-4.2.5]# ls
dhcpd6.conf.example  dhcpd.conf.example  ldap
[root@localhost dhcp-4.2.5]# 

[root@localhost dhcp-4.2.5]# 
[root@localhost dhcp-4.2.5]# vim dhcpd.conf.example
[root@localhost dhcp-4.2.5]# 

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

[root@localhost dhcp]# vim dhcpd.conf
[root@localhost dhcp]# 

设置

验证 

 

[root@localhost ~]# systemctl restart dhcpd  //重启
Job for dhcpd.service failed because the control process exited with error code. See "systemctl status dhcpd.service" and "journalctl -xe" for details.  //报错
[root@localhost ~]# 
root@localhost ~]# vim /var/log/messages

 

 

[root@localhost ~]# systemctl restart dhcpd

[root@localhost ~]# netstat -naup
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
udp        0      0 192.168.122.1:53        0.0.0.0:*                           1580/dnsmasq        
udp        0      0 0.0.0.0:67              0.0.0.0:*                           68813/dhcpd         
udp        0      0 0.0.0.0:67              0.0.0.0:*                           1580/dnsmasq        
udp        0      0 0.0.0.0:111             0.0.0.0:*                           730/rpcbind         
udp        0      0 127.0.0.1:323           0.0.0.0:*                           749/chronyd         
udp        0      0 0.0.0.0:51958           0.0.0.0:*                           783/avahi-daemon: r 
udp        0      0 0.0.0.0:894             0.0.0.0:*                           730/rpcbind         
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           783/avahi-daemon: r 
udp6       0      0 :::111                  :::*                                730/rpcbind         
udp6       0      0 ::1:323                 :::*                                749/chronyd         
udp6       0      0 :::894                  :::*                                730/rpcbind         
[root@localhost ~]# 

配置完毕

验证:

两台客户端虚拟机都得把网络状态设置为仅主机模式(一台linux 一台WIN)

win

自动获取到ip地址 ,掩码,网关,dhcp服务器,DNS服务器

linux系统

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost ~]# 

配置命令: 

vim /etc/dhcp/dhcpd.conf
....
subnet IP网段 netmask 掩码 {
  range 起始IP 终止IP;
  option routes 网关IP;
}

  • 17
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值