Linux网络服务之DHCP服务原理与自动获取实验

DHCP服务原理与自动获取实验

一、DHCP的概念

DHCP(Dynamic Host Configuration Protocol )——动态主机配置协议,专门用于为TCP/IP网络中的计算机自动废品TCP/IP参数的协议,属于应用层。

在现实场景中,就是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。

使用DHCP服务可以为大量客户机自动分配地址,提供集中管理,从而减轻管理和维护成本、提高网络配置效率。

可分配的地址信息主要包括:网卡的ip地址、子网掩码;对应的网络地址、广播地址;默认网关地址;DNS服务器地址。

二、DHCP的租约过程

1.Discover——发现阶段,即DHCP客户机寻找DHCP服务器的阶段。DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送DHCP discover发现信息来寻找DHCP服务器,即向地址255.255.255.255发送特定的广播信息。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。

2.Offer——提供阶段,即DHCP服务器提供IP地址的阶段。在网络中接收到DHCP discover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCP offer提供信息。

3.Request——请求(选择)阶段,即DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户机发来的DHCP offer提供信息,则DHCP客户机只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址。

4.ACK——确认阶段,即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户机回答的DHCP request请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCP ack确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址。

5.Relogin——重新登录。以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。

6.Update——更新租约。DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。

三、DHCP的优势

  • 减少管理;
  • 避免输入错误;
  • 避免IP地址冲突;
  • 提高IP地址使用率;
  • 方便客户端配置。

四、DHCP的分配方式

  1. 自动分配:当DHCP客户机第一次成功从DHCP服务器获取到一个IP地址后就永久使用这个地址
  2. 手动分配:由DHCP服务器管理员专门指定IP地址;
  3. 动态分配:当DHCP客户机第一次成功从DHCP服务器获取到一个IP地址后,并非永久使用这个地址,而是每次使用完后,DHCP客户机就会释放这个IP地址,给其他客户机使用。(PS:我自己做实验验证的时候发现:当分配的IP地址范围足够大的的情况下,主机数不多时,无论释放与否都会获取到与之前一样的IP地址,而当范围极小,比如只有一个的情况下,一台客户机获取到时其他的是无法获取的,除非其释放之后另外一台renew时才能获取)

五、DHCP动态分配实验

实验环境:Windows10宿主机,一台win10虚拟机用作验证,一台Centos7作为服务器进行配置。

实验目的:验证DHCP动态分配IP地址,原先的win10虚拟机是其他网段或者169网段的,根据你配置连接模式而定,最终可以获取到你配置的能网段范围内的ip地址。

实验过程中注意的要点:

  1. 首先是网卡配置,两台虚拟机需要同一块网卡,添加网卡需要重启宿主机;
  2. 其次是防火墙的关闭与SELinux增强型安全功能关闭;
  3. 最后是配置文件之后务必重启对应的服务!

实验过程步骤如下:

(1)下载软件包

(2)换绑网卡

(3)查看软件包配置文件和配置静态IP地址

(4)关闭防火墙和SELinux,更改DHCP配置文件并启用dhcpd服务

(5)原来的win10的ip地址是无效ip

(6)更换win10测试机的网卡进行renew测试

六、总结

本文主要介绍的是DHCP的相关概念和分配ip的原理,以及使用DHCP服务的优势,最后结合一个实验来验证DHCP服务是如何动态分配ip的小实验。

原文地址:https://blog.51cto.com/14557673/2451887

时间: 2024-10-11 04:39:12

Linux网络服务之DHCP服务原理与自动获取实验的相关文章

(四)跟我一起玩Linux网络服务:DHCP服务配置之中继代理

继第三部分的DHCP服务器的设置成功,我们来做一个中继代理服务器的配置吧. 我们的虚拟机结构如图: 具体参考: (一)跟我一起玩Linux网络服务:DNS服务——BIND(/etc/named.conf./var/named)设置实现和解释 根据第三部分,我们在vm1上面部署了DHCP服务器,我们就在vm2上面配置中继服务,具体内容如下: 1.先在vm1下面同样配置DHCP的文件上多配置一个subnet 1 ddns-update-style interim; 2 ignore client-u

Linux服务器上搭建DHCP服务

实验 实验环境: 在虚拟机上搭建两台linux服务器,一台作为DHCP服务器,另一台作为客户机自动获取IP地址: 实验要求: 一, linux服务器作为DHCP服务自动分配IP地址: 二, linux服务器作为客户端获取IP地址: 实验步骤: 一, linux服务器搭建DHCP服务 配置linux服务器静态ip地址: 在/etc/fstab文件里编辑光盘开机自动挂载 用rpm方式安装dhcp服务程序 进入dhcpd.conf配置文件 编辑域名.解析的IP地址.自动分配的IP地址范围 开启dhcp

NFS服务和DHCP服务讲解

1.NFS服务端概述 NFS,是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS: NFS允许一个系统在网络上与他人共享目录和文件. 模式: C/S 模式 端口: NFS是Net File System的简写,即网络文件系统.NFS通常运行于2049端口. 2.部署NFSlinux与linux之间共享 由于在使用NFS服务进行文件共享之前,需要使用RPC(Remote Procedure Call,远程过程调用)服务

(三)跟我一起玩Linux网络服务:DHCP服务配置

我们今天来做DHCP服务器的配置,我们的前提示要实现用一台虚拟机做DHCP服务器 1.首先,我们要有DHCP软件,我们用到下面两个软件(可以使用其他方法从网上直接安装,具体方法网络搜索) dhcp-3.0pl1-23.i386.rpm dhcp-devel-3.0pl1-23.i386.rpm 下载后,安装 # rpm -ivh /home/yanji/dhcp*.rpm 2.我们更新一下搜索的数据内容,查找我们的主配置文件 # updatedb# locate dhcpd.conf/etc/l

Linux / CentOs 7搭建DHCP服务

在前面介绍了怎么在Windows server 2016中搭建DHCP服务, 我们今天介绍如何在Linux / CentOS 7操作系统中搭建DHCP服务?跟在Windows server 2016中差不多,接下来我们一步一步来1.打开CentOS7 的服务器,首先确定IP地址,通过"ifconfig"查询本机的IP地址通过查询只发现Mac地址,并未发现IP地址2.我们通过更改配置文件/etc/sysconfig/network-scripts/ifcfg-ens33来修改IP地址,使

linux网络安装(PXE + DHCP+TFTP+ Kickstart+ FTP)

需要使用到的服务:PXE + DHCP+TFTP+ Kickstart+ FTP 运行原理如下图: 原理和概念:  1.前言        首先,简单谈谈为什么要采用无人值守网络安装linux操作系统.一方面是运维管理的需要,因各种需要,安装操作系统在实验室内时有发生,有时候更出现批量安装某一型号操作系统的情形,这时候如果用光盘挨个安装将变得异常繁琐,并且需要人工值守.此外,因操作系统种类较多(主要是针对linux),内部人员使用频繁,也会带来管理上的问题.另一方面是当前MPX项目开发的需要,为

Centos网络配置方法(手动设置,自动获取)

一.自动获取IP的方法: 1./ etc/sysconfig/network-scripts/ifcfg-eth0 [[email protected] ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0    //由eth0来启动 HWADDR=00:0C:29:40:EC:61    //MAC地址 TYPE=Ethernet UUID=9c6a7fc6-66ce-406d-993f-6ab26a730e72 ONBOO

Linux 网络编程之通过IP或者主机名获取信息

struct hostent { char *h_name; /* 主机的正式名称*/ char **h_aliases; /* 主机的别名列表*/ int h_addrtype; /* 主机的地址类型AF_INET */ int h_length; /* 主机的地址长度*/ char **h_addr_list; /* 主机的IP地址列表*/ } #define h_addr h_addr_list[0] /* 主机的第一个IP地址*/ struct hostent *gethostbynam

Linux DHCP服务笔记

DHCP服务 DHCP概念及原理 概念: DHCP服务作用:  1.为大量客户机自动分配地址,提供集中管理 2.减轻管理和维护成本.提供网络配置效率 可分配的地址信息主要包括: 1.  网卡的ip地址.子网掩码 2.  对应的网络地址.广播地址 3.  默认网关地址 4.  DNS服务地址 5.  引导文件.tftp服务地址 DHCP的原理: 1.  客户端寻找服务器 Client –DHCPdiscover  发送DHCPdiscover 源ip:0.0.0.0  目标ip:255.255.2