[DHCP服务]——DHCP详解

DHCP:(Dynamic Host Configuration Protocol) 动态主机配置协议

1. DHCP是一个局域网的网络协议,采用UDP协议工作

2. DHCP作用

(1)主要应用在大型的局域网环境中,用于给局域网中的主机动态地获得网络参数信息;

(网络参数信息包括:IP地址、子网掩码、Gateway地址、DNS服务器地址等)

(2)这种集中管理、分配IP地址的方式有利于提高地址的利用率、减少冲突,网络管理员也能够利用DHCP Server对局域网内的主机进行更好的管理。

3.DHCP基本工作原理

DHCP Client和DHCP Server之间的数据传递过程如图所示:

第一步:

DHCP客户端在其局域网内广播发送DHCP Discover包,寻找该局域网内的DHCP服务器,其中:
     • 只要安装了TCP/IP协议的主机都能接受到这种广播,但只有DHCP服务器才作出回应
     • 源MAC是自己的MAC地址,目的MAC是FFFF.FFFF.FFFF的广播
     • 源IP是0.0.0.0(现在还没有IP,就用全0地址),目的IP是255.255.255.255的三层广播
     • DHCP Discover包含的内容有:客户机的MAC地址和主机名
     • DHCP Discover是UDP数据包

第二步:

DHCP服务器收到DHCP Discover后都会作出回应,根据客户端的MAC地址和自身的配置,有三种IP分配方式:
    • 若日志文件中有记录该MAC之前曾租用过某IP,且当前无人使用,则分配此IP
    • 若配置中有规定该MAC租用固定IP,则分配此IP
    • 若都没有,则从地址池中随机选取(有多个sunet时,它分配的一定是同一个局域网网段的那个)
    • 可以通过ARP广播的方式确认该IP地址是否被使用
选取IP后将此IP标记,广播一个DHCP Offer包:
    • DHCP Offer包中包含:客户机的MAC地址,提供的合法IP,子网掩码,组约期限,服务器标识等参数
    • 此时客户机还没有IP地址,所以是以广播的方式发送。

第三步:

客户端收到DHCP Offer后,选择一个Offer包(即一个网络租约信息):
    • 如果该局域网内有多个DHCP服务器,则客户端会选择它收到的第一个offer包
然后客户端会给该局域网中的所有主机发送广播包(DHCP Request):
    • 告知自己已接受的出租IP和DHCP服务器的IP。

第四步:

服务器收到Request包,服务器和客户机确认租约关系。
服务器回送dhcp ack/dhcp nack包、告知期限、开始租约计时。
( 以dhcp ack包向客户机广播出去,当客户机确认了收之后,就配置自己的IP地址(和相关网络参数),完成初始化.)

如果遇到客户端脱机或租约到期,则断线。

总结来看:

4.Linux中与DHCP相关的文件、端口

4.1 DHCP Server端

(1) /etc/dhcp/dhcpd.conf

DHCP服务器的主要配置文件

(2) /usr/sbin/dhcpd

启动整个DHCP daemon的脚本文件

(3) /var/lib/dhcpd/dhcpd.leases

记录着服务器与客户端租约建立的起始日与到期日

大致看看其中的内容:

# cat dhcpd.leases

# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.1.1-P1
lease 172.16.10.2 {
  starts 3 2009/11/25 07:09:30;
  ends 3 2009/11/25 09:09:30;
  cltt 3 2009/11/25 07:09:30;
  binding state active;
  next binding state free;
  hardware ethernet 00:0c:29:ef:31:b6;
}

  (4) /var/log/messages、 /var/log/boot.log

查看dhcp相关日志的两个文件

4.2 DHCP Client端

      (1) /var/lib/dhclient/dhclient-eth0.leases

记录着某网卡与dhcp服务器租约建立的起始日与到期日

大致看看其中的内容:

# cat /var/lib/dhclient/dhclient-eth0.leases 

lease {
  interface "eth0";
  fixed-address 10.0.10.191;
  filename "pxelinux.0";
  option subnet-mask 255.255.0.0;
  option dhcp-lease-time 6000;
  option routers 10.0.0.254;
  option dhcp-message-type 5;
  option dhcp-server-identifier 10.0.0.254;
  option domain-name-servers 114.114.114.114,112.124.47.27;
  renew 2 2016/06/21 16:10:06;
  rebind 2 2016/06/21 16:54:56;
  expire 2 2016/06/21 17:07:26;
}

4.3 DHCP端口

(1)Server端:67

(2)Client端:68

5. DHCP Relay(DHCP中继代理)

    如果DHCP Server和DHCP Client在同一个物理网段,则直接由这台Server给Client分配IP;

如果不在同一个物理网段,则需要DHCP Relay。Client借由DHCP中继代理服务器寻找到DHCP Server。

避免了在各个网段都设置一台DHCP Server以节约设备成本。

6. DHCP基本原理在VMware的实验

时间: 2024-10-11 13:27:27

[DHCP服务]——DHCP详解的相关文章

协议分析 - DHCP协议解码详解

协议分析 - DHCP协议解码详解 [DHCP协议简介] DHCP,全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 BOOTP,它工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务器获取它们的配置信息的自举协议. DHCP使用客户端/服务器模式,请求配置信息的计算机叫做DHCP客户端,而提供信息的叫做DHCP的服务器.DHCP为客户端分配地址的方法有三种:手工配置.自动配置.动态配置. DHCP最重要的功能就是动态分配

DNS服务相关概念详解

实验环境:RHEL 32Bit DNS服务相关概念详解 DNS是一种域名解析服务,DNS服务的核心以及DNS服务的标准都是基于一个软件来实现的,这个软件叫做BIND(Berkeley Internet Name Domain),互联网上几乎所有的DNS服务都是由BIND来构建的,虽然也有其它的DNS服务构建标准,但是它们的使用语法以及工作机制都和BIND非常接近. ·Linux服务器和Windows服务器的比较 Linux服务器在没有SELinux的时候它的安全级别和Windows服务器的安全级

iOS定位服务编程详解

现在的移动设备很多都提供定位服务,使用iOS系统的iPhone.iPod Touch和iPad都可以提供位置服务,iOS设备能提供3种不同途径进行定位:Wifi, 蜂窝式移动电话基站, GPS卫星 iOS 不像Android系统在定位服务编程时,可以指定采用哪种途径进行定位.iOS的API把底层这些细节屏蔽掉了,开发人员和用户并不知道现在设备是采用 哪种方式进行定位的,iOS系统会根据设备的情况和周围的环境,采用一套最佳的解决方案.这个方案是这样的,如果能够接收GPS信息,那么设备优先采用 GP

Rsync服务配置详解,实现服务器间数据同步!

1.1 什么是rsync? rsync是Unix下的一款应用软件,它能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输.rsync中一项与其他大部分类似程序或协议中所未见的重要特性是镜像对每个目标只需要一次传送.rsync可拷贝/显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝. 在常驻模式(daemon mode)下,rsync默认监听TCP端口873,以原生rsync传输协议或者通过远程shell如RSH或者SSH伺服文件.SSH情况下,rsync客户端运行程序必须同

Linux vsftpd服务配置详解

[背景] 近日,一朋友domino服务器要进行升级.迁移,搭建了linux测试系统,也开启vsftpd服务,可是配置的ftp账号,程序无法正常下载附件. [问题跟踪] 通过ftp客户端连接工具登录,发现未跳转到ftp账号指定的目录下面. cat /etc/vsftpd.config发现开启了: local_root=/home/test 将此注释重启ftp服务正常. 附录(vsftpd配置详解): vsftpd服务器配置文件"/etc/vsftpd/vsftpd.conf",以此为例.

Centos 6.5搭建SVN服务步骤详解

Centos 6.5搭建SVN服务步骤详解 一:SVN的运行方式 SVN服务器有2种运行方式, 本文介绍独立服务器的安装方法. 1.    独立服务器 (例如:svn://xxx.com/xxx): 2.    借助apache(例如:http://svn.xxx.com/xxx): 二:安装SVN 1.用yum安装svn yum -y install subversion 2.查看svn版本 svnversion --version或者/usr/bin/svnversion --version

Apache httpd(apache2)服务配置详解,Mac下设置虚拟主机部署多个web项目,及反向代理部署Java项目

Apache httpd服务配置详解 查看版本:httpd -v Server version: Apache/2.4.33 (Unix) Server built:   Apr  3 2018 17:54:07 文件路径:/etc/apache2/httpd.conf # 服务目录(全局配置)用于指定Apache的安装路径,# 此选项参数值在安装Apache时系统会自动把Apache的路径写入ServerRoot "/usr" # 设置互斥对象的目录# Mutex default:/

Samba服务配置详解(匿名,身份,别名,访问控制,挂载访问)

Samba服务配置详解 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务.SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统.打印机及其他资源.通过设置"NetBIOS over TCP/IP"使得Samba不但能与局域网络主机分享资源,还

华为MSTP、VRRP与DHCP综合项目详解

本实验重点考核大家对MSTP.VRRP.DHCP掌握情况,实验要求如下: 实验要求:1.VLAN 10和vlan 20流量负载均衡:2.SW1为vlan 10的主网关,vlan 20的备份网关:3.SW2为vlan 20的主网关,vlan 10的备份网关:4.DHCP服务器在vlan 66,网关在SW2上面:5.PC1.PC2自动获取ip地址且可以互相ping通. 实验拓扑如下: 第一步,MSTP配置如下: SW1sysname SW1vlan batch 10 20 66interface G