了解DHCP协议工作原理

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)提供了动态配置IP地址的功能。在DHCP网络中,客户端不再需要自行输入网络参数,而是由DHCP服务器向客户端自动分配。

IP地址租用的过程

IP租用请求

IP租用提供

IP租用选择

IP租用确认

获取IP地址后的处理过程
客户端重新登录时的IP处理

DHCP客户端每次重新登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息。

IP地址的续约

DHCP的租约期限一般默认是8天,DHCP客户端必须在租约过期前对它进行续约。

配置DHCP服务

规划IP地址段
确定DHCP服务器应分发给客户端的IP地址范围。
192.168.10.0/24
192.168.10.100-192.168.10.200
为客户端确定正确的子网掩码
255.255.255.0
总经理专用地址:192.168.10.8(保留地址)
确定DHCP服务器不应向客户端分发的所有IP地址。
决定IP地址的租约期限
网关地址:192.168.10.254
DNS服务器地址:192.168.10.1
dhcp服务的安装与基本配置
安装DHCP服务
安装DHCP服务
执行“yum install dhcp”命令进行安装,在RHEL6系统中所对应的rpm安装包为“dhcp.x86_64 12:4.1.1-31.P1.el6”。
服务名称:dhcpd
主配置文件:/etc/dhcp/dhcpd.conf 默认设置如图 样板文件:/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample dhcpd.conf配置文件的格式如下:
全局参数
声明 {
配置选项/局部参数
配置选项/局部参数
……
}

配置好的dhcpd.conf文件

option domain-name-servers 192.168.80.1  设置DNS服务器选项,可放在全局部份。
Subnet 192.168.80.0 nemask 255.255.255.0 用于定义作用域
Range 192.168.80.21 192.168.80.254 指定当前作用域中可供分配的IP地址范围
Option routers 192.168.80.2 指定当前作用域的网关
default-lease-time 86400 默认租约时间,单位为秒
max-lease-time 172800 最大租约时间,一般设置为默认租约时间的2倍
启动dhcp服务
Service dhcpd start
chconfig --level 35 dhcpd on
windows客户端的配置与测试
关闭VMWare虚拟网卡的DHCP功能

测试能否租用到IP地址

IP地址的释放与重新申请
在Windows客户端有两条非常重要地与DHCP服务相关的命令:
ipconfig 查看本机的IP基本信息
Ipconfig /all 查看本机的IP详细信息
ipconfig /release:释放已经获得的IP地址。
ipconfig /renew:重新申请IP地址。
“ipconfig /release”命令可以在IP租约未到期之前,主动将地址释放掉。而执行“ipconfig /renew”命令可以强制开始地址申请过程,使客户端重新获得新的IP地址。
自动专用IP地址
自动专用地址是指169.254.0.0/16网段中的地址,这是一个临时的备用地址,即如果客户端未能从DHCP服务器处申请到IP地址,而且也没有在“TCP/IP属性”设置中启用
“备用配置”时,系统会自动分配一个临时地址。
保留特定的IP地址
保留IP地址的作用
DHCP服务器可以保留特定的IP地址给指定的客户端使用,也就是说,当这个客户端每次向DHCP服务器索取IP地址或更新租约时,DHCP服务器都会给该客户端分配相同的IP地址。
保留IP地址的配置

Option domain-name-servers 192.168.10.1;
Subnet 192.168.10.0 netmask 255.255.255.0{
Range 192.168.10.20 192.168.10.254;
Option routers 192.168.10.2;
Default-lease-time 86400;
Max-lease-time 172800;
Host teacher{ Hardware ethernet 00:0C:29:21:98:D6;
Fixed-address 192.168.10.100; }
“host teacher”,指定为其保留IP地址的客户端名称,名称可以随便设置,如这里为“teacher”。
“hardware ethernet”,指定客户端计算机的MAC地址。
“fixed-address”,指定对应的保留IP地址。 了
Linux客户端配置
配置Linux客户端的网卡配置文件
配置Linux客户端的网卡配置文件:vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=”yes”
BOOTPROTO=dhcp
重启网卡
Ifdown eth0
Ifup eth0
查看获取的IP地址
Ifconfig
多个作用域的配置
ddns-update-style none;
option domain-name-servers 192.168.10.1; subnet 192.168.10.0 netmask 255.255.255.0 {
range 168.20.0 netmask 255.255.255.0 {
range 192.168.10.100 192.168.10.200;
option domain-name "internal.example.org";
option routers 192.168.10.1;
option broadcast-address 192.168.10.255;
default-lease-time 600;
max-lease-time 7200;
}
subnet 192.168.20.0 netmask 255.255.255.0 {
range 168.20.0 netmask 255.255.255.0 {
range 192.168.20.100 192.168.20.200;
option domain-name "internal.example.org";
option routers 192.168.20.1;
option broadcast-address 192.168.20.255;
default-lease-time 600;
max-lease-time 7200;
}
配置超级作用域
什么是超级作用域呢?将多个作用域组合在一起形成超级作用域
ddns-update-style none;
shared-network test {
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.100 192.168.10.200;
option domain-name-servers 192.168.10.1;
option domain-name "internal.example.org";
option routers 192.168.10.1;
option broadcast-address 192.168.10.255;
default-lease-time 600;
max-lease-time 7200;
}
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.200;
option domain-name-servers 192.168.0.1;
option domain-name "internal.example.org";
option routers 192.168.0.1;
option broadcast-address 192.168.0.255;
default-lease-time 600;
max-lease-time 7200;
}
host web {
hardware ethernet 00:0C:29:9D:EA:33;
filename "vmunix.passacaglia";
server-name "toccata.fugue.com";
Fixed-address 192.168.0.110;
}
host DNS {
hardware ethernet 00:0C:29:9D:EA:33;
filename "vmunix.passacaglia";
server-name "toccata.fugue.com";
Fixed-address 192.168.0.110;
}
配置DHCP中继代理服务器
中继代理服务器网卡地址配置
eth0:  192.168.10.2
eth1: 192.168.0.1
在dhcp服务器上配置静态路由
ip route add 192.168.0.0/24 via 192.168.10.2
在中继服务器上开启转发功能:vim /etc/sysctl.conf
修    改:net.ipv4.ip_forward=1
启用转发:sysctl -p
在中继服务器上安装dhcp服务
配置主配置文件
Subnet 192.168.10.0 netmask 255.255.255.0{
Range 192.168.10.20 192.168.10.254;
Option routers 192.168.10.2;
Default-lease-time 86400;
Max-lease-time 172800;
}
Subnet 192.168.20.0 netmask 255.255.255.0{
Range 192.168.0.20 192.168.20.254;
Option routers 192.16820.1;
Default-lease-time 86400;
Max-lease-time 172800;
}
配置中继代理
配置中继代理: vim /etc/sysconfig/dhcrelay
修改:INTERFACES=“eth0 eth1”
DHCPSERVERS=“192.168.10.1”
重启服务:service dhcrelay start

Linux:DHCP服务器的搭建的更多相关文章

  1. Linux常见服务器——DHCP服务器的搭建

    一.基础知识: 1.DHCP简介: DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP ...

  2. Linux服务器架设篇,DHCP服务器的搭建

    学习之前,我们首先来看一个案例: 假如你是一个学校的网络管理老师,需要为教室的70多台电脑配置好网络你会怎么办? 一台一台的给他们配置? 在这里我特别欣赏鸟哥的一句话--"当管理员最大的幸福 ...

  3. DHCP服务器的搭建及抓包分析DHCP的实现

    原文:http://blog.51cto.com/liwenhui/105129 1.环境搭建:     DC&DHCP SERVER     IP:192.168.1.254 ( 这是一台D ...

  4. linux DHCP 服务器

    配置  1:/etc/dhcp.conf 配置文件 2:dhcp.leases 启动 dhcp 服务器 linux dhcp客户端 windows dhcp 客户端

  5. RHEL7.2下DHCP服务器的搭建

    DHCP(?Dynamic Host Configuration Protocol)是一种帮助计算机从指定的DHCP服务器获取配置信息的自举协议 请求配置信息的计算机叫做DHCP客户端,而提供信息的叫 ...

  6. DHCP服务器的搭建

    dhcp笔记整理:http://services.linuxpanda.tech/DHCP/index.html 1 dhcp简介 DHCP原理 动态主机配置协议(Dynamic Host Confi ...

  7. NTP时间服务器+DHCP服务器的搭建

    一.构建NTP时间服务器 ntp服务器监控端口UDP:123 安装ntp和ntpdate 命令:yum  -y install ntp netdate 修改配置文件/etc/ntp.conf 启动nt ...

  8. Linux samba服务器的搭建

    目录 1. 安装samba 2. 配置smb.conf 3. 创建samba登陆用户 4. 创建samba共享文件夹 5. 重启samba服务 6. 访问samba共享文件夹 7. 参考资料 1. 安 ...

  9. Linux SVN服务器的搭建配置及分支的创建与合并

    第一步:通过yum命令安装svnserve,命令如下: >yum -y install subversion 若需查看svn安装位置,可以用以下命令: >rpm -ql subversio ...

随机推荐

  1. 在kubernetes 集群内访问k8s API服务

    所有的 kubernetes 集群中账户分为两类,Kubernetes 管理的 serviceaccount(服务账户) 和 useraccount(用户账户).基于角色的访问控制(“RBAC”)使用 ...

  2. Java 包(package)的概念及实例

    包的作用 1.把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用. 2.如同文件夹一样,包也采用了树形目录的存储方式.同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调 ...

  3. Newifi-mini OpenWrt 下 EAP-PEAP,EAP-TLS 企业级无线认证及 FreeRadius3

    Newifi-mini OpenWrt 下 EAP-PEAP,EAP-TLS 企业级无线认证及 FreeRadius3 转载注明来源: 本文链接 来自osnosn的博客,写于 2019-07-15. ...

  4. Ocelot网关在.Net Core 的使用

    1.  项目环境 .Net Core 2.2      Ocelot 13.5.2 2. 基本使用 * Nuget 安装 Ocelot , Ocelot.Provider.Polly * 修改 Pro ...

  5. NSwag.AspNetCore常用功能介绍

    对于asp.net core 下的Swagger,之前一直用Swashbuckle的,因为官方推荐,再加上有老张的博客助力<从壹开始前后端分离[ .NET Core2.0/3.0 +Vue2.0 ...

  6. Centos7通过yum跟源码编译安装Nginx

    源码编译安装 http://nginx.org/en/download.html 到官网下载,然后用XFTP上传到root目录 把文件解压出来 tar -zxvf nginx-1.16.0.tar.g ...

  7. Java内存区域与内存溢出异常,对象的创建

    一.运行时数据区域 Java程序的执行流程:首先 .java源代码文件会被Java编译器编译为字节码文件(.class后缀),然后由JVM中的类加载器加载各个类的字节码文件,加载完毕之后,交由JVM执 ...

  8. python面向对象-1

    1.面向对象的思想优点 优点: 简化代码 ,构建公共模板 ,扩展性强 思想: 类作为模板 ,对象通过模板实例化对象 ,对象去做事 ,抽象将显示存在的事物使用代码体现 2.三大特性 封装(狭义) : 对 ...

  9. 松软科技web课堂:随机Math.random()

    Math.random() 返回 0(包括) 至 1(不包括) 之间的随机数: 实例 Math.random(); // 返回随机数 JavaScript 随机整数 Math.random() 与 M ...

  10. unittest框架之 BeautifulReport 模板报告生成的正确姿势

    使用unittest框架的自动化测试,报告一定很重要,目前介绍一个比较高大上的报告模板 BeautifulReport.如果首次使用的话需要安装 pip install beautifulreport ...