开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

DHCP服务器的配置与实例

简介:
+关注继续查看

DHCP服务器的配置与实例

1.DHCP概述

     对于那些不太了解网路技术的人来说,配置TCP/IP可能是一件非常复杂的工作,对那些将PC连接到局域网的用户来说只能将配置集中到服务器端,这样可以简化用户端的工作复杂度。当然,这将在一定程度上,增加管理员的工作量,但是从整体考虑,这样是最优的。
      DHCP的全称是动态主机配置协议(Dynamic Host Configuration Protocol),由IETFInternet 网络工程师任务小组)设计,详尽的协议内容在RFC文档rfc2131rfc1541里。目的就是为了减轻TCP/IP网络的规划、管理和维护的负担,解决IP地址空间缺乏问题。运行DHCP的服务器把TCP/IP网络设置集中起来,动态处理工作站IP地址的配置,用DHCP租约和预置的IP地址相联系,DHCP租约提供了自动在TCP/IP网络上安全地分配和租用IP地址的机制,实现IP地址的集中式管理,基本上不需要网络管理人员的人为干预。而且,DHCP本身被设计成BOOTP(自举协议)的扩展,支持需要网络配置信息的无盘工作站,对需要固定IP的系统也提供了相应支持。使用DHCP主要的好处有一下几点。

① 减少管理员的工作量

② 减小输入错误的可能

③ 避免IP冲突

④ 提高了IP地址利用率等等。

2.DHCP提供的3IP定位方式

Manual Allocation

  人工分配,获得的IP也叫静态地址网络管理员为某些少数特定的在网计算机或者网络设备绑定IP,且地址不会过期。   同一个路由器一般可以通过设置来划分静态地址和动态地址IP段,比如一般家用TP-LINK路由器,常见的是从192.168.1.100~192.168.1.254,这样如果你的电脑是自动获得IP的话,一般就是192.168.1.100,下一台电脑就会由DHCP自动分到为192.168.1.101。而192.168.1.2~192.168.1.99为手动配置IP段。 

Automatic Allocation

  自动分配,其情形是:一旦 DHCP 客户端第一次成功的从 DHCP 服务器端租用到 IP 地址之后,就永远使用这个地址。 

Dynamic Allocation

    动态分配,当 DHCP客户端 第一次从 DHCP 服务器端租用到 IP 地址之后,并非永久的使用该地址,而是有一个使用的时限,这个时限被称为租约。只要租约到期,客户端就得释放(release)这个 IP 地址,以给其它客户机使用。当然,客户端可以比其它主机更优先的更新(renew)租约,或是租用其它的 IP 地址。动态分配显然比手动分配更加灵活,尤其是当您的实际 IP 地址不足的时候,

同时,DHCP 还可以帮客户端指定 routernetmaskDNS ServerWINS Server、等等项目,您在客户端上面,除了将 DHCP 选项打勾之外,几乎无需做任何的 IP 环境设定。

3.租约产生

客户端一般在启动时会发生租约产生的过程,首先简单地说明DHCP租约产生的过程。

1. 客户端请求IP租约(图1)。DHCP客户端在网络中广播一个DHCP Discover包,该数据包使用UDP67端口,以源IP地址为0.0.0.0  目的IP地址为255.255.255.255,该数据包还包含客户端的MAC地址和计算机名,以使DHCP服务器能够确定是那个客户端发出的请求。

2. 服务器响应(图2)。当DHCP服务器接受到客户端请求IP地址的信息时,就在自己的IP pool池中是否有可用的IP地址,如果有DHCP服务器广播一个DHCP Offer包,该数据包使用UDP68端口,源IP地址为DHCP服务器IP地址,目的IP地址为255.255.255.255,该数据包还包含一下信息。

 

        图1                                                                                    2

1) DHCP客户端的MAC地址

2) DHCP服务器提供的合法的IP地址。

3) 子网掩码。

4) 租约期限。

3. 客户端选择(图3)。DHCP客户端从接收到的第一个DHCP Offer包中选择IP地址,并发送DHCP Request包广播,表明它使用IP地址的提供服务器。该数据包使用UDP67端口以源IP地址为0.0.0.0  目的IP地址为255.255.255.255

4. 服务器确认(图4)。DHCP服务器在收到DHCP Request包后,会以DHCP ACK包向客  户端广播确认成功。该数据包使用UDP68端口,源IP地址为DHCP服务器IP地址,目的IP地址为255.255.255.255。当客户端收到DHCP ACK后,就会使用得到的IP地址。完成整个租约产生的过程。

 

         图3                                                                        4

4.更新租约。

DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过50%时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。如果客户端无法与提供租约的DHCP服务器通信,则客户端会再次等到租约到达87.5%时,重新进行租约更新。如果租约到达100%时,DHCP服务器还没有响应,则客户端的IP地址则变为192.168.x.y 或是重新进行租约产生的4步(图5)。

                                 5

5.中继代理

 如果DHCP客户端与DHCP服务器之间需要跨越子网时,子网间的路由器必须支持RFC 1542文档的定义。当然也可以配置一个DHCP中继代理来帮助转发DHCP客户端与DHCP服务之间的广播包。

以上都是一些理论,下面来看看具体安装吧。

一、DHCP服务安装

DHCP服务有关的软件包有以下几个。

1. dhcp: DHCP服务器端软件

2. Dhcp-devel: DHCP服务器开发工具

3. Dhcpv6: DHCPIPv6扩展,使DHCP服务器支持IPv6

4. Dhcpv6_clientDHCP客户端IPv6支持软件

安装与删除DHCP服务器端软件

rpm  -ivh  dhcp-3.0.5-13.e15.i386.rpm  rpm  -e  dhcp-3.0.5-13.e15.i386.rpm

yum   -y  install  dhcp          yum   -y  remove  dhcp

二、DHCP服务启动、暂停

service dhcpd  start      启动

service dhcpd  restart    重新启动

service dhcpd  stop      停止

service dhcpd  status    查看当前启动状态

Chkconfig  dhcpd  on  开机自动加载(级别为2345

三、DHCP服务配置

主配置文件为/etc/dhcpd.conf

记录客户端租约信息的文件是/var/lib/dhcpd/dhcpd.leases

dhcp主配置文件的说明

源文件:
   subnet 192.168.0.0 netmask 255.255.255.0 { # 指定网段和子网掩码
    option routers 192.168.0.1; # 指定默认路由
    option subnet-mask 255.255.255.0; # 指定dhcp的子网掩码
    option domain-name "wsm.com.cn"; # 指定域名
    option domain-name-servers 192.168.0.1; # 默认DNS服务器
    range dynamic-bootp 192.168.0.10 192.168.0.250; # IP分配范围
    default-lease-time 1200; #如果客户端不能请求一个指定的租用期,就使
    用该参数来定义该地址租用的时间长度
    max-lease-time 87600; # 用来指定租用的最长时间,尽管租用的
    时间长度是根据客户端的请求决定的。
   # we want the nameserver to appear at a fixed address
   # host ns {
   # next-server marvin.redhat.com;
   # hardware ethernet 12:34:56:78:AB:CD;
   # fixed-address 207.175.42.254;
   # }
    }
    # 以上被注释的部分用来给客户机分配一个永久的IP,也就是可以利用它
    来做网卡和IP的绑定

例一: 单作用域  dhcp client 通过dhcp server 可以得到 网关ip 192.168.2.254

子网掩码:255.255.255.0  可分配ip的范围192.168.2.4 192.168.2.254

Dns服务器ip 222.88.88.88  C1linuc主机,MAC00:0C:29:60:5C:D0 并绑定ip为 192.168.2.100

  

编辑主配置文件 /etc/dhcpd.conf如下:

开机dhcp server后,在C1上自动获取一下看看

再看一dhcp server的日记

Liunx 主机C1已经成功获取到了ip地址为192.168.2.100 等相关的信息。

C2  win主机获取

成功获取到了一切信息

例二,多作用域 有两种情况,一种是DHCP服务器只有一个网络接口,通过路由器等设备与其它网段的DHCP客户机连接,另一种是DHCP服务器有至少两个网络接口,分别连接需要DHCP客户机所在是每个网段。

来看第二种配置:

首先在DHCP server 上加一块网卡 设备名为eth1 ip地址为192.168.3.1 属于VMnet  2

Eth0 网卡的ip 192.168.2.2

Eth1 网卡的ip 192.168.3.1

这样在不同的VM里就可以获得不同ip地址了,以上我设的ip地址范围可知。所以在VMnet 2 里的主机只能获得 192.168.3.2 192.168.3.20范围里的其中一个ip地址。在VMnet 1里的主机只能获得 192.168.2.4 192.168.2.10范围里的其中一个ip地址。

例三,假如末公司有300个主机,都需要动态分配ip地址,这样一个作用域就不够需求了,

有没有办法解决呢? 就需用到超级作用域了,怎样配置超级作用域呢。如下:

这里的超级作用域名为wsm 包含了两个网段的作用域。两个作用域的可用ip范围只有一个可用的ip是为了看到效果。。。(o)

用两台主句获取一下,dhcp日记如下:

可以看到已经获取了。

例四,dhcp中继

要求技术部获得的域名后缀为tec.com ,市场部获得的域名后缀为mrk.com

DNS服务器的ip都为222.88.88.88 和 222.85.85.85

技术部的网段为 192.168.3.0/24  可用ip范围为192.168.3.1-- 192.168.3.100 192.168.3.200---192.168.3.240 网关 192.168.3.254

市场部的网段为 192.168.4.0/24  可用ip范围为192.168.4.1-- 192.168.4.253  网关 192.168.4.254

DHCP server 配置如下:

Dhcp relay 上的配置,由于我是在虚拟机上配置,dhcp中继就在一台机器上配了。首先加3块网卡 eth0 eth1 eth2 

Eth0  ip  192.168.2.254/24

Eth 1  ip 192.168.3.254/24

Eth2  ip 192.168.4.254/24

编辑 vim /etc/sysctl.conf

[root@localhost Packages]# vim /etc/sysctl.conf

7  net.ipv4.ip_forward = 1        改为默认为0

[root@localhost Packages]# sysctl -p      是更改立即生效

编辑/etc/sysconfig/dhcrelay

[root@localhost Packages]# vim /etc/sysconfig/dhcrelay

INTERFACES="eth0 eth1 eth2"

# DHCPv4 only

DHCPSERVERS="192.168.2.2"

启动dhcrelay

[root@localhost Packages]# service dhcrelay start

正在启动 dhcrelay:                                        [确定]

技术部和市场部的客户机获得的ip地址如上。

 

遇到错误的解决办法

1 service  dhcpd  configtest   检查语法

2. Tail  -f  /var/log/messages  查看日志




本文转自 abc16810 51CTO博客,原文链接:http://blog.51cto.com/abc16810/1027105

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
23703
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载