DHCP服务详解
- DHCP概念和原理
- dhcp服务作用
- 为大量客户机自动分配地址,提供集中管理
- 减轻管理和维护成本,提高网络配置效率
- 可分配的地址信息主要包括:
- 网卡的IP地址、子网掩码
- 对应的网络地址
- 默认网关地址
- DNS服务器地址
- 引导文件、TFTP服务器地址
- DHCP的原理
- 客户端寻找服务器
client – DHCPdiscovery
如果未得到响应,1秒后重发,9秒,13秒,16秒…
- 服务器提供地址
Server – DHCPoffer
提供可用IP,租约信息,服务器地址等
- 接受并广播
Client – DHCPrequest
宣告自己所选择的DHCP服务器
Arp广播,测试自己所选择的DHCP服务器
- 服务器确认
Client – DHCPrequest
Server – DHCPack
包含了所有的网络参数
===========================================================
- 户端重新登录
Client – DHCPrequest
申请,继续源使用分配的IP地址
- 更新租约
8小时 – 4小时 – 2小时
Client – DHCPdiscovery
- DHCP相关文件
- RHEL6的DHCp软件包
Dhcp-4.1.1-3.4.P1.el6.x86_64.rpm
- DHCP的相关配置
端口号:ipv4 udp67、udp68
ipv6 udp546、udp547
服务名:dhcpd(主程序)或者dhcrelay(中继)
主配置文件:/etc/dhcp/dhcpd.conf
模板文件:/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
中继配置文件:/etc/sysconfig/dhcrelay
- DHCP配置文件解析.
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600;
max-lease-time 7200;
#ddns-update-style none;
subnet 10.5.5.0 netmask 255.255.255.224 {
range 10.5.5.26 10.5.5.30;
option domain-name-servers ns1.internal.example.org;
option domain-name "internal.example.org";
option routers 10.5.5.1;
option broadcast-address 10.5.5.31;
default-lease-time 600;
max-lease-time 7200;
}
host passacaglia {
hardware ethernet 0:0:c0:5d:bd:95;
filename "vmunix.passacaglia";
server-name "toccata.fugue.com";
}
host fantasia {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address fantasia.fugue.com;
}
class "foo" {
match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
}
shared-network 224-29 {
subnet 10.17.224.0 netmask 255.255.255.0 {
option routers rtr-224.example.org;
}
subnet 10.0.29.0 netmask 255.255.255.0 {
option routers rtr-29.example.org;
}
pool {
allow members of "foo";
range 10.17.224.10 10.17.224.250;
}
pool {
deny members of "foo";
range 10.0.29.10 10.0.29.230;
}
}
option domain-name 设置DNS域
option domain-name-server 设置DNS服务器地址
default-lease-time 设置默认租约时间,单位为秒
max-lease-time 设置最大租约时间,单位为秒
log-facility 指定日志设备
ddns-update-style 设定DNS的更新方式
subnet网段声明,作用于整个子网段:
range 设置用于分配的IP地址池
option subnet-mask 设置客户机的子网掩码
option routers参数 设置客户机的默认网关地址
option broadcast-address 设置客户机广播地址
host主机声明,作用于某台主机:
hardware Ethernet 设置目标主机的MAC地址
fixed-address 设置为其分配的保留IP
重启服务,使修改的配置生效
#server dhcpd restart
修改网卡配置,设置DHCP的自动分配方式
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
#ifdown eth0
#ifup eth0
注意:配置完成后,记得关闭SELINUX和防火墙
- DHCP服务器端配置
- DHCP客户端配置
- 案例:DHCP中继功能
主机A的IP地址为192.168.1.1,网关为192.168.1.2
主机B的IP地址为eth0:192.168.1.2,eth1:200.200.200.2
主机C网卡设置为DHCP
1、主机A操作步骤如下:
#yum –y install dhcp
#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
#vim /etc/dhcp/dhcpd.conf
#service dhcpd start
#vim /etc/sysctl.conf
#打开网络转发功能- 主机B操作步骤如下:
#yum –y install dhcp
#vim /etc/sysconfig/dhcrelay
#service dhcrelay start
- 主机c操作如下:
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
#设置为DHCP
- DHCP主机地址保留
主机A的IP地址为192.168.1.1
主机B网卡设置为DHCP
主机A和主机B在同一个网段
1、主机A的操作步骤如下:
#yum –y install dhcp
#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample
#vim /etc/dhcp/dhcpd.conf
绑定MAC地址
#service dhcpd restart
2、主机B的操作如下:
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
- DHCP超级作用域
介绍:超级作用域是DHCP服务中的一种管理功能,使用超级作用域,可以将多个作用域组合为单个管理实体。
试验准备:主机A的网卡eth0与主机B的网卡eth0在同一个网段,主机C的网卡eth1与主机B的网卡eth1在同一网段,主机A、B和C关闭防火墙和SELINUX。
- 主机B的操作如下:
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
#vim /etc/sysconfig/network-scripts/ifcfg-eth1
#yum –y install dhcp
#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
#vim /etc/dhcp/dhcpd.conf
#service dhcpd start
- 主机A的网卡设置
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
#ifdown eth0
#ifup eth0
结果如下图
- 主机C的网卡设置
#ifdown eth0
#ifup eth0
结果如图所示
总结:使用上面那种方法,就在两个网段中分配IP地址,就不需要做DHCP中继,唯一问题是连接两个网段的主机要有足够的网卡,也就是说,一个网卡对应一个网段
DHCP服务详解的更多相关文章
- 【入门】广电行业DNS、DHCP解决方案详解(三)——DNS部署架构及案
[入门]广电行业DNS.DHCP解决方案详解(三)——DNS部署架构及案 DNS系统部署架构 宽带业务DNS架构 互动业务DNS架构 案例介绍 案例一 案例二 本篇我们将先介绍DNS系统部署架构体系, ...
- winxp计算机管理中服务详解
winxp计算机管理中服务详解01 http://blog.sina.com.cn/s/blog_60f923b50100efy9.html http://blog.sina.com.cn/s/blo ...
- Android中Service(服务)详解
http://blog.csdn.net/ryantang03/article/details/7770939 Android中Service(服务)详解 标签: serviceandroidappl ...
- WCF中队列服务详解
WCF中队列服务详解 一.引言 在前面的WCF服务中,它都要求服务与客户端两端都必须启动并且运行,从而实现彼此间的交互.然而,还有相当多的情况希望一个面向服务的应用中拥有离线交互的能力.WCF通过服务 ...
- 【转】SSH服务详解
[转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...
- (转)SSH服务详解
SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...
- HTTPD之二————HTTPD服务详解————httpd的配置文件常见设置
HTTPD之二----HTTPD服务详解----httpd的配置文件常见设置 HTTP服务器应用 http服务器程序 httpd apache nginx lighttpd 应用程序服务器 IIS,a ...
- windows 7 系统进程服务详解
windows 7已经发布有段时间了,相信很多网友都已经换上了传说中非常完美的win7系统.win7不仅继承而且还超越了vista的美观界面,性能优化方面也下足了功力.还拥有强大的win xp兼容性, ...
- angular-ngSanitize模块-$sanitize服务详解
本篇主要讲解angular中的$sanitize这个服务.此服务依赖于ngSanitize模块. 要学习这个服务,先要了解另一个指令: ng-bing-html. 顾名思义,ng-bind-html和 ...
随机推荐
- linux 和 android 源码的 cross reference (即网页浏览代码的引用)
linux: http://lxr.free-electrons.com/ 相当好 android: http://androidxref.com
- 修改 jquery easyui 表单验证默认的样式
目前对于不符合要求的输入域会在右侧显示一个带箭头的提示,可是如果我的输入框比较靠右的话就显示不全了(虽然会出滚动条,但是由于鼠标移开就消失了,所以还是看不到提示内容)! 能不能把这个提示的位置改变一下 ...
- MLlib 中的聚类和分类
聚类和分类是机器学习中两个常用的算法,聚类将数据分开为不同的集合,分类对新数据进行类别预测,下面将就两类算法进行介绍. 1. 聚类和分类(1)什么是聚类 聚类( Clustering)指将数据对象分组 ...
- homework-10
不多不说这是一次神奇的作业,作业一拖再拖,到最后发现.... 首先,在一开始的最大字数和问题实现图形界面主要是由我的小伙伴邹同学完成的,所以当我第一次看到说要显示详细运行过程的时候感到很迷茫. 第一感 ...
- Activex WindowsMediaPlayer控件主要方法属性
属性/方法名: 说明:[基本属性] URL:String; 指定媒体位置,本机或网络地址 uiMode:String; 播放器界面模式,可为Full, Mini, None, Invisible pl ...
- Java学习笔记(三):数组
数组声明 java语言中,数组是一种最简单的复合数据类型.数组是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和下标来唯一地确定数组中的元素. int arr1[]; in ...
- Cygwin解决Windows远程登录linux服务器
下载地址http://www.cygwin.com/install.html 选择mirror.htnshost.com网站下载的比较快. 安装Cygwin(/X)需要选择的包: openssh(必选 ...
- 【Winform】Winform 制作一键发布web
前言 最近web网站有个需要,就是打包给客户,客户能够自己手动的进行傻瓜式的安装发布web.找了很多资料,其中涉及到 文件解压 IIS操作 数据库还原 等. 发现现在就主要是两种解决方案: ①:使用V ...
- Codeforces Bubble Cup 8 - Finals [Online Mirror] D. Tablecity 数学题
D. Tablecity Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/D ...
- Lua学习教程之 可变參数数据打包与解包
利用table的pack与unpack进行数据打包与解包.測试代码例如以下: print("Test table.pack()----------------"); functio ...