Linux:DHCP服务器的搭建
了解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服务器的搭建的更多相关文章
- Linux常见服务器——DHCP服务器的搭建
一.基础知识: 1.DHCP简介: DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP ...
- Linux服务器架设篇,DHCP服务器的搭建
学习之前,我们首先来看一个案例: 假如你是一个学校的网络管理老师,需要为教室的70多台电脑配置好网络你会怎么办? 一台一台的给他们配置? 在这里我特别欣赏鸟哥的一句话--"当管理员最大的幸福 ...
- DHCP服务器的搭建及抓包分析DHCP的实现
原文:http://blog.51cto.com/liwenhui/105129 1.环境搭建: DC&DHCP SERVER IP:192.168.1.254 ( 这是一台D ...
- linux DHCP 服务器
配置 1:/etc/dhcp.conf 配置文件 2:dhcp.leases 启动 dhcp 服务器 linux dhcp客户端 windows dhcp 客户端
- RHEL7.2下DHCP服务器的搭建
DHCP(?Dynamic Host Configuration Protocol)是一种帮助计算机从指定的DHCP服务器获取配置信息的自举协议 请求配置信息的计算机叫做DHCP客户端,而提供信息的叫 ...
- DHCP服务器的搭建
dhcp笔记整理:http://services.linuxpanda.tech/DHCP/index.html 1 dhcp简介 DHCP原理 动态主机配置协议(Dynamic Host Confi ...
- NTP时间服务器+DHCP服务器的搭建
一.构建NTP时间服务器 ntp服务器监控端口UDP:123 安装ntp和ntpdate 命令:yum -y install ntp netdate 修改配置文件/etc/ntp.conf 启动nt ...
- Linux samba服务器的搭建
目录 1. 安装samba 2. 配置smb.conf 3. 创建samba登陆用户 4. 创建samba共享文件夹 5. 重启samba服务 6. 访问samba共享文件夹 7. 参考资料 1. 安 ...
- Linux SVN服务器的搭建配置及分支的创建与合并
第一步:通过yum命令安装svnserve,命令如下: >yum -y install subversion 若需查看svn安装位置,可以用以下命令: >rpm -ql subversio ...
随机推荐
- 记录开发基于百度地图API实现在地图上绘制轨迹并拾取轨迹对应经纬度的工具说明
前言: 最近一直在做数据可视化方面的工作,其中平面可视化没什么难度,毕竟已经有很多成熟的可供使用的框架,比如百度的echart.js,highcharts.js等.还有就是3D可视化了,整体来说难度也 ...
- 使用Docker Compose 部署Nexus后初次登录账号密码不正确,并且在nexus-data下没有admin,password
场景 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...
- [转]UiPath Invoke Code
本文转自:https://dotnetbasic.com/2019/08/uipath-invoke-code.html We will learn step by step tutorial for ...
- 部署vue-element-admin流程
1.修改环境变量: 在以下两个文件: .env_staging [如果修改这个,需要以npm run build:stage启动] .env_production [如果修改这个,需要以npm run ...
- MySQL多实例安装教程
目录 MySQL的多实例 实验准备: 准备阶段: 实验阶段 MySQL的多实例 实验准备: 1. 一个干净的centos7系统 2. 关闭防火墙和selinux 3. 之前已经二进制安装过的MySQL ...
- Cocos2d-x 3.2 的内存管理详解
目标读者:了解 Cocos2d-x 中的节点以及节点树,了解引用计数,了解游戏主循环等概念. 本文首先介绍 Cocos2d-x 3.2 中内存管理的作用,以及各个作用的应用.借由通俗易懂的解释来了解内 ...
- kaldi使用thchs30数据进行训练并执行识别操作
操作系统 : Ubutu18.04_x64 gcc版本 :7.4.0 数据准备及训练 数据地址: http://www.openslr.org/18/ 在 egs/thchs30/s5 建立 thch ...
- sprintf函数 (字符格式化函数)
sprintf函数 字符串格式化命令,主要功能是把格式化的数据写入某个字符串中. sprintf函数原型在<studio.h>中. sprintf( [指向输入格式化后的字符串的缓冲区的指 ...
- Microsemi Libero系列教程(一)——Libero开发环境介绍、下载、安装与注册
前言 相比与Xilinx和Altera在国内的市场,Microsemi的FPGA在国内应用很少很少,网上几乎没有详细的教程,刚开始使用时,遇到了各种问题,自己也走了不少弯路.本系列教程以Libero ...
- distinct关键字对执行计划的影响
一.前言 最近看到一段话,"count(distinct 列名)若列上有索引,且有非空约束或在where子句中使用is not null,则会选择索引快速全扫描.其余情况则选择全表扫描&qu ...