请教LINUX怎么配置主备DHCP服务器
第一节:安装软件包
用命令行安装软件包(在第5张光盘上)或直接“添加删除程序--网络服务器”,只要安装dhcp-301-59EL4i386rpm:
第二节:配置DHCP双机负载均衡
目前DHCP-Failover(虽然叫failover,但实际上是双机同时在工作)仅支持最多两个节点。配置文件和单机配置一样,依然是/etc/dhcpdconf;但出于方便管理的目的,在部署时,我们把地址池的配置放在/etc/dhcpdmaster文件中,然后在/etc/dhcpdconf中调用。
主节点的/etc/dhcpdconf:
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
primary;
address 101409;
port 520;
peer address 1014013;
peer port 519;
max-response-delay 60;
max-unacked-updates 10;
mclt 600;
split 128;
load balance max seconds 3;
}
include "/etc/dhcpdmaster";
次节点的/etc/dhcpdconf:
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
secondary;
address 1014013;
port 519;
peer address 101409;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
}
include "/etc/dhcpdmaster";
注意
1、两台dhcp server的时间必须同步,可用ntp
2、Dhcp Failover的互相监听地址可以采用专用网卡互相直连做心跳的方式,甚至心跳卡可以考虑双网卡绑定!从而使监听和网络数据流分开,即使网络中断亦不会因此导致dhcp双机中断,如下所示:
这种时候Failover专用接口所在网段,可在地址池中定义一个空池,不做任何地址分配操作:
subnet xxxx netmask 255255255248 {
}
本文列出的配置是采用心跳和数据网卡混用的方式。
/etc/dhcpdconf
主控服务器
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
primary;
address 101409;
port 520;
peer address 1014013;
peer port 519;
max-response-delay 60;
max-unacked-updates 20;
mclt 3600;
split 128;
load balance max seconds 3;
}
include "/etc/dhcpdmaster";
说明
说明这是正式(官方)服务器,而非测试用
动态DNS的更新方式,有3种1
不允许客户机更新DNS记录
每一个客户机对应一个租约信息(文件)2
指定本机所属failover域的识别码为dhcp
指定本机为主控服务器
指定本机的监听地址
指定本机的监听端口
对端的监听地址
对端的监听端口
最大无响应时间 60秒,如果地址池很多这个时间可加大3
在得到对端响应之前,最多连续发送20个消息
双机联系中断时所分配的地址的租约时间,3600秒
负载分担比例,取值0-256,128为平均分担负载
地址池文件
注1这个style参数必须是interim(推荐)、ad-hoc或者none
注2假如这个标志配置成true(enabled),当一个客户端发送一个DHCPREQUEST信息来租用租约时,服务器会自动释放任何这个客户的任何其他租约。服务器假定当一个客户端发送DHCPREQUEST信息时,他已忘记任何他没有在 DHCPREQUEST中提到的租约,例如,客户端只是个简单的网络接口,不能记住原来拥有而现在不用的租约。这些假定都是没有确保,而且不可证实的,因此小心使用这个语句。
注3如果这个值不够大,会发生地址池还未同步结束,就产生连接中断现象。在拥有近1万个地址池时,这个值被设为180。
/etc/dhcpdmaster
两个节点的地址池配置必须保持完全一致。
option domain-name-servers 101409,1014013;
default-lease-time 21600;
max-lease-time 43200;
subnet 101408 netmask 255255255248 {
option routers 1014014;
pool {
failover peer "dhcp";
range 1014011 1014012;
deny dynamic bootp clients;
}
}
#shuniu
subnet 10000 netmask 2552552240 {
option routers 10031254;
pool {
failover peer "dhcp";
range 10001 10031250;
deny dynamic bootp clients;
}
}
有多少个网段就有多少个地址池,一个个配置下去。
域名服务器
默认租约时间(6小时)
最大租约时间
定义子网/掩码
定义子网的网关
地址池
属于名为 dhcp 的failover组
地址范围,可多条range
拒绝bootp客户端
第三节:管理操作
在两个节点依次启动dhcp服务,先主后备。
# service dhcpd start
配置自动启动
# chkconfig dhcpd on
验证
# netstat -anutp | grep dhcpd
udp 0 0 0000:67 0000: 6581/dhcpd
查看地址租借信息
# cat /var/lib/dhcp/dhcpdleases
31、租约文件
dhcpd每次都会把所有的租借信息写到/var/lib/dhcpdleases文件中,上一次的租借文件被改名成dhcpdleases~
32、地址池同步
每次重启DHCP服务时,双机都会自动执行地址池同步操作。
在次服务器上:
# service dhcpd congrestart
33、查看日志信息
凡是有任何和DHCP服务器的地址分配有关的故障,都可以通过查看日志文件分析出原因并得以处理。
# tail -f /var/log/messages
其他的故障绝大部分是由于作为中转的DHCP-RELAY设备配置有问题导致。
34、简要故障
1、某台服务器无法为某个网段的客户机提供地址租借服务
有时会由于某种原因导致双机地址池无法合理分配,比如主服务器掌控了某个地址池的所有地址,这时需要先停止两个节点的dhcp服务,删除两个节点的地址租约文件,然后依次重启服务。
2、无法形成双机
请注意两个节点的时间是否一致,如果时间差距太大,比如2分钟,两台dhcp服务器将无法形成集群。可通过配置ntp保持两个节点的时间同步。
DHCP服务在linux下算是最简单的服务了。
DHCP服务的配置。
DHCP简介:
DHCP动态主机配置协议,在一个小型局域网里可以通过手工指定ip地址的方式,但如有大量的主机,如果还是手工指定,那是一个很大的工作量,而且也容易出错,这时,就可以通过配置一台DHCP服务器来解决,为每台主机分配一个ip地址。DHCP作用域是指DHCP服务器可分配给DHCP客户端的IP地址范围,一个DHCP服务器至少要一个作用域,如有多个作用域,作用域之间的IP地址不能重叠。
DHCP的工作原理:
DHCP工作过程分为四个步骤:
第一步(DHCPDISCOVER):客户端发送广播查找可以给自己提供IP地址的DHCP服务器,
第二步(DHCPOFFER):DHCP服务器发送广播提供一个可用的IP地址,并在地址池中将该地址打上标记,以防再次分配。
第三步(DHCPREQUEST):客户端收到广播后再次发送一个广播请求该地址,如果有多台DHCP响应,则第一个收到的优先。
第四步(DHCPACK):DHCP服务器收到广播后再发送一个广播,确认该地址分配给这台主机使用,并在地址池中将该地址打上标记,以防再次分配。
DHCP的基本配置:
第一步:安装软件:
[root@localhost ~]# rpm -ivh /misc/cd/Server/dhcp-305-18el5i386rpm
第二步:编辑配置文件:
[root@localhost ~]# vi /etc/dhcpdconf
# see /usr/share/doc/dhcp/dhcpdconfsample
当进入到配置文件里面时,这里是空的,有如上一行的提示,说可以参考这个文件来编写配置文件,那就复制一份再编辑。
[root@localhost ~]# cp -rvf /usr/share/doc/dhcp-305/dhcpdconfsample /etc/dhcpdconf
[root@localhost ~]# vi /etc/dhcpdconf
ddns-update-style interim; //配置DHCP和DNS为互动更新模式,
ignore client-updates; //忽略客户端的更新。
subnet 1921681000 netmask 2552552550 { //定义作用域
option routers 1921681001; //默认路由
option subnet-mask 2552552550; //子网掩码
option nis-domain "rhelcom"; //NIS域名
option domain-name "rhelcom"; //DNS域名
option domain-name-servers 19216810010; //DNS服务器地址
option time-offset -18000; # Eastern Standard Time //为客户端设置与格林威治的时间偏移
option ntp-servers 19216811; //网络时间服务器地址
option netbios-name-servers 19216811; //指定WINS服务器地址
range dynamic-bootp 192168100128 192168100254; //动态分配的地址范围
default-lease-time 21600; //默认租约时间
max-lease-time 43200; //最大租约时间
host abc { //指定特定主机
hardware ethernet 00:0C:29:FD:44:C8; //硬件地址
fixed-address 19216810030; //IP地址
}
}
如有多个要绑定的主机时可以把所有主机信息用group{ }包括起来,这样更方便管理。格式如下 :
group {
……这里不可以添加一些佤全局选项,这样就不用在每个里面写了。
host abc {
……
……
}
host xyz {
……
……
}
}
[root@localhost ~]# service dhcpd restart
测试:
在linux下:
首先让地址从DHCP获取:
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
[root@localhost ~]# service network restart //重启一下网络服务,这里不能使用ifdown和ifup,因为要配置路由信息。
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:FD:44:C8
inet addr:19216810030 Bcast:192168100255 Mask:2552552550
这就是绑定的IP地址。
[root@localhost ~]# cat /etc/resolvconf
; generated by /sbin/dhclient-script
search rhelcom
nameserver 19216810010
这里的DNS服务器地址也获取到了。
[root@localhost ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
1921681000 0000 2552552550 U 0 0 0 eth0
16925400 0000 25525500 U 0 0 0 eth0
0000 1921681001 0000 UG 0 0 0 eth0
默认路由也获取到了。查看一下端口:
[root@localhost ~]# netstat -tlunp | grep 68
udp 0 0 0000:68 0000 16150/dhclient
查看客户端的租约文件:
lease {
interface "eth0";
fixed-address 19216810030; //固定地址
option subnet-mask 2552552550; //子网掩码
option time-offset -18000; //时间偏移
option routers 1921681001; //默认路由
option dhcp-lease-time 21600; //租约时间
option dhcp-message-type 5;
option domain-name-servers 19216810010;
option dhcp-server-identifier 19216810020;
option nis-domain "rhelcom";
option domain-name "rhelcom";
renew 5 2010/4/9 09:01:40;
rebind 5 2010/4/9 11:34:53;
expire 5 2010/4/9 12:19:53;
}
windows下:
把IP地址设成自动获取。
C:\Documents and Settings\Administrator>ipconfig /all
Connection-specific DNS Suffix : rhelcom
Physical Address : 00-0C-29-D3-C6-B3
Dhcp Enabled : Yes
Autoconfiguration Enabled : Yes
IP Address : 192168100253
Subnet Mask : 2552552550
Default Gateway : 1921681001
DHCP Server : 19216810020
DNS Servers : 19216810010
Lease Obtained : 2010年4月9日 14:44:12
Lease Expires : 2010年4月9日 20:44:12
基本配置完成。
步骤 1:在 Ubuntu 中安装 DHCP 服务器
1、 运行下面的命令来安装 DHCP 服务器包,也就是 dhcp3-server。
$ sudo apt install isc-dhcp-server
2、 安装完成后,编辑 /etc/default/isc-dhcp-server 使用 INTERFACES 选项定义 DHCPD 响应 DHCP 请求所使用的接口。
比如,如果你想让 DHCPD 守护进程监听 eth0,按如下设置:
INTERFACES="eth0"
同样记得为上面的接口配置静态地址。
步骤 2:在 Ubuntu 中配置 DHCP 服务器
1、 DHCP 配置的主文件是 /etc/dhcp/dhcpdconf, 你必须填写会发送到客户端的所有网络信息。
并且 DHCP 配置中定义了两种不同的声明,它们是:
parameters - 指定如何执行任务、是否执行任务,还有指定要发送给 DHCP 客户端的网络配置选项。
declarations - 定义网络拓扑、指定客户端、为客户端提供地址,或将一组参数应用于一组声明。
2、 现在打开并修改主文件,定义 DHCP 服务器选项:
$ sudo vi /etc/dhcp/dhcpdconf
在文件顶部设置以下全局参数,它们将应用于下面的所有声明(请指定适用于你情况的值):
option domain-name "tecmintlan";
option domain-name-servers ns1tecmintlan, ns2tecmintlan;
default-lease-time 3600; max-lease-time 7200;
authoritative;
3、 现在定义一个子网,这里我们为 192168100/24 局域网设置 DHCP (请使用适用你情况的参数):
subnet 192168100 netmask 2552552550
{
option routers 192168101;
option subnet-mask 2552552550;
option domain-search "tecmintlan";
option domain-name-servers 192168101;
range 1921681010 19216810100;
range 19216810110 19216810200;
}
步骤 3:在 DHCP 客户端上配置静态地址
1、 要给特定的客户机分配一个固定的(静态)的 IP,你需要显式将这台机器的 MAC 地址以及静态分配的地址添加到下面这部分。
host centos-node
{
hardware ethernet 00:f0:m4:6y:89:0g;
fixed-address 19216810105;
}
host fedora-node
{
hardware ethernet 00:4g:8h:13:8h:3a;
fixed-address 19216810106;
}
保存并关闭文件。
2、 接下来,启动 DHCP 服务,并让它下次开机自启动,如下所示:
------------ SystemD ------------
$ sudo systemctl start isc-dhcp-serverservice
$ sudo systemctl enable isc-dhcp-serverservice
------------ SysVinit ------------
$ sudo service isc-dhcp-serverservice start
$ sudo service isc-dhcp-serverservice enable
3、 接下来不要忘记允许 DHCP 服务(DHCP 守护进程监听 67 UDP 端口)的防火墙权限:
$ sudo ufw allow 67/udp
$ sudo ufw reload $ sudo ufw show
步骤 4:配置 DHCP 客户端
1、 此时,你可以将客户端计算机配置为自动从 DHCP 服务器接收 IP 地址。
登录到客户端并编辑以太网接口的配置文件(注意接口名称/号码):
$ sudo vi /etc/network/interfaces
定义如下选项:
auto eth0 iface eth0 inet dhcp
保存文件并退出。重启网络服务(或重启系统):
------------ SystemD ------------
$ sudo systemctl restart networking
------------ SysVinit ------------
$ sudo service networking restart
另外你也可以使用 GUI 来在进行设置,如截图所示(在 Fedora 25 桌面中)设置将方式设为自动(DHCP)。
此时,如果所有设置完成了,你的客户端应该可以自动从 DHCP 服务器接收 IP 地址了。
就是这样了!在本篇教程中,我们向你展示了如何在 Ubuntu/Debian 设置 DHCP 服务器。在反馈栏中分享你的想法。如果你正在使用基于 Fedora 的发行版,请阅读如何在 CentOS/RHEL 中设置 DHCP 服务器。
linux下dhcp服务配置教程
发布于 2017-09-05 12:06:09 | 109 次阅读 | 评论: 0 | 来源: 网友投递
LinuxLinux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。
这篇文章主要为大家详细介绍了linux下dhcp服务的配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
1、DHCP简介
(1)DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个简化主机IP地址分配管理的TCP/IP标准协议,用户可以利用DHCP服务器管理动态的IP地址分配及其他相关的环境配置工作,如:DNS服务器、WINS服务器、Gateway(网关)的设置。
(2)DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端提供自动分配IP地址的服务。
(3)安装了DHCP服务软件的服务器称为DHCP服务器,启用了DHCP功能的客户机称为DHCP客户端。
2、实验要求
架设一台DHCP服务器,并按照下面的要求进行配置:
(1)为子网19216800/24建立一个IP作用域,并将在1921680100~1921680149范围之内的IP地址动态分配给客户机。
(2)假设子网中的DNS服务器地址为1921680253,域名为alicecom,将这些参数指定给客户机使用。
(3)为某台主机保留1921680120这个IP地址。
配置2台DHCP客户机,试测试DHCP服务器的功能。
根据要求完成上述DHCP实验,要求撰写完整实验教程(实验拓扑图、图文并茂的实验步骤 )
3、实验拓扑
4、实验步骤
(1)先挂载镜像,配置本地yum源
(2)解决网卡不一致问题,配置各主机IP地址
(3)将3台主机加入NAT网络,同时将NAT模式的DHCP功能关闭
(4)在dhcp-s上安装dhcp服务器(默认未安装)
[root@lyy 桌面]# yum install dhcp -y
(5)修改dhcpconf配置文件
[root@lyy 桌面]# gedit /etc/dhcp/dhcpconf /usr/share/doc/dhcp/dhcpconfsample
/usr/share/doc/dhcp/dhcpconfsample:是系统自带的dhcp配置文件的模板,可以根据需要参考复制相应内容
注意:配置文件一定要写正确,否则dhcp服务不能启动成功,如漏写 { 或 ;等等
(6)启动dhcp服务
[root@lyy 桌面]# service dhcpd start //注意是httpd
(7)修改dhcp-c1的BOOTPROTO为dhcp
[root@lyy 桌面]# gedit /etc/sysconfig/network-scripts/ifcfg-eth0
(同样的方法修改dhcp-c2)
(8)分别重启dhcp-c1和dhcp-c2的网络服务
5、结果测试
查看dhcp-c1和dhcp-c2获取的ip
dhcp-c1:
dhcp-c2:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHPERZ。
相关阅读:
linux下dhcp服务配置教程
Linux操作系统安装图文配置教程详细版
linux下的dhcp服务的完全配置(图文详解)
linux下NFS配置教程详解
Linux下Varnish缓存的配置优化方法
Linux 操作系统下Web服务器配置详细介绍
Linux下防火墙的简单配置与插入规则介绍
linux下配置yum源方法详解
Linux下安装配置MySQL
linux防火墙配置教程之允许转发实验(2)
Linux 下sftp配置之密钥方式登录详解
linux下通过xinetd服务管理 rsync 实现开机自启动
0条评论