DHCP是实现主机IP地址DNS等动态配置的网络协议.
DNCP可以在多种 *** 作系统中实现,包括最常用的LINUX系统和WINDOWS系统
DHCP网络服务的结构中具有服务器和客户机两个角色
DHCP服务器用于为网络中所有的DHCP客户机提供网络配置信息,在同一网络中,
DHCP服务器通常是唯一存在在.
网络中的任何主机都可以配置成为DHCP客户机,向DHCP服务器发出配置请求并按照服务器返回的信息进行网络配置
二.DHCP服务器能够提供的网络配置信息
1.网络接口的IP地址和子网掩码.
2.网络接口的IP地址对应的网络地址和广播地址
3.默认网关地址
4.DNS服务器地址
三.DHCP服务器的配置
1.安装DHCP服务器软件(在RHEL4系统的安装光盘中包括RPM格式的DHCP服务器软件包,包文件的名称是dhcp-3.0.1-12_EL.i386.rpm),在RHEL4的第4安装光盘中,在同一张安装盘中还包括与DHCP相关的其它软件包
# cd /media/cdrom/rehat/rpms/
#ks -l dhcp*
dhcp-3.0.1-12_EL.i386,rpm在REL4中没有被默认安装,需要手动安装
#rpm -qa | grep dhcp
#rpm -ivh dhcp-3.0.1-12_EL.i386.rpm
2.其中/usr/sbin/dhcpd 是DHCP服务器的执行文件,/etc/rc.d/init.d/dhcpd是DHCP服务器的启动脚本,虽然文件名都是DHCPD,但是文件位于不同的目录,功能也不一样.
DHCPD.CONF配置文件以及建立配置文件和配置文件的格式
#ls /etc/dhcp*
#vi /etc/dhcpd.conf
如:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200
}
3.全局设置
全局设置是DHCPD.CONF配置文件中不包括在任何声明中的配置项(参数或选项),
作用于整个配置文件.当声明中没有相应的配置项时将使用全局配置项的设置,当声明
中有相应的设置项时将使用本声明中设置,而不采用全局设置项的值.
DHCP.CONF配置文件中常用的全局设置如下:
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 是DHCP.CONF文件中最常用的声明,用于在子网中设置动态分配的地址的网络属性,subnet声明中可包括其他的参数.就不再说了.
4.DHCP服务器的启动与停止及重起\和DHCP服务的状态
#service dhcpd start
#service dhcpd stop
#service dhcpd restart
#service dhcpd status
三.DHCP配置实例
如
默认租约时间为21600S
最大租约时间为43200S
局域网内所有主机动的域名为abc.com
客户机使用的DNS服务器的IP地址是192.168.1.1
声明在子网192.168.1.0/24中用于动态分配的IP地址范围是192.168.1.100~~~192.168.1.200所分配的子网掩码是255.255.255.0默认网关是192.168.1.1
在子网192.168.1.0/24中有名为server01的服务器主机,需要的固定分配IP地址是192.168.1.1,
#vi /etc/dhcpd.conf
ddns-update-style interim
default-lease-time 21600
max-lease-time 43200
option domaion-name "abc.com
option domain-name-servers 192.168.1.1
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200
option subnet-mask 255.255.255.0
option routers 192.168.1.1
host server01 {
hardware ethernet bo:co:c3:22:46:81
fixed-address 192.168.1.11
}
}
DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端供给自动分配IP地址的服务。当然高等的DHCP,不光只是分配地址这么简单,今天我们的课程只是架设一个普通的DHCP的服务器, client端能获取到上网必须的网络配置信息
安装了DHCP服务软件的服务器称为DHCP服务器,而启用了DHCP功效的客户机称为DHCP客户端,DHCP服务器是以地址租约的方法为DHCP客户端供给服务的,它有以下两种方法:
限定租期 和 永久租用
学DHCP服务器,就一定要知道DHCP服务器的工作原理:
DHCPDISCOVER(DHCP发明)
DHCPOFFER(DHCP供给)
DHCPREQUEST(DHCP请求)
DHCPACK(DHCP确认)
这个4个步骤,是client获取IP地址必经的步骤
DHCP供给的时候,服务器已经给client分配了IP地址,第二部分分给client的IP地址是临时的,client得到这个IP地址后,会发出DHCP请求,请求租用这个地址,服务器收到请求后,就会正式把这个地址分配给client,继而向client发送DHCP确认。
这个四步主要是应对同一网络多个DHCP服务器
后台过程:dhcpd
脚本:/etc/rc.d/init.d/dhcpd
使用端口:67
所需RPM包:dhcp
相关RPM包:
dhcp-devel-3.0.5-7.el5.i386.rpm
dhcpv6-0.10-33.el5.i386.rpm
dhcpv6_client-0.10-33.el5.i386.rpm
配置文件:/etc/dhcpd.conf
日志:/var/log/xferlog
再提示一点吧,网络启动方法也叫bootpc,这样获取的IP地址是不会受服务器的租期111ttt.com的,它永远有效
好了,我们先安装DHCP服务器
一、下载或从光盘上找到DHCP服务安装包。
二、安装(dhcp*代表其安装包名称):
# rpm -ivh dhcp*
三、配置DHCP文件:
复制/usr/share/doc/dhcp*/dhcpd.conf.sample 到/etc目录下,更名为:dhcpd.conf
# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf
当然,也可以先vi /etc/dhcpd.conf,然后在末行模式运行以下命令:
r /usr/share/doc/dhcp*/dhcpd.conf.sample
这样这个dhcpd.conf.sample文件的内容就导进来了。
打开dhcpd.conf,要修改的几个地方:
subnet 后面接的是你所定义的网段,要与本机的IP地址同网段,
每一语句以分号“;”结尾,不要忘记。
例如:我的IP是“192.168.2.11”,下面是我的配置文件:
ddns-update-style interim
ignore client-updates
subnet 192.168.2.0 netmask 255.255.255.0 {
option routers 192.168.2.1
option subnet-mask 255.255.255.0
option nis-domain "domain.org"
option domain-name "domain.org"
option domain-name-servers 192.168.2.1
option time-offset -18000
range dynamic-bootp 192.168.2.100 192.168.2.254
default-lease-time 21600
max-lease-time 43200
filename "/pxelinux.0"
next-server 192.168.2.11
host ns {
next-server marvin.redhat.com
hardware ethernet 12:34:56:78:AB:CD
fixed-address 207.175.42.254
}
}
四、详细注解:
ddns-update-style interim#定义所支持的DNS动态更新类型(必选),一般我们设置成关闭,
#interim和none都是关闭的意思
allow/ignore client-updates#允许/疏忽客户机更新DNS记载
allow/deny unknown-clients#是否动态分配IP给未知的使用者
allow/deny bootp#是否响应激活查询
allow/deny booting#是否响应使用者查询
subnet 192.168.2.0 netmask 255.255.255.0 { #设置子网声明
# --- default gateway
option routers 192.168.2.1#设置缺省网关为192.168.2.1
option subnet-mask 255.255.255.0#设置客户端的子网掩码
option nis-domain "domain.org"#为客户设置NIS域
option domain-name "domain.org"#为客户设置域名
option domain-name-servers 192.168.2.1#为客户设置域名服务器
option time-offset -18000# Eastern Standard Time #为客户端指定格林威治时间偏移时间,单位秒,
# 该选项可以在全局配置、局部配置均可使用
# option ntp-servers 192.168.2.1#NTP是时间服务器
# option netbios-name-servers 192.168.2.1设置wins服务器
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2#设置netbios节点类型 我不清楚这个netbios节点是什么东西
range dynamic-bootp 192.168.2.28 192.168.2.254#设置动态的地址池
default-lease-time 21600#设置缺省的地址租期
max-lease-time 43200#设置客户端最长的地址租期
# we want the nameserver to appear at a fixed address
filename "/pxelinux.0"#开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径
next-server 192.168.2.11#This is the name of the server they should get it from
#tftp服务器,可以和dhcp服务器不在同一机器上,一般是PXE网络使用此参数
#设置主机声明
host ns {
next-server marvin.redhat.com#设置由于定义服务器从引导文件中装入的主机名,用于无盘站
hardware ethernet 12:34:56:78:AB:CD#指定dhcp客户的mac地址
fixed-address 207.175.42.254#给指定的mac地址分配ip
}
}
五、配置好dhcpd.conf文件后就可以启动dhcp服务了:
# service dhcpd restart
这时可以用“netstat -nlutp”命令查看dhcp服务是否有启动。
六、其它相关文件:
1、这个文件/var/lib/dhcpd/dhcpd.leases,可以看到被租出去的IP地址和相关信息。
2、这个文件/etc/sysconfig/dhcpd是指定DHCP服务器111ttt.com的网卡,如果只有一个网卡,一般不用设置
DHCPDARGS=eth0 或者是eth1 ,如果全部111ttt.com就不用管。
3、这个文件/etc/sysconfig/dhcrelay就是设置DHCP中继的文件,大家打开瞧一下吧。
interfaces 就是来自这个端口的dhcpdiscover(请求)都会转发到后面的DHCPSERVERS服务器。
设置了DHCP中继,需要启动中继服务:service dhcrelay start
七、在linux客户机下面,你可以手动配置你的dhcp:
观察你的网络配置文件,如果你没有设置为自动启动联网,则要修改你的网络配置文件。
# vi /etc/sysconfig/network
添加“NETWORKING=yes”(让引导的时候启动联网)
或者使用
# @echo “NETWORKING=yes”>/etc/sysconfig/network
然后再修改你的网卡配置文件
/etc/sysconfig/network-scriptes/ifcfg-eth0 文件应该包括这几行:
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)