如何在Debian Linux上安装配置ISC DHCP服务器
工具/原料
一台Linux主机或虚拟机(这里CentOS 65为例)
编译源码或软件源方式安装dhcp软件
方法/步骤
首先我们先了解下 DHCP,DHCP采用客户端/服务器的工作模式,由客户端向服务器发出获取IP地址的请求,服务器接收到请求后会把网络配置信息发送给客户端,实现IP地址的动态分配。DHCP提供三种地址分配策略:
1:手工分配 在服务器上指定为哪些主机分配固定的IP,也就是说这些主机永远获取的都是给它们设置好的IP。
2:自动分配 地址分配给客户机后,这个地址就永远给了客户机。这样客户机不在线也不会回收IP,会造成浪费,不同于手工分配。
3:动态分配 也是用的最多的策略了,它将IP地址分配出去后会有个租约,等租约时间到了,就会回收IP,如果主机还在线,在租约时间快到时,会向DHCP服务器发送续约请求,以便继续使用。
以上手工分配适合于打印机、其他提供web服务、ftp服务的主机等,因为它们需要一个固定的IP地址。动态分配能有效解决IP地址不够用的问题,租约到期后被回收的IP地址会重新给新请求的客户端使用。
DHCP的安装可以通过从软件源直接安装或自己编译安装。编译安装的话下载地址在:https://wwwiscorg/downloads/
这里选择编译安装DHCP,下图为DHCP源码包的官方下载页面,我们选择最新版dhcp-431targz
首先我们先解压源码包
# tar xf dhcp-431targz
指定安装目录和配置文件目录
# cd dhcp-431
# /configure --prefix=/usr/local/dhcp --sysconfdir=/etc
配置过程非常快,等配置完了可以echo $确定下是否成功
接着就可以编译安装了,请耐心等待编译完成
# make && make install
如果采用软件源安装的话直接 " yum install dhcp "即可,不过版本会比较旧
接着将配置文件复制过去,在安装目录的 server 目录中
# cp server/dhcpdconfexample /etc/dhcpdconf
生产地址池文件,用于记录已经分配出去的IP地址
# touch /var/db/dhcpdleases
接着修改配置文件,在最后添加提供服务的网段
subnet 10000 netmask 255000
{
range 100050 1000100;
}
我这里为10000网段提供服务,range定义了地址池,记得修改成适合你们的,然后就可以试着启动服务了。
# /usr/local/dhcp/sbin/dhcpd
如果是以软件源方式安装的dhcp软件,直接 service dhcpd start
我们可以用" killall dhcpd "来结束服务
服务启动后可以用 " ps aux | grep dhcpd "查看下启动的进程,DHCP服务监听 udp 67 端口,客户端以广播的方式请求IP地址,整个局域网内,没开启DHCP服务的主机就忽视掉了请求,DHCP服务器就会响应这个请求,如果同时有多个DHCP服务器在工作肯定看哪个响应的快喽!
接下来再启动台主机试试效果把,我又启动了一台XP,让其自动获取IP地址,看 是不是获取了地址池中第一个IP "100050"呢
接下来看下dhcpd的配置文件 " /etc/dhcpdconf "
dhcpdconf中由声明、注释、参数、选项四大类语句构成
注释就是"#"开头的注释信息。声明定义网络布局,刚才的subnet就属于声明。参数是定义dhcpd服务的各种网络参数,如租约的时间、主机名等。选项是以option作为开始,为客户机指定主机名、广播地址、子网掩码等
声明:
include "filename" 将指定的文件内容添加到配置文件中
shared-network 名称 {
参数
声明
} 指定共享相同网络的子网
subnet 网段 netmask 子网掩码 {
参数
声明
} 定义哪些IP分配给客户,一般与range结合使用
range 起始地址 终止地址; 定义IP范围,终止地址可以没有
host 主机名 {
参数
声明
} 定义保留地址
group {
参数
声明
} 为一组参数提供声明
参数:
ddns-hostname 名称 指定使用的主机名,不设置默认当前主机名
ddns-domainname 名称 指定域名
ddns-update-style 参数 指定DNS的更新模式 { ad-hoc | interim | none }
default-lease-time 时间 默认租约时间(单位秒)
max-lease-time 时间 最大租约时间
server-name 名称 告诉客户端服务器的名称
hardware 接口类型 硬件地址 指定客户机硬件接口类型和mac地址
fixed-address IP地址 ,IP地址 为客户端提供一个或多个IP地址,该参数只能出现在host声明中
选项: 前面需加option
broadcast-address 广播地址 指定客户端广播地址
domain-name 域名 指定客户端域名
domain-name-servers 地址 指定客户端的DNS服务器
host-name 主机名 指定客户端主机名
ntp-server 地址 指定时间服务器地址
routers 地址 指定默认网关IP
subnet-mask 子网掩码 指定客户端子网掩码
比如我们为10000网段提供服务,DNS服务器为8888,网关为1000254,子网掩码为255000,默认租约时间6小时
subnet 10000 netmask 255000
{
range 100050 1000100;
option subnet-mask 255000;
option routers 1000254;
option domain-name-servers 8888;
default-lease-time 21600;
}
看看是不是网关和DNS也被自动获取了呢。注意都要以分号结束哦
现在再试试为其配置指定的IP地址,我们先把要指定主机的网卡mac地址记下来,然后给他配置10101010这个IP
subnet 10000 netmask 255000
{
range 100050 1000100;
option subnet-mask 255000;
option routers 1000254;
option domain-name-servers 8888;
server-name mydhcp;
default-lease-time 21600;
host winXP {
hardware ethernet 00:0C:29:6E:4B:A1;
fixed-address 10101010;
}
}
这回使用了 ipconfig -all 显示的更详细了,这里连服务器的地址也列出来了,也可以使用这个参数查看网卡的mac地址
11
演示用的是Windows主机,如果是Linux主机需要修改网卡的配置文件,设置"BOOTPROTO=dhcp",然后可以通过 dhclient eth0 来给eth0这块网卡获取IP地址。
1,应该是安装好了,现在手头没有linux可以看一下到底是几个软件包,你可以到/etc/initd/dhcpd 有没有这个启动文件,有的话一般是安装好的,一般用yum安装这样才不会漏装支持包。
2,以下是基于redhat,centos的教程,
安装DHCP服务器组件(yum安装不会漏装支持包):
[root@CentOS ~]#yum -y install dhcp
配置DHCP:
DHCP配置文件为/etc/dhcpdconf,但该文件默认是没有内容的,可以从dhcp安装目录复制一个到/etc下。
[root@CentOS ~]#cp /usr/share/doc/dhcp-305/dhcpdconfsample /etc/dhcpdconf
(安装的版本可能不一样,配置文件目录也会改变,注意)
[root@CentOS ~]#vi /etc/dhcpdconf
ddns-update-style none; #不要更新DDNS的设置
subnet 19216800 netmask 2552552550 {
option routers 1921680254; #网关
option subnet-mask 2552552550; #子网掩码
option domain-name “mycentos"; #域名
option domain-name-servers 1921680254,202103068; #域名服务器地址
range 19216801 1921680254; #提供的IP地址段
default-lease-time 21600; #默认租期
max-lease-time 43200; #最大租期
}
#以下内容为特定机器保留的IP(如果没有特殊需求,乎略这一步)
host game {
hardware ethernet 00:11:22:33:44:55;
fixed-address 1921680123;
}
编辑/etc/sysconfig/dhcpd文件为:
# Command line options here
DHCPDARGS=eth0
启动DHCP服务器
[root@CentOS ~]#service dhcpd start
让dhcp服务随系统而启动:
[root@CentOS ~]#chkconfig dhcpd on
3,网卡当然要设置固定IP了,还有网关了。虚拟网卡要用桥接。
4,防火墙最好关掉,不然要放行端口,端口号忘了,与宿主机无关,宿主要的防火墙最好也关了。
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
基本配置完成。
花开半夏
linux dhcp命令,linux服务器搭建网络
admin 07-06 21:33 53次浏览
一、基础知识: 1DHCP简介:动态配置协议(DHCP )通常应用于大型局域网环境,主要作用是集中管理、IP地址分配、网络2 允许获取网关地址2DHCP服务器概述:DHCP服务器是指由服务器管理的IP地址范围,客户端登录到服务器时,分配给服务器的IP地址和子网掩码会自动显示2 关于DHCP服务器的配置:今天我们来做一个DHCP服务器吧。
使用虚拟机server作为dhcp服务器并使用destop进行测试
为了方便起见,将服务器主机名更改为dhcpservercom,将桌面主机名更改为dhcptestcom
然后,在名为dhcpservercom的主机上配置它。
1 查看服务器的ip
查看DHCP服务依赖包:
安装DHCP服务:
4 进行配置:
)1)启动dhcp服务
修改systemctlstartdhcpd(2)配置文件
CP/usr/share/doc/DHCP-425/dhcpdconfexample/etc/DHCPconf vim/etc/dhcpdconf
修改以下部分:
7选项域名称' servercom '; #域名:必须位于/etc/resolvconf8option domain-name-servers 1722510254; 请指定dns服务器,并用逗号分隔多台。 0 subnet 17225100net mask 2552552550 { # #子网和子网掩码31range1722510101722510; #指定IP范围32选项路由1722510254; ##指定默认网关33 }要删除34 # # # #、28行、34行及以下内容,请在dnstestcom上进行以下设置。
(1)网络参数的设定:
编辑/etc/sys config/network-scripts/if CFG-eth 0
DEVICE=eth0BOOTPROTO=dhcp###重要部分重新启动DHCPonboot=yes(2)网络:
systemctl restart network###在这次的实验中,执行这个命令发生了错误,出现了无法从DHCP服务器取得ip的问题。 解决方案通常是,DHCP是一种通信协议,仅当DHCP服务器位于通过客户端向物理网段中的所有主机发送广播包的LAN中时,它才会响应客户端的ip参数整个DHCP数据包的服务器和客户端之间的交互如下图(1) ) ##,因此我们推测防火墙阻止数据包传输。 ###我采取的解决方法是两台虚拟机执行命令。 firewall-cmd-- permanent-- add-service=DHCP firewall
(图)1) DHCP数据包的服务器和客户机之间的交互的映像) )。
测试机在DHCP服务器上获取ip :
)3)重新启动整个网络后,如果运行结果找到正确的DHCP主机,以下文件可能会更改:
#1查看/etc/resolvconf
#2查看路由
#3显示记录在服务器中的DHCP信息cat /var/lib/dhcpd/dhcpdleases
三一个结构示例cat /etc/dhcp/dhcpdconf
# dhcpdconf # # sampleconfigurationfileforiscdhcpd # # optiondefinitionscommontoallsupportednetworks option domain-name 默认读时间600; 最大读时间7200; # usethistoenble/disabledynamicdnsupdatesglobally# ddns-update-style none; # ifthisdhcpserveristheofficialdhcpserverforthelocal # network, theauthoritativedirectiveshouldbeuncommented# authoritative # usethistosendhcplogmessagestoadifferentlogfile (you also # ) havetohacksyslogconftocompletetheredirection )log-facil ility # noservicewillbegivenonthissubnet, utdeclaringithelpsthe # dhcpservertounderstandthenetworktopology# thisisaverybasicsubnetdeclarationsubnet 1921680 op )本文术语概要来自,理论部分摘自亲爱的鸟哥,部分参考博文DHCP详细解说,在此一并感谢!
汇总不同聚合级别的数据-R和tidyverseRocketMQ 消息失败重试 解析——图解
linux系统网络怎么设置,linux系统网卡配置信息
dhcp怎么设置,dhcp服务没有响应怎么解决
相关内容
1汇总不同聚合级别的数据-R和tidyverse
2RocketMQ 消息失败重试 解析——图解、源码级解析
3android模拟位置软件,android手机模拟ios
4安卓anr是什么,ANR是什么单位
5Java 线程 基础篇,魔法教程基础篇
6ios测帧数,ios测帧数软件
7envoys是什么牌子,envoy词根词缀
8mysql刷盘策略,mysql binlog刷盘
© 2007-2022 花开半夏 版权所有 ICP备案: 鲁ICP备18044594号-1 鲁公网安备 37030202000467号
上一篇下一篇
原理同windows
一、设置网卡信息vi /etc/sysconfig/network-scripts/ifcfg-eth0文件 (注意eth0为第一块网卡地址,请根据本机网卡名称不同调整)
DEVICE=eth0 #物理设备名
IPADDR=1921681X #设置为IP地址(此处用于静态IP,如果是动态分配则不用设置)
NETMASK=2552552550 #掩码
GATEWAY=19216811 #网关地址(请根据具体情况设置,如子网为19216810X,一般网关为192168101)
ONBOOT=yes
BOOTPROTO=static #[none|static|bootp|dhcp](不使用协议|静态分配|BOOTP协议|DHCP协议)(如果是动态选择dhcp)
二、修改网关
vi /etc/sysconfig/network(其实一步骤中也有网关,可二选一设置)
NETWORKING=yes
HOSTNAME=Aaron
GATEWAY=19216811
三、修改DNS
vi /etc/resolvconf
nameserver 202109145 #主DNS(请根据区域进行百度,如关键字 :福建省 电信DNS地址)
search localdomain
四、重新启动网络配置
service network restart
即可
我的服务器用的是小鸟云的,性能稳定,性价比高。访问很流畅。
一首先了解DHCP的概念
DHCP是实现主机IP地址DNS等动态配置的网络协议
DNCP可以在多种操作系统中实现,包括最常用的LINUX系统和WINDOWS系统
DHCP网络服务的结构中具有服务器和客户机两个角色
DHCP服务器用于为网络中所有的DHCP客户机提供网络配置信息,在同一网络中,
DHCP服务器通常是唯一存在在
网络中的任何主机都可以配置成为DHCP客户机,向DHCP服务器发出配置请求并按照服务器返回的信息进行网络配置
二DHCP服务器能够提供的网络配置信息
1网络接口的IP地址和子网掩码
2网络接口的IP地址对应的网络地址和广播地址
3默认网关地址
4DNS服务器地址
三DHCP服务器的配置
1安装DHCP服务器软件(在RHEL4系统的安装光盘中包括RPM格式的DHCP服务器软件包,包文件的名称是dhcp-301-12_ELi386rpm),在RHEL4的第4安装光盘中,在同一张安装盘中还包括与DHCP相关的其它软件包
# cd /media/cdrom/rehat/rpms/
#ks -l dhcp
dhcp-301-12_ELi386,rpm在REL4中没有被默认安装,需要手动安装
#rpm -qa | grep dhcp
#rpm -ivh dhcp-301-12_ELi386rpm
2其中/usr/sbin/dhcpd 是DHCP服务器的执行文件,/etc/rcd/initd/dhcpd是DHCP服务器的启动脚本,虽然文件名都是DHCPD,但是文件位于不同的目录,功能也不一样
DHCPDCONF配置文件以及建立配置文件和配置文件的格式
#ls /etc/dhcp
#vi /etc/dhcpdconf
如:
subnet 19216810 netmask 2552552550 {
range 1921681100 1921681200;
}
3全局设置
全局设置是DHCPDCONF配置文件中不包括在任何声明中的配置项(参数或选项),
作用于整个配置文件当声明中没有相应的配置项时将使用全局配置项的设置,当声明
中有相应的设置项时将使用本声明中设置,而不采用全局设置项的值
DHCPCONF配置文件中常用的全局设置如下:
1) ddns-update-style参数用来设置DHCP服务器与DNS服务器的动态信息更新模式
2) 默认租约时间使用default-lease-time参数设置,参数值的单位是秒
3) 最大租约时间使用max-lease-time参数设置,参数值的单位是秒
4) 主机所在域的名称使用domain-name先项进行设置,设置的域名将与主机名称一起组成
主机全名
5)DNS服务器地址使用domain-name-servers选项进行设置,设置的值为DHCP客户端需要使用的DNS服务器的IP地址
6)使用subnet声明设置子网属性
subnet 是DHCPCONF文件中最常用的声明,用于在子网中设置动态分配的地址的网络属性,subnet声明中可包括其他的参数就不再说了
4DHCP服务器的启动与停止及重起\和DHCP服务的状态
#service dhcpd start
#service dhcpd stop
#service dhcpd restart
#service dhcpd status
三DHCP配置实例
如
默认租约时间为21600S
最大租约时间为43200S
局域网内所有主机动的域名为abccom
客户机使用的DNS服务器的IP地址是19216811
声明在子网19216810/24中用于动态分配的IP地址范围是1921681100~~~1921681200所分配的子网掩码是2552552550默认网关是19216811
在子网19216810/24中有名为server01的服务器主机,需要的固定分配IP地址是19216811,
#vi /etc/dhcpdconf
ddns-update-style interim;
default-lease-time 21600;
max-lease-time 43200;
option domaion-name "abccom;
option domain-name-servers 19216811;
subnet 19216810 netmask 2552552550 {
range 1921681100 1921681200;
option subnet-mask 2552552550;
option routers 19216811;
host server01 {
hardware ethernet bo:co:c3:22:46:81;
fixed-address 192168111;
}
}
0条评论