了解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. Git submodule update 命令执行

    git submodule update操作可能导致执行.gitmodules文件中定义的任意shell命令. 受影响的产品 Git版本2.20.0至2.24.0 修复版本 Git v2.24.1,v ...

  2. js解决客户端与服务器时间不一致的问题

    引出 最近在写一个项目时,要根据时间进行不同的展示,直接用new Date().getTime()获取当前时间,结果就出问题了.有些用户擅自修改自己的本地时间,导致获取到的时间并不是当前时间,尴尬. ...

  3. Redis学习二(数据操作).

    key 操作 删除 key:del key 批量删除key:redis-cli -a(密码)keys "QXJ_*"| xargs redis-cli -a(密码)del 查看所有 ...

  4. Jenkins使用SSH构建Go项目并执行

    目录 下载插件 配置要部署的服务器 构建项目 Jenkinx可以帮助我们通过SSH插件,将项目直接部署到指定的服务器. 下载插件 (1)点击左侧的"系统管理"菜单 ,然后点击 (2 ...

  5. OSG绘制空间凹多边形并计算其面积

    目录 1. 思路 1) 多边形分格化 2) 几何图元遍历 2. 实现 3. 参考 1. 思路 这个问题其实涉及到OSG中的两个问题:多边形分格化和几何图元遍历. 1) 多边形分格化 在OpenGL/O ...

  6. 推荐一个好用的行内可编辑的table组件 vxe-table

    项目中有一个需要用户点击table单元格可编辑的需求,由于博主用的是elementUI,element组件内实现可编辑,用过的小伙伴都知道,非常麻烦,后来博主在浏览组件的时候发现了 一款非常好用的ta ...

  7. Oracle - SPM固定执行计划

    1. 通过dbms_xplan.display_cursor查看指定sql都有哪些执行计划 SQL> select * from table(dbms_xplan.display_cursor( ...

  8. 基于django中间件的编程思想

    目录 前言 前期准备 importlib模块介绍 基于django中间件的编程思想 django中settings源码 配置文件的插拔式设计 基于django中间件的思想,实现功能配置 前言 在学习d ...

  9. 【转载】【笔记】vue-router之路由传递参数

    参考博客地址:https://blog.51cto.com/4547985/2390799 1.通过<router-link> 标签中的to传参 基本语法: <router-link ...

  10. 关于tomcat对编码不正确的url参数报错的解决

    按照规范,url参数必须使用限定字符,其它字符需要进行编码,用像js的encodeurlcomponent函数. 在IE和360浏览器的兼容模式,不会自动对url的参数进行编码,会导致tomcat报错 ...