linux中的dhcp
一.DHCP服务
① DHCP (Dynamic HostConfiguration Protocol,动态主机配置协议)
② 由Internet] C作任务小组设计开发
③ 专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
④ 使用DHCP的好处
• 减少管理员的工作量
• 避免输入错误的可能
• 避免IP地址冲突
• 当更改IP地址段时,不需要重新配置每个用户的IP地址
• 提高了IP地址的利用率
• 方便客户端的配置
⑤ DHCP的分配方式
• 自动分配:分配到一个IP地址后永久使用
• 手动分配:由DHCP服务器管理员专门]指定IP地址
• 动态分配:使用完后释放该IP,供其它客户机使用
二.DHCP的租约过程
① 客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
② 分为四个步骤
(1)客户端在网络中搜索服务器
(2)服务器向客户端响应服务
(3)客户端向目标服务器发出服务请求
(4)服务器向客户端提供服务
详情:
1.客户机请求IP地址
• 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
• 此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器
2.服务器响应
• DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
• 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播- -则DHCP Offer消息
3.客户机选择IP地址
• DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机
4.服务器确定租约
• DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
• 当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化
5.重新登录
• DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
6.更新租约
• 当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
• 客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约
租约过程:

重新登录:

三.使用DHCP动态配置主机地址
① DHCP服务
• 为大量客户机自动分配地址,提供集中管理
• 减轻管理和维护成本、提高网络配置效率
② 可分配的地址信息主要包括
• 网卡的IP地址、子网掩码
• 对应的网络地址、广播地址
• 默认网关地址
• DNS服务器地址
四.安装DHCP服务器
DHCP服务器软件
• CentOS光盘中的dhcp-4.2.5-47.el7.centos.x86_ 64 .rpm
• DHCP软件包的主要文件
◆主配置文件: /etc/dhcpd.conf
◆执行程序: /usr/sbin/dhcpd、/usr/sbin/dhcrelay
详情:
配置DHCP服务器
yum install -y dhcp
cd /etc/dhcp/
ls
less dhcpd. conf
cd /usr/ share/doc/dhcp-4.2.5/
ls
less dhcpd.conf.example
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-servers 202.106.0.20,202.106.148.1;
指定DNS服务器地址
ddns-update-style none;
禁用DNS动态更新
subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.80.0 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.1.100 192.168.1.200;
option routers 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.20 192.168.2.30;
option routers 192. 68.2.254;
}
host主机声明(给单机分配固定的IP地址)
host hostname{ #指定需要分配固定IP地址的客户机名称
hardware ethernet 00:c0:c3:22:46:81; #指定该主机的MAC地址
fixed-address 192. 168.4.100; #指定保留给该主机的IP地址
}
后面内容可都删除
systemctl start dhcpd
systemctl stop firewalld
setenforce 0
Linux客户端使用DHCP 动态获取IP
方法一:
vi /etc/ sysconfig/network-scripts/i fcfg-ens33
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=dhcp
ifdown ens33 ; ifup ens33
方法二:
dhclient -d ens33
查看租约文件
less / var/lib/ dhcpd/ dhcpd. lease
举例
安装软件包以及备份:

没有的话yum install -y dhcp安装一下



更改连接模式,配置宿主机和虚拟机网段、网关:





如何连接云:


配置相关vl接口,以及虚拟网关:


subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数):


配置中继服务器:

host主机声明(给单机分配固定的IP地址):



linux中的dhcp的更多相关文章
- 嵌入式linux中使用 DHCP功能描述
嵌入式linux中使用 DHCP功能描述 busybox中udhcpc的默认script脚本地址为#define DEFAULT_SCRIPT CONFIG_UDHCPC_DEFAULT_SCRI ...
- Linux中的DHCP服务
目录 DHCP DHCP的报文类型 DHCP的部署 DHCP中继(DHCP代理) DHCP DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局 ...
- linux中怎样设置DHCP
linux怎样设置DHCP 环境:RH linux 9.0 使用linux下经常使用的dhcpd包. 最新版本号 dhcp3.0.5 下载地址: 下载 1.安装: 先拷贝dhcp-3.0.5.tar. ...
- Linux中DHCP服务器的简单配置
我安装了两台linux系统,一个作为服务器,一个客户端 两个都有3个网卡, 后两个网卡聚合为zhi一个网卡:Linux 网卡聚合 两台电脑都一样. 那么如何为这个聚合网卡进行DHCP的分配呢? 1.由 ...
- Linux中DHCP服务器的简单配置(转)
我安装了两台linux系统,一个作为服务器,一个客户端 两个都有3个网卡, 后两个网卡聚合为zhi一个网卡:Linux 网卡聚合 两台电脑都一样. 那么如何为这个聚合网卡进行DHCP的分配呢? 1.由 ...
- Linux 中使用 KVM
from:http://www.php-oa.com/2010/02/22/ubutnu-kvm-vmware.html 听讲XEN很快就要从LINUX内核中去掉,redhat和Ubuntu也大力的在 ...
- Linux中ifcfg-eth0配置参数解释
Linux中设置IP地址经常使用到ifcfg-eth0这个文件. vi /etc/sysconfig/network-scripts/ifcfg-eth0 附录文件中的内容: DEVICE=eth0 ...
- linux中怎样设置dhcpd
linux中怎样设置DHCP 在 linux 以下设置 DHCP一点也不复杂﹐您全部要做的仅仅有一个文件﹕/etc/dhcpd.conf . 以下﹐我用我自己的设置文件来说说怎么改动这个文件﹕ d ...
- linux中iptables配置文件及命令详解详解
iptables配置文件 直接改iptables配置就可以了:vim /etc/sysconfig/iptables. 1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放. 下 ...
随机推荐
- 精尽Spring Boot源码分析 - 文章导读
该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...
- spring boot @Async异步注解上下文透传
上一篇文章说到,之前使用了@Async注解,子线程无法获取到上下文信息,导致流量无法打到灰度,然后改成 线程池的方式,每次调用异步调用的时候都手动透传 上下文(硬编码)解决了问题. 后面查阅了资料,找 ...
- 15、oracle多表查询
15.0.实验建表: --父表 create table class( id number(10)constraint class_id_pk primary key, class_name varc ...
- hdu 6030 矩阵快速幂
大致题意: 一条长度为n的项链,由红色珠子和蓝色珠子(分别用1和0表示)组成,在连续的素数子段中,红色珠子的个数不能少于蓝色珠子.问组成这个项链有多少种方案,求方案数模1000000007 分析: 首 ...
- 【知识点】inline函数、回调函数、普通函数
目录 一.inline内联函数 1.1 使用 1.2 编译器对 inline 函数处理步骤 1.3 优缺点 1.3.1 优点 1.3.2 慎用内联 1.3.3 不宜使用内联 1.4 虚函数(virtu ...
- Linux安装mysql5.7版本
1.linux安装mysql5.7顺序 ①mysqladmin –version 查看版本号 ②mysql5.7安装在linux中需要先初始化 Mysqld –initialize –user=mys ...
- tf-gpu报错:ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory
错误1:ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory 一般这种问题 ...
- ESP32-性能监控笔记
基于ESP-IDF4.1 1 #include <stdio.h> 2 #include <string.h> 3 #include <unistd.h> 4 #i ...
- Java | 字符串缓冲区(StringBuilder)
为什么要出现字符缓冲区 我们都知道,String类是不可变的,但是有的时候,我们要用到字符串的拼接,如果拼接的数量小的时候,还可以,但是如果拼接的数据量太大的话,内存的占用就太大了,所以这个时候再用S ...
- Servlet核心技术
一.基本概念 1.C/S C/S架构是客户端服务器架构,将需要处理的业务合理的分配到客户端和服务器,客户端负责与用户的交互任务,服务器负责数据管理. 优点: 客户端界面和功能可以很丰富 应用服务器负荷 ...