LINUX下DHCP服务的配置与应用

简介:
     在现实生活中,我们如果想要局域网中的每台计算机都能连接到internet上去,那么我们必须为每台机器都配置IP地址等参数,接触过电脑的人都知道,计算机有两种方法来配置这些地址参数:静态手工指定与DHCP实现自动分配。那么今天我要为大家演示一下怎样在LINUX下配置DHCP服务器来使DHCP客户机自动获得这些地址参数。这里说一下DHCP分配的重要性:相对于手工配置来说,DHCP更具灵活性,省掉了重复性的工作,减少了人工配置中产生的一些不必要的错误,而且由于机器经常的变动我们不得不烦琐地修改地址参数,现在我们有了DHCP就好办了,它会让烦琐地址分配变得更加easy!
             
 
                还是一样,我们配置的首要步骤就是我们的linux系统里面是否安装好这些软件,用rpm -pa | grep dhcp。。一般的我们默认是没有安装好的,需要我们从CD或都其它地方下载下来安装。因为我物理机上面有一些dhcp的rpm包,那么现在我想把我物理机上面的rpm包复制(更精确点说是“下载”)到我的linux机器里来怎么办?
呵呵,挺简单的,大家看我如何solve this problem吧。        ------------ 问题1-------方法:

利用linux机器上的samba服务器有文件共享的功能,,那么我先把物理机上面的dhcp rpm包放入windows共享目录里面。再登录linux, 用:smbclient //172.16.29.51(物理机ip)/share(物理机共享目录)    -U xxx(windows的登录用户名) xxx(password) 回车即可,,出现smb:>/就是了,那么你成功进入了windows的share目录了,用ls看一下,,是不是dhcp的rpm包都在上面,是的话,我们马上把它下载下来,用ftp里的上传下载命令即可:get xxx(文件名)。好,quit退出smb。用ls再查看一下linux当前目录里是不是包含了刚下载的两个文件啊。。呵呵。那么成功完成从samba里复制文件到linux机器里了,进行到这,你是否感觉自己小有成就感了,嘻嘻。。。有了dhcp rpm软件包,我们接下来就把他安装好吧。
              根据各版本不同,需要安装不同dhcp rpm包,我这以RHEL 5为例,,那么必须要安装这两个rpm包:dhcp-3.0.1-58.EL4.i386.rpm(最重要的哦),dhcp-devel-3.0.1-58.EL4.i386.rpm.一般客户端的软件包默认安装好了的。 我们安装下面的命令安装即可
        ----- 问题2-----  看到了问题了吗,有两次安装,可以对照看出来,第一次包安装并没有成功,是什么原因呢,
-------------------------------------------------解决方法---------------------------------------------------------
        这也正是昨天我苦恼的原因,在实验机房没碰到,但在我机器上面却出这问题了,导致没有顺利完成的原因就是rpm包的依赖错误,这也是一个系统环境的问题,那么此时我们要在命令后面加上--force 来强制安装,当然这样做并没好处(因为这样安装会使程序服务出现一些问题,但没办法我们暂时先这样做。)。
          
            
             安装好了rpm包之后,接下来我们需要用vi来编辑我们的dhcp主配置文件了,但你会发现/etc/dhcpd.conf里面没什么东西,只写了一行代码 :see /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample,意思是让你去看/usr/share/doc/dhcp-3.0.1/下面的dhcpd.conf主配置文件的模板,那么我进入到/dhcp/-3.0.1目录下面,看到模板文件后cp dhcpd.conf.sample /etc/dhcpd.conf 或是cat /dhcpd.conf.sample >/dhcpd.conf重定向输出到/etc/dhcpd.conf里。这样我们就可以按着模板来配置我们的dhcp.conf了。下面是dhcp.conf的一些参数解释:
我们把主配置文件修改成:subnet 192.168.0.0 netmask 255.255.255.0 {
                                           option routers 192.168.0.1;//为客户机设置默认网关
                                           o ption net-mask 255.255.255.0;//子网掩码为24位
                                           option nis-domain "domian.org";
                                           option domain-name-server 192.168.1.1;//域名
                                            range dynamic-bootp 192.168.0.128 192.168.0.254//地址分配范围
                                            default-lease-time 21300;//默认租赁时间
                                             max-lease-time  432000;//最大租赁时间(秒)
:wq保存即可。
                 下面我们开启我们的dhcpd进程,看是否成功。
 事与愿违,没能成功,仔细想一下,到底是什么让我们的dhcp服务启动失败------------------ 问题3-------------------
-----------------------------------------解决-----------------------------------------------------------
查看一下服务器的ip地址就晓得了啦,嘻嘻,
因为网卡地址也服务器要分配的地址不再同一网段,而且也没启用DHCP中继代理,所以DHCP启用才会失败哦,现在我们只要把服务器的网卡的地址改为与要分配的IP同一网段就OK啦。
      
 

 
                       现在剩下来的任务就是测试啦,我们用xp系统的windows客房机来测试一下dhcp 分配哦。呵呵。具体设置大家应该都会吧,,按wins+R,进入运行里面 输入"cmd“,进入command的界面,再输入“ipconfig/release“,释放之前手工设置的IP,然后再输入“ipconfig/renew“向dhcp服务器发送一个源地址为:0.0.0.0(代表本地),目的地址为:255.255.255.255的全网广播dhcpdiscover,,那么dhcp服务器在收到这个dhcpdiscover后,会在本机dhcp地址池当中选出一个还未分配的IP,向客户机发出一个dhcpoffer单播数据包,这时客户机收到后发出一个dhcprequest请求包,当然在客户机接收dhcpoffer过程中,可能会多个dhcpoffer包,他们来自不同的dhcp服务器,那么客户机会选择最先到达的服务器作为自己的dhcp server。确认后,dhcp server也会发出一个dhcpack包,其中包括ip的地址信息,租赁信息等。此时dhcp分配过程就完成了。下面我们来看一下客户机获取是否成功。
windows 客户端IP地址已经获取成功,下面我们来看看分配的其他信息,在cmd里面输入“ipconfig/all就可显示出来。
呵呵,挺容易的吧。。“事有难易乎,不做则难,做则易”。
好了,大家也看得累了吧,今天天气变好了,出去透透气吧。。多运动哦,,不要像我,都感冒了。咳。。。。。
             

 
 
本文转自 Bruce_F5 51CTO博客,原文链接:http://blog.51cto.com/zenfei/323347

相关文章
|
2月前
|
安全 网络协议 网络安全
Cisco-DHCP配置
Cisco-DHCP配置
|
2月前
|
安全 小程序 网络安全
Cisco-DHCP中继配置
Cisco-DHCP中继配置
|
28天前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
1月前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
70 9
|
1月前
|
缓存 Linux 开发者
Linux内核中的并发控制机制:深入理解与应用####
【10月更文挑战第21天】 本文旨在为读者提供一个全面的指南,探讨Linux操作系统中用于实现多线程和进程间同步的关键技术——并发控制机制。通过剖析互斥锁、自旋锁、读写锁等核心概念及其在实际场景中的应用,本文将帮助开发者更好地理解和运用这些工具来构建高效且稳定的应用程序。 ####
46 5
|
1月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
54 5
|
1月前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
2月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
75 2
|
2月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
573 3
|
2月前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器