DHCP服务

在家用的路由器上,一般都会集成DHCP这个功能。DHCP服务,负责给网络内的主机分配IP和netmask,更便于主机的联网操作。

既然咱们要搭建DHCP服务,那么,咱们就不能让网络内有相关的服务存在,原因如下:

  1. 主机不知道该向谁获取IP地址

  2. DHCP服务器会发生冲突

DHCP服务,常用在大型网络环境下(如果三四台主机,那就没必要了,手动一下就行了)。但是切记,在服务器网络不要用DHCP服务,因为DHCP是由租约期的,租约期到会重新分配IP,有可能发生IP改变。服务器需要稳定的IP支持,才能保证用户的正常访问,所以为了避免服务突然没法访问。DHCP一般不会用到这里。

服务端配置

配置DHCP的前提就是网络环境内没有这个配置,所以服务端就没有分配IP,就不会有网,所以咱们先设置一下静态IP。

一般情况下,网卡配置文件在/etc/sysconfig/network-scripts,咱们编辑一下这个文件:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" #IP获取方式
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="46a79d3e-fc47-4372-a2d5-359d2e0545dd"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.139.152 #本机IP
GATEWAY=192.168.139.2 #网关
NETMASK=255.255.255.0 #子网掩码
DNS1=114.114.114.114 #DNS服务器,记得一定要添加

设置好侯,我们重新启动一下网络

systemctl restart network

咱们再查看一下IP

bash# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:7d:97:dc brd ff:ff:ff:ff:ff:ff
    inet 192.168.139.152/24 brd 192.168.139.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::1811:571e:bbd8:4a30/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

IP被绑定了,也可能没网,所以咱们ping一下外网网站。

网络一切准备就绪,开始安装服务。

在服务端,直接进行yum安装

yum install dhcp

dhcpd软件的配置文件在/etc/dhcp/dhcpd.conf,且默认是没有任何参数的。dhcpd在安装时为用户生成了配置的模板文件,咱们拷贝过来。

cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

开始编辑必要参数。参数的功能表如下:

Header 1Header 2
default-lease-time默认租约时间
max-lease-time最大租约时间
log-facility日志

以上是这个软件的最简配置参数,下来看一下我的配置文件:



default-lease-time 600;
max-lease-time 7200;
log-facility local7;

subnet 192.168.139.0 netmask 255.255.255.0 {
        range  192.168.139.100  192.168.139.200;
}

这里解释一下:

subnet是网段,就是根据netmask解析的网络IP号

netmask是子网掩码

range是IP分配的取值域

OK,可以运行服务了

systemctl start dhcpd

客户端

一般情况下只需要将获取IP方式改成DHCP就好了。

查看租约

DHCP的租约时间被保存在/var/lib/dhcpd/dhcpd.leases,查看文件。

# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.2.5

server-duid "\000\001\000\001%vq\346\000\014)}\227\334";

lease 192.168.139.131 {
  starts 0 2019/12/01 12:46:21;
  ends 0 2019/12/01 12:56:21;
  cltt 0 2019/12/01 12:46:21;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 12:51:20;
  ends 0 2019/12/01 13:01:20;
  cltt 0 2019/12/01 12:51:20;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 12:56:19;
  ends 0 2019/12/01 13:06:19;
  cltt 0 2019/12/01 12:56:19;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 13:01:18;
  ends 0 2019/12/01 13:11:18;
  cltt 0 2019/12/01 13:01:18;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 13:06:18;
  ends 0 2019/12/01 13:16:18;
  cltt 0 2019/12/01 13:06:18;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 13:11:18;
  ends 0 2019/12/01 13:21:18;
  cltt 0 2019/12/01 13:11:18;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 13:16:18;
  ends 0 2019/12/01 13:26:18;
  cltt 0 2019/12/01 13:16:18;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}
lease 192.168.139.131 {
  starts 0 2019/12/01 13:21:17;
  ends 0 2019/12/01 13:31:17;
  cltt 0 2019/12/01 13:21:17;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 00:0c:29:46:2c:87;
  uid "\001\000\014)F,\207";
}

可以看出客户端多次向服务端进行注册,且能看出租约的时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值