超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器概述DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。工作原理1、客户端开机没有IP,局域网内需要发送一个广播形式的DISCOVER(局域网内不知道谁是DHCP服务器),只要能收…

大家好,又见面了,我是你们的朋友全栈君。

概述

DHCP(DynamicHost ConfigurationProtocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

工作原理

超详细Linux配置DHCP服务器

1、客户端开机没有IP,局域网内需要发送一个广播形式的DISCOVER(局域网内不知道谁是DHCP服务器),只要能收到的DHCP都能响应

2、如果发现DHCP服务器 此时发现了有多个服务器,每个DHCP服务器都会发送一个OFFER(分配IP地址,但是仅仅是IP),客户端接收IP的时候,会通过ARP协议验证一下,是否被其他主机占用,客户端一般会选择第一个给OFFER的DHCP服务器。

3、此时DHCP服务器会发送一个DHCP服务器的REQUESRT的广播包(发送REQUEST,①确定已经选定了此服务器②不仅给自己选定的DHCP服务器发送,还会给此服务器以外的DHCP服务器,声明已经选定好了DHCP服务器。)

4、此时DHCP通过ACK机制会正式的将IP、网关、子网掩码等信息都分配给客户端

关于续租:

DHCP服务器可以24小时开机提供服务,此时有一个问题,客户端在关机期间,再次开机能否再使用之前的IP?

①原来使用的IP没有被占用,回应一个ACK,但是不能永久使用,IP地址的租期达到50%后,必须重新更新租期

②原来使用的IP已经被占用,回应一个NACK,此时客户端重新发送广播,按上面四次协议重新走一遍

总结DISCOVER和OFFER都是广播,四个阶段全是广播。

DHCP的分配方式

1、自动分配:分配到一个IP地址后永久使用

2、手动分配:由DHCP服务器管理员专门指定IP地址

3、动态分配:使用完后释放该IP,供其他客户机使用

DHCP的优点

1、减少管理员的工作量

2、避免IP地址冲突

3、当前网络更改IP地址段时,不需要再重新配置每个用户的IP地址

4、提高IP地址的利用率

5、方便客户端的配置

DHCP分配的地址信息主要包括

网卡的IP地址、子网掩码

对应的网络地址、广播地址

默认网关地址

DNS服务器地址

实验环境

  • 系统环境:centos6.5

  • 宿主机IP地址:192.168.1.20

  • 使用的rpm包:dhcp-4.1.1-38.P1.el6.centos.x_86_64.rpm

搭建步骤

一、设置DHCP地址池分配IP

1、Server端安装DHCP服务rpm包

1
[root@raid ~]
# cd /mnt/sr0/Packages/

1
[root@raid Packages]
# rpm -ivh dhcp-4.1.1-38.P1.el6.centos.x86_64.rpm

2、查看主配置文件

超详细Linux配置DHCP服务器

1
[root@raid dhcp]
# vim dhcpd.conf #查看主配置文件

超详细Linux配置DHCP服务器

3、优化配置文件并编辑

1
[root@raid ~]
# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf #重新覆盖配置文件

1
[root@raid ~]
# vim /etc/dhcp/dhcpd.conf #修改主配置文件

超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器

4、客户端测试

1
[root@localhost ~]
# vim /etc/sysconfig/network-scripts/ifcfg-eth0  #修改eth0网卡信息

超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器

二、为指定主机分配IP

1、查看Client端的网卡MAC地址

超详细Linux配置DHCP服务器

2、打开server端dhcp主配置文件

1
[root@raid ~]
# vim /etc/dhcp/dhcpd.conf

超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器

超详细Linux配置DHCP服务器

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139444.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • struct的用法「建议收藏」

    struct的用法「建议收藏」使用结构体类型处理组合数据:即用户自定义数据类型。1c语言提供了很多系统类型。如intcharfloatdouble等等,但是这都是单一的数据类型,如果对于一个学生作为一个整体的话,那么他的

    2022年8月3日
    6
  • java编译报错提示编码GBK的不可映射字符啥意思_java字符串编码转换

    java编译报错提示编码GBK的不可映射字符啥意思_java字符串编码转换在我想要在println输出一些中文的时候,发现编码出现错误原因:java程序在编译的时候,需要使用JDK开发工具包中的JAVAC.EXE命令,而JDK开发工具包是国际版的,默认格式为UNICODE的编码格式。因此在默认情况下,javac.exe会采用默认的编码格式,什么是默认的编码格式呢?也就是我们在编译JAVA程序时,在未指定源程序文件的编码格式的情况下,JDK会优先获取操作系统的file.encoding参数,然后JDK就把我们的JAVA源程序从file.encoding编码格式转化为JAVA

    2022年9月13日
    2
  • 关于CultureInfo

    关于CultureInfoCultureInfo提供有关特定区域性的信息(如区域性的名称、书写系统和使用的日历)以及如何设置日期和排序字符串的格式。在ASP.NET2.0中提供多语言转换和多样式主题转换功能中,经常用到CultureInfo.可用CultureInfo.Name获得区域性名称,CultureInfo的默认是.NETFramework的安装版本。改变CultureInfo值方法为可在Global….

    2022年6月19日
    28
  • 十进制小数如何转换为二进制小数[通俗易懂]

    十进制小数如何转换为二进制小数[通俗易懂]关于十进制小数转换为二进制数,下面是我的详细操作说明,仅供参考。纯小数首先,最高位是符号位,正数是0,负数是1;小数部分乘以2,然后取整数部分,,剩余小数部分继续乘以2,取整数部分,……直到小数部分为0。以+0.125为例:+数,最高位为0;小数部分0.125×2=0.25,取0;再取小数部分0.25×2=0.5,取0;再取小数部分0.5×2=1.0,取1;这时小数部分是0,结束。…

    2022年9月25日
    4
  • C++ 调用Matlab画图「建议收藏」

    C++ 调用Matlab画图「建议收藏」劳动节闲来无事,写了一天程序,justforfun.看,这是C++调用Matlab画图的一段程序。暂时不想多解释了,有兴趣的话,看看下面的代码吧。#include#include#include#include#include#includeusingnamespace

    2022年9月20日
    3
  • Java练手小程序——QQ聊天「建议收藏」

    Java练手小程序——QQ聊天「建议收藏」1.思路图    2.主要功能     实现一对一聊天实现多对多聊天好友上线自动刷新功能3.知识点   界面布局:一是流布局,二是卡片布局(现在应该都不用了) socket通信之对象流objectinput/outputStream     将线程里面的信息显示到界面上4.项目代码    4.1服务端 

    2022年9月6日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号