目录
一.挂载光盘
二.配置yum源
三.安装DHCP
四.DHCP配置管理
五.使用DHCP
在一台主机中,在配置DHCP:
一.先挂载光盘:mount /dev/cdrom /mnt
二.配置yum源
1.cd /etc/yum.repos.d/
2.vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
3.yum clean all 清理缓存
4.yum makecache 建立缓存
5.systemctl stop firewalld 关闭防火墙
三.yum -y install dhcp 安装 dhcp
四.dhcp配置管理
[root@master ~]
# cd /etc/dhcp/
[root@master dhcp]
# ls
dhclient.d dhcpd6.conf dhcpd.conf
[root@master dhcp]
# cat dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf(5) man page
#
[root@master dhcp]
# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
/etc/dhcp/dhcpd.conf
cp
:是否覆盖
"/etc/dhcp/dhcpd.conf"
?
y
配置文件详解
[root@zutuanxue ~]
# cat /etc/dhcp/dhcpd.conf
# #
号代表注释
# DHCP
服务配置文件分为全局配置和作用域配置,很好区分:
subnet
的就是作用域 不在
subnet
里面的就是
全局设置。
# dhcpd.conf
#
# Sample configuration file for ISC dhcpd
#
#DNS
全局选项,指定
DNS
服务器的地址,可以是
IP
,也可以是域名。
# option definitions common to all supported networks...
# DNS
的域名
option domain-name
"example.org"
;
#
具体的
DNS
服务器
option domain-name-servers ns1.example.org, ns2.example.org;
#
默认租约为
600s
default-lease-time
600
;
#
最大租约为
7200s
,客户机会在
default-lease-time
快到期时向服务器续租,如果此时客户机死机
/
重
启,而默认租约时间到期了,服务器并不会立即回收
IP
地址,而是等到最大租约时间到期,客户机还没有过来
续约,才会回收
IP
地址。
max-lease-time
7200
;
#
动态
DNS
更新方式
(none:
不支持;
interim:
互动更新模式;
ad-hoc:
特殊更新模式
)
# Use this to enble / disable dynamic dns updates globally.
#ddns-update-style none;
#
如果该
DHCP
服务器是本地官方
DHCP
就将此选项打开,避免其他
DHCP
服务器的干扰。
#
当一个客户端试图获得一个不是该
DHCP
服务器分配的
IP
信息,
DHCP
将发送一个拒绝消息,而不会等待请求
超时。当请求被拒绝,客户端会重新向当前
DHCP
发送
IP
请求获得新地址。保证
IP
是自己发出去的
#
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
#authoritative;
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
#
日志级别
log-facility local7;
# No service will be given on this subnet, but declaring it helps the
# DHCP server to understand the network topology.
#
作用域相关设置指令
#subnet
定义一个作用域
#netmask
定义作用域的掩码
#range
允许发放的
IP
范围
#option routers
指定网关地址
#option domain-name-servers
指定
DNS
服务器地址
#option broadcast-address
广播地址
#
#
#
案例
:
定义一个作用域 网段为
10.152.187.0
掩码为
255.255.255.0
#
此作用域不提供任何服务
subnet
10
.152.187.0 netmask
255
.255.255.0 {
}
# This is a very basic subnet declaration.
#
案例
:
定义一个基本的作用域
#
网段
10.254.239.0
掩码
255.255.255.224
#
分发范围
10.254.239.10-20
#
网关为
rtr-239-0-1.example.org, rtr-239-0-2.example.org
subnet
10
.254.239.0 netmask
255
.255.255.224 {
range
10
.254.239.10
10
.254.239.20;
option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
}
# This declaration allows BOOTP clients to get dynamic addresses,
# which we don't really recommend.
#
案例
:
允许采用
bootp
协议的客户端动态获得地址
#bootp DHCP
的前身
#BOOTP
用于无盘工作站的局域网中,可以让无盘工作站从一个中心服务器上获得
IP
地址。通过
BOOTP
协议可
以为局域网中的无盘工作站分配动态
IP
地址,
#
这样就不需要管理员去为每个用户去设置静态
IP
地址。
subnet
10
.254.239.32 netmask
255
.255.255.224 {
range dynamic-bootp
10
.254.239.40
10
.254.239.60;
option broadcast-address
10
.254.239.31;
option routers rtr-239-32-1.example.org;
}
#
案例
:
一个简单的作用域案例
# A slightly different configuration for an internal subnet.
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
;
}
# Hosts which require special configuration options can be listed in
# host statements. If no address is specified, the address will be
# allocated dynamically (if possible), but the host-specific information
# will still come from the host declaration.
#
#
保留地址
:
可以将指定的
IP
分发给指定的机器,根据网卡的
MAC
地址来做触发
#host:
启用保留。
#hardware:
指定客户端的
mac
地址
#filename:
指定文件名
#server-name:
指定下一跳服务器地址
#fixed-address:
指定保留
IP
地址
#
#
#
案例
:
这个案例中分发给客户端的不是
IP
地址信息,而是告诉客户端去找
toccata.fugue.com
服务器,并
且下载
vmunix.passacaglia
文件
host passacaglia {
hardware ethernet
0
:0:c0:5d:bd:95;
filename
"vmunix.passacaglia"
;
server-name
"toccata.fugue.com"
;
}
# Fixed IP addresses can also be specified for hosts. These addresses
# should not also be listed as being available for dynamic assignment.
# Hosts for which fixed IP addresses have been specified can boot using
# BOOTP or DHCP. Hosts for which no fixed address is specified can only
# be booted with DHCP, unless there is an address range on the subnet
# to which a BOOTP client is connected which has the dynamic-bootp flag
# set.
#
案例
:
保留地址,将指定
IP(fantasia.fugue.com
对应的
IP)
分给指定客户端网卡
(MAC:08:00:07:26:c0:a5)
host fantasia {
hardware ethernet
08
:00:07:26:c0:a5;
fixed-address fantasia.fugue.com;
}
#
超级作用域
#
超级作用域是
DHCP
服务中的一种管理功能,使用超级作用域,可以将多个作用域组合为单个管理实体。
# You can declare a class of clients and then do address allocation
# based on that. The example below shows a case where all clients
# in a certain class get addresses on the 10.17.224/24 subnet, and all
# other clients get addresses on the 10.0.29/24 subnet.
#
在局域网中,可以配置策略根据各个机器的具体信息分配
IP
地址和其他的网络参数,客户机的具体信息:客
户机能够给
dhcp
服务提供的信息由有两个,
#
第一个就是网卡的
dhcp-client-identifier
(
mac
地址),
#
第二个就是设备的
vendor-class-identifier
。
#
管理员可以根据这两个信息给不同的机器分组。
#
案例
:
#
按
client
某种类型分组
DHCP,
而不是按物理接口网段
#
例子
: SUNW
分配地址段
10.17.224.0/24
#
非
SUNW
的主机
,
分配地址段
10.0.29.0/24
#
定义一个
dhcp
类
:foo
六、
DHCP
配置使用
配置一个作用域,用于为本地局域网中的计算机发放
IP
信息。要求:
本地网段
:192.168.49.0/24
发放
IP
地址:
192.168.49.100–150
网关:
192.168.49.254
DNS1
:
8.8.8.8
DNS2
:
114.114.114.114
默认租约为两个小时
最大租约为
3
个小时
本
DHCP
服务器为本地权威
DHCP
,要求可以本地所有计算机获得
IP
都是由本
DHCP
发放
DHCP
服务配置
#request
广播中
vendor-class-identifier
字段对应的值前四个字节如果是
"SUNW",
则视合法客户端
.
class
"foo"
{
match
if
substring (option vendor-class-identifier,
0
,
4
)
=
"SUNW"
;
}
#
定义一个超级作用域
: 224-29
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;
}
#
关连池
,
如果客户端匹配
foo
类,将获得该池地址
pool {
allow members of
"foo"
;
range
10
.17.224.10
10
.17.224.250;
}
#
关连池
,
如果客户端配置
foo
类,则拒绝获得该段地址
pool {
deny members of
"foo"
;
range
10
.0.29.10
10
.0.29.230;
}
}
[root@zutuanxue dhcp]
# cat /etc/dhcp/dhcpd.conf
option domain-name-servers
8
.8.8.8,
114
.114.114.114;
#
声明
DNS
服务器
default-lease-time
7200
;
#
定义默认租约时间
max-lease-time
10800
;
#
定义最大租约时间
authoritative;
#
拒绝不正确的
IP
地址的要求
log-facility local7;
#
定义日志
subnet
192
.168.49.0 netmask
255
.255.255.0 {
range
192
.168.49.100
192
.168.49.150;
option routers
192
.168.49.254;
option broadcast-address
192
.168.49.255;
default-lease-time
7200
;
max-lease-time
10800
;
}
启动
dhcp
服务
[root@master ~]
# systemctl start dhcpd
查看端口占用
#
查看端口占用可以使用命令
netstat
-a
或
--all
:显示所有连接和监听端口。
-t
或
--tcp
:显示
TCP
协议的连接。
-u
或
--udp
:显示
UDP
协议的连接。
-n
或
--numeric
:直接使用数字显示地址和端口号。
-p
或
--programs
:显示监听端口的进程信息。
#
查看启动情况,同时也验证了客户端使用的是
68
端口,服务端使用的是
67
端口
[root@master ~]
# netstat -anptu|grep :67
udp
0 0 0
.0.0.0:67
0
.0.0.0:*
5185
/dhcpd
udp
0 0 0
.0.0.0:67
0
.0.0.0:*
2318
/dnsmasq
启动一台测试进行测试,本次环境使用
linux
客户端或
windows
客户端都可以
客户机的网络适配器