linux7dhcpd服务命令,CentOS7系统架设DHCP服务

我架设DHCP服务使用的是CentOS 7.0.1406,核心版本号为3.10.0-123.el7.x86_64。CentOS系统安装在虚拟机上面,然后通过虚拟网卡来串接到GNS 3中架设的虚拟网络上面。整个网络拓扑是这样的:

106252243_1.jpg

如果你不是很清楚虚拟机中的CentOS系统到底是怎么接到GNS 3中的虚拟网络上面,也没关系,就把上图中的那个标注为虚拟机的PC看做是运行着CentOS 7系统的服务器就行了。我这篇文章也只是介绍怎么在CentOS 7系统上架设DHCP服务,并不介绍关于GNS 3的使用和网络的知识。

要架设DHCP服务,可按照如下步骤进行:

1.安装DHCP软件

安装DHCP软件使用命令:yum install dhcp

安装完成后,就可看到有dhcp.x86_64这个软件,如下图所示。另外两个软件(dhcp-common.x86_64和dhcp-libs.x86_64)是连带安装上去的。

106252243_2.jpg

2.设置配置文件/etc/dhcp/dhcpd.conf

安装好DHCP软件后,就需要设置配置文件/etc/dhcp/dhcpd.conf。要设置dhcpd.conf这个配置文件,可以先看一下档案/usr/share/doc/dhcp*/dhcpd.conf.example,里面有一些例子和简单的说明。也可以使用命令man 5 dhcpd.conf查看更详细的说明。

在我这个案例中,我是这么设置dhcpd.conf文档的:

---------------------------------------------------------------------------------------------------------------------------------

[root@localhost~]# vim /etc/dhcp/dhcpd.conf

authoritative;

default-lease-time600;

max-lease-time7200;

optiondomain-name "test.com";

optiondomain-name-servers 114.114.114.114;

#

#authoritative指明本DHCP服务器是所服务网段的官方DHCP服务器。一般情况下,配置文件中要设置authoritative,如果不设置,可能会有一些问题。

#default-lease-time设置默认租约有效期,以秒为单位。如果客户端在请求IP地址时并未要求租约有效期,DHCP服务器就会将租约有效期设置为这个值。

#max-lease-time,单位为秒。在鸟哥的书中,这个值是设置客户端可请求的最大租约有效期,而不是客户端所能使用一个IP的最长时间。man文档里面也有解释“Time should be the maximumlength in seconds that will be assigned to a lease”,不过这到底是哪个意思,我就不太确定了。

#optiondomain-name设置域名。

#optiondomain-name-servers设置DNS服务器,这里只设置了一个DNS服务器,也可以设置两个 ,格式参照文档/usr/share/doc/dhcp*/dhcpd.conf.example。

#

subnet172.31.3.0 netmask 255.255.255.0 {

range 172.31.3.10 172.31.3.200;

option routers 172.31.3.254;

option broadcast-address 172.31.3.255;

}

host pc2 {

hardware ethernet 00:50:79:66:68:01;

fixed-address 172.31.3.201;

}

#

subnet172.31.1.0 netmask 255.255.255.0 {

range 172.31.1.10 172.31.1.200;

option routers 172.31.1.254;

option broadcast-address 172.31.1.255;

}

host pc4 {

hardware ethernet 00:50:79:66:68:03;

fixed-address 172.31.1.201;

}

host pc5 {

hardware ethernet 00:50:79:66:68:04;

fixed-address 172.31.1.202;

}

#

#subnet语句指定子网和子网掩码。

#range语句指定可动态分配的IP的IP地址范围。

#option routers语句指定网关地址。

#optionbroadcast-address指定广播地址。这个不是很确定是不是一定要设置,在我这个虚拟网络中,不设置也能正常运行,但在实际网络中,不设置的话不知道会不会有问题。

#host语句可以给指定MAC地址(hardware ethernet所设置的值)的主机分配固定的IP地址(fixed-address所设置的值)。host后面接的那个是一个名称来的(如pc2),这个名称是可以随便设置的,不用跟实际的主机名一致,但是该名称在本配置文件中必须是唯一的。

---------------------------------------------------------------------------------------------------------------------------------

3.启动dhcpd服务

设置完配置文件后,最后就是启动dhcpd服务了,使用命令:systemctl start dhcpd.service

如果没什么问题的话,DHCP服务器就部署好了。此时,可以查看到dhcpd在监听端口67,如下图所示:

106252243_3.jpg

如果服务未成功启动的话,此时可以查看一下/var/log/messages日志文件(使用命令cat/var/log/messages | grep dhcp),默认DHCP的日志都会记录在该文件中。如果要查看已分配的IP,可以查看文件/var/lib/dhcpd/dhcpd.leases,不过好像里面只会记录了动态分配的IP,而不会记录固定IP(如前面配置文件中的172.31.3.201),即使该IP已被分配出去。正如前面已经提到的,要了解配置文件dhcpd.conf的更详细配置信息,可查看man文档(使用命令man 5 dhcpd.conf)。而要了解配置文件dhcpd.conf里面各option的详细信息,则要查看另一个man文档(使用命令man 5 dhcp-options)。

要查看服务状态的话,可使用命令systemctl statusdhcpd.service。如果要停止DHCP服务的话,则是使用命令systemctl stop dhcpd.service。修改配置文件后,要使配置文件生效,则可使用命令systemctl restart dhcpd.service。当然,如果是在实际生产环境中,就不能随意改变配置文件并重启DHCP服务了,而是要使用omshell这个命令,按官方文档的说法,这个命令可以在服务不中止的情况下改变配置。

4.设置服务开机启动

要设置dhcpd服务开机启动,使用命令:systemctl enable dhcpd.service。

如果要检查服务是否的确已设置为开机启动,可使用命令systemctl list-unit-files。如果要取消服务开机启动,可使用命令systemctldisable dhcpd.service。

5.检查测试

到上面为止,所有的配置都已完成。最后,就是要看一下客户端能否通过DHCP协议正常获取IP了:

106252243_4.jpg

可以看到,所有客户端都有正常获取到IP,子网掩码和网关也都是正确的。

注:上面的很多信息主要来自于红帽的官方文档,附上链接https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/,打开链接后,里面有个Networking Guide,就在这个文档里面有介绍如何架设DHCP服务器,有兴趣可以看看。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值