了解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. 记录开发基于百度地图API实现在地图上绘制轨迹并拾取轨迹对应经纬度的工具说明

    前言: 最近一直在做数据可视化方面的工作,其中平面可视化没什么难度,毕竟已经有很多成熟的可供使用的框架,比如百度的echart.js,highcharts.js等.还有就是3D可视化了,整体来说难度也 ...

  2. 使用Docker Compose 部署Nexus后初次登录账号密码不正确,并且在nexus-data下没有admin,password

    场景 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...

  3. [转]UiPath Invoke Code

    本文转自:https://dotnetbasic.com/2019/08/uipath-invoke-code.html We will learn step by step tutorial for ...

  4. 部署vue-element-admin流程

    1.修改环境变量: 在以下两个文件: .env_staging [如果修改这个,需要以npm run build:stage启动] .env_production [如果修改这个,需要以npm run ...

  5. MySQL多实例安装教程

    目录 MySQL的多实例 实验准备: 准备阶段: 实验阶段 MySQL的多实例 实验准备: 1. 一个干净的centos7系统 2. 关闭防火墙和selinux 3. 之前已经二进制安装过的MySQL ...

  6. Cocos2d-x 3.2 的内存管理详解

    目标读者:了解 Cocos2d-x 中的节点以及节点树,了解引用计数,了解游戏主循环等概念. 本文首先介绍 Cocos2d-x 3.2 中内存管理的作用,以及各个作用的应用.借由通俗易懂的解释来了解内 ...

  7. kaldi使用thchs30数据进行训练并执行识别操作

    操作系统 : Ubutu18.04_x64 gcc版本 :7.4.0 数据准备及训练 数据地址: http://www.openslr.org/18/ 在 egs/thchs30/s5 建立 thch ...

  8. sprintf函数 (字符格式化函数)

    sprintf函数 字符串格式化命令,主要功能是把格式化的数据写入某个字符串中. sprintf函数原型在<studio.h>中. sprintf( [指向输入格式化后的字符串的缓冲区的指 ...

  9. Microsemi Libero系列教程(一)——Libero开发环境介绍、下载、安装与注册

    前言 相比与Xilinx和Altera在国内的市场,Microsemi的FPGA在国内应用很少很少,网上几乎没有详细的教程,刚开始使用时,遇到了各种问题,自己也走了不少弯路.本系列教程以Libero ...

  10. distinct关键字对执行计划的影响

    一.前言 最近看到一段话,"count(distinct 列名)若列上有索引,且有非空约束或在where子句中使用is not null,则会选择索引快速全扫描.其余情况则选择全表扫描&qu ...