Linux中的DHCP分配IP原理和配置
文章目录
DHCP的工作原理
DHCP概述
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被用于大型网络环境中,主要作用是集中管理、分配IP地址;在局域网中的主机可以动态的获取IP地址、Gateway地址和DNS服务器地址等信息,并能够提升使用率。
使用DHCP的好处
- 减少管理员的工作量
- 避免输入错误的可能
- 避免lP地址冲突
- 当更改lP地址段时,不需要重新配置每个用户的IP地址
- 提高了IP地址的利用率
- 方便客户端的配置
DHCP的分配方式
- 自动分配:分配到一个IP地址后永久使用
- 手动分配:由DHCP服务器管理员专门指
- IP地址动态分配:使用完后释放该IP,供其它客户机使用
DHCP的租约过程
客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
分为四个步骤
客户机请求IP地址
- 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
- 此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器
服务器响应
- DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
- 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息
客户机选择IP地址
- DHCP客户机从接收到的第一个DHCP Offer消息中提取P地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机
服务器确定租约
- DHCP服务器接收到DHCP Request消息后,以DHCPACK消息的形式向客户机广播成功确认,该消息包含有I地址的有效租约和其他可配置的信息
- 当客户机收到DHCPACK消息时,配置IP地址,完成TCP/IP的初始化
重新登陆
ODHCP客户机每次重新登录网络时,不需要再发送DHCPDiscover信息,而是直接发送包含前一次所分配的IP地的DHCP Request请求信息
更新租约
当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约
使用DHCP动态配置主机地址
-
DHCP服务
-
为大量客户机自动分配地址,提供集中管理
-
减轻管理和维护成本、提高网络配置效率
-
-
可分配的地址信息主要包括
-
网卡的IP地址、子网掩码
-
对应的网络地址、广播地址默认网关地址
-
DNS服务器地址
-
DHCP服务器软件
- CentOS光盘中的dhcp-4.2.5-47.el7.centos.x86_64.rpm
- DHCP软件包的主要文件
主配置文件:letc/dhcpd.conf
执行程序:/usrlsbin/dhcpd、/usrlsbin/dhcrelay
配置DHCP
首先检查DHCP是否安装,挂载光盘
yum install -y dhcp
关闭防护墙
进入安装的dhcp目录中查看到空的配置文件 dhcpd.conf,里面会指引去哪里查看格式(/usr/share/doc/dhcp-4.2.5/),将其覆盖到配置文件中,然后进去全局配置参数
cd /etc/dhcp/
ls
less dhcpd.conf
cd /usr/share/doc/dhcp-4.2.5/
ls
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
设置全局参数配置
default-lease-time 21600; 默认租约为 6 小时,单位为秒
max-lease-time 43200; 最大租约为 12 小时,单位为秒
option domain-name "benet.com"; 指定默认域名
option domain-name-servers202.106.0.20,202.106.148.1; 指定 DNS 服务器地址
ddns-update-style none; 禁用DNS动态更新(可以加快DNS解析速度)
子网段配置
#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.80.o netmask 255.255.255.0 { #声明要分配的网段地址
range 192.168.80.10 192.168.80.20; #设置地址池
option routers 192.168.80.254; #指定默认网关地址
}
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.10.100 192.168.10.200;
option routers 192.168.10.254;
default-lease-time 45600;
}
subnet 192.168.20.0 netmask 255.255.255.0{
range 192.168.20.20 192.168.20.30;
option routers 192.168.20.254;
}
给单机分配固定的IP地址
#host主机声明(给单机分配固定的IP地址)
host hostname { #指定需要分配固定IP地址的客户机名称
hardware ethernet 54:89:98:A3:50:D9; #指定该主机的MAC地址
fixed-address 192.168.4.100; #指定保留给该主机的IP地址
}
如果DHCP服务启动失败,可以查看日志文件
tail -f /var/log/messages
查看租约文件
格式:less /var/lib/dhcpd/dhcpd.lease
实例
设置子网段
设置虚拟机网络连接模式为仅主机
配置三层交换机和二层交换机
查看IP获取情况