当前位置: 首页 > web >正文

DHCP原理与配置

目录

一、了解DHCP服务

1. 什么是DHCP

2. 使用DHCP的好处

3. DHCP的分配方式

二、DHCP的租约过程

1. 租约过程分为四个步骤

1.1 客户机请求IP地址

1.2 服务器响应

1.3 客户机选择IP地址

1.4 服务器确定租约

1.5 重新登录

1.6 更新租约

2. 使用DHCP动态配置主机地址

三、DHCP场景应用实验

1.实验环境

2.操作步骤

2.1 修改CentOS 7-1 服务端的网卡配置文件

2.2 编辑dhcp全局配置文件,设置好对应的网络池

2.3 重启网卡,启用dhcp服务

2.4 打开CentOS 7-2 客户端,并修改网卡配置

2.5 刷新网卡,通过DHCP获取IP

2.6 在CentOS 7-1 服务端中查看租约

四、vsftp场景应用实验

1.实验环境

2.操作步骤

2.1 配置匿名访问

2.2 配置本地用户访问ftp,禁止匿名用户登录

2.3 对本地用户访问切换目录进行限制

2.4 修改匿名用户、本地登录的默认目录

2.5 黑名单、白名单的使用


一、了解DHCP服务

1. 什么是DHCP

● DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中

● 由Internet工作任务小组设计开发

● 专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

主要作用是集中地管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

DHCP作为应用层协议,它依靠并且使用着传输层中UDP协议。

对于DHCP中分为客户端、服务端,客户端用的端口为68,服务端用的端口为67

2. 使用DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能性
  • 避免IP地址冲突
  • 当更改IP地址段时,不需要重新配置每个用户的IP地址
  • 提高了IP地址的利用率
  • 方便客户端的配置

3. DHCP的分配方式

● 自动分配:分配到一个IP地址后永久使用

● 手动分配:由DHCP服务器管理员专门指定IP地址

● 动态分配:使用完后释放该IP,供其它客户机使用

二、DHCP的租约过程

● 客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

1. 租约过程分为四个步骤

(1)客户端在网络中搜索服务器

(2)服务器向客户端响应服务

(3)客户端向目标服务器发出服务请求

(4)服务器向客户端提供服务

1.1 客户机请求IP地址

  • 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
  • 此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器

1.2 服务器响应

  • DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
  • 如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息

1.3 客户机选择IP地址

  • DHCP客户机从接受到的第一个DHCP Offer消息中提取IP地址,并且回复一个DHCP Request报文,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机

1.4 服务器确定租约

  • DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
  • 当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化

1.5 重新登录

  • DHCP客户机每次重新登录网络是,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Discover请求信息

1.6 更新租约

  • 当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
  • 客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约

2. 使用DHCP动态配置主机地址

● DHCP服务

  • 为大量客户机自动分配地址,提供集中管理
  • 减轻管理和维护成本、提高网络配置效率

● 可分配的地址信息主要包括

  • 网卡的IP地址、子网掩码
  • 对应的网络地址、广播地址
  • 默认网关地址
  • DNS服务器地址

三、DHCP场景应用实验

1.实验环境

3台机器:

  • CentOS 7-1 :DHCP服务端 (为了实验方便,将此IP定义为该网段的网关)
  • CentOS 7-2 :DHCP客户端
  • Windows 10 :DHCP客户端

网络环境:

  • VMnet2(仅主机)模式
  • 关闭虚拟网络编辑器中的DHCP功能
  • 确定VMnet2的IP地址段
  • 注意DHCP服务端的网卡信息的配置(GATEWAY不要写)

系统环境:

  • 修改网络配置,配置本地YUM仓库
  • 安装dhcp软件包
  • 机器均关闭防火墙与核心服务

2.操作步骤

2.1 修改CentOS 7-1 服务端的网卡配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33...
BOOTPROTO=static     #静态IP
......
IPADDR=192.168.10.2     #VMnet2网段的网关地址,此处拟定网段为192.168.10.0/24
NETMASK=255.255.255.0systemctl restart network     #重启网卡

2.2 编辑dhcp全局配置文件,设置好对应的网络池

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vi /etc/dhcp/dhcpd.conf......
subnet 192.168.10.0 netmask 255.255.255.0{     #DHCP网段range 192.168.10.10  192.168.10.30;     #DHCP地址池option routers 192.168.10.2;     #服务端地址
}
......

2.3 重启网卡,启用dhcp服务

systemctl restart network
systemctl restart dhcpd
systemctl status dhcpd

2.4 打开CentOS 7-2 客户端,并修改网卡配置

vi /etc/sysconfig/network-scripts/ifcfg-ens33
......
BOOTPROTO=dhcp     #改为动态获取IP
......

2.5 刷新网卡,通过DHCP获取IP

systemctl restart network
ifconfig ens33......
ens33......
inet:192.168.10.10......     #查看是否自动获取了IP地址
......

2.6 在CentOS 7-1 服务端中查看租约

less /var/lib/dhcpd/dhcpd.lease

四、vsftp场景应用实验

1.实验环境

2台机器(均为同一网段):

  • CentOS 7-1
  • Windows 10 

网络环境

  • 均VMnet2(仅主机)模式
  • 关闭虚拟编辑中的DHCP
  • 均为同一网段

系统环境:

  • 安装vsftpd软件包
  • 机器均关闭防火墙与核心服务

2.操作步骤

2.1 配置匿名访问

1.配置vsftpd.conf配置文件

vim /etc/vsftpd/vsftpd.conf......
#初始化全局配置
anonymous_enable=YES     #开放匿名用户访问(默认已开启)
local_enable=YES     #允许系统用户进行访问
write_enable=YES     #开放服务器的写权限(默认已开启)
anon_unmak=022     #设置匿名用户的反掩码#让匿名用户访问本机并拥有各种权限
anon_umask=022                  #设置匿名用户所上传数据的权限掩码(反掩码)
anon_upload_enable=YES          #允许匿名用户上传文件
anon_mkdir_write_enable=YES     #允许匿名用户创建(上传)目录
anon_other_write_enable=YES     #允许删除、重命名、覆盖等操作
......systemctl restart vsftpd     #重启vsftpd服务
chmod 777 /var/ftp/pub     #设置ftp共享文件的权限

2.匿名访问测试

cd /var/ftp/pub
echo 'hello world!' > test.txt

 在Windows 10 系统打开开始菜单,输入cmd 命令打开命令提示符:

#建立ftp连接
ftp 192.168.10.2
#匿名访问,用户名为ftp,密码为空,直接回车即可完成登录
ftp> pwd     #匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp> ls     #查看当前目录
ftp> cd pub     #切换到pub目录
250 Directory successfully changed.
ftp> ls
ftp> get test.txt     #获取目录中的文件下载到电脑
ftp> ls
ftp> put test2.txt     #上传文件到CentOS 7-1

2.2 配置本地用户访问ftp,禁止匿名用户登录

1.配置vsftpd.conf配置文件

useradd zhangsan     #添加用户
echo '123' | passwd --stdin zhangsan     #修改密码
useradd lisi
echo '123' | passwd --stdin lisivim /etc/vsftpd/vsftpd.conf......
local_enable=Yes     #启用本地用户
anonymous_enable=NO     #关闭匿名用户访问
write_enable=YES     #开放服务器的写权限(若要上传,必须开启)
local_umask=077     #可设置仅宿主用户拥有被上传的文件的权限systemctl restart vsftpd     #重启vsftpd服务

2.测试

在Window 1o cmd界面输入ftp 192.168.10.2
name:ftp    #匿名用户
#访问拒绝ftp 192.168.10.2
name:zhangsan
passwd:123
#访问成功

2.3 对本地用户访问切换目录进行限制

vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES     #将访问禁锢在用户的宿主目录中
allow_writeable_chroot=YES     #允许被限制的用户主目录具有写权限systemctl restart vsftpd

2.4 修改匿名用户、本地登录的默认目录

anon_root=/var/www/html     #修改匿名用户的默认目录
local_root=/var/www/html     #修改本地用户的默认目录

2.5 黑名单、白名单的使用

  • 在安装vsftpd服务后,官方贴心的为我们在服务目录中提供了user_list   (其中就是为了我们更好利用黑名单和白名单的手册)
  • 黑名单:在黑名单上标记的用户,是我们禁止访问的对象。
  • 白名单:在白名单上标记的用户是我们允许访问的对象,白名单比黑名单的制定更为严格和安全

名单文件:/etc/vsftpd/user_list

若想修改名单,在user_list中增删用户名即可vim /etc/vsftpd/vsftpd.conf......
#黑名单
userlist_enable=YES				#启用user_list用户列表文件
userlist_deny=YES				#默认为YES,为黑名单,禁止user_list名单里的用户进行访问白名单
userlist_enable=YES				#启用user_list用户列表文件
userlist_deny=NO				#NO为白名单,仅允许user_list名单里的用户访问。
http://www.xdnf.cn/news/11601.html

相关文章:

  • 二十大计算机专业证书,让你从芸芸众生中脱颖而出
  • (附源码)springboot万花筒 毕业设计 345600
  • Ubuntu 13.10安装ICE
  • 计算机专业答题神器,答题神器哪个好用 答题神器对比测评
  • Android开发丰富资源集锦
  • springboot基于web儿童教育网站 毕业设计-附源码111123
  • “WORD上次启动失败,以安全模式启动”的解决方法
  • (转)Three20 是什么
  • 微信公众号文章汇总
  • Docker——JVM 感知容器的 CPU 和 Memory 资源限制
  • 摄影师的专属:OPPO Find X3 Pro摄影师版深度体验
  • 探索黑客工具箱:HackTools,你的安全研究得力助手
  • socket接收汉字乱码问题
  • DDOS 攻击是什么?有哪些常见的DDOS攻击?
  • 服务器防护安全措施有哪些?
  • Remote Administrator 2.1中文版
  • Java的三大特性(基本特征)
  • 班级网页制作 HTML个人网页设计 我的班级网站设计与实现 大学生简单班级静态HTML网页设计作品 DIV布局班级网页模板代码 DW学生校园网站制作成品下载
  • 数学建模竞赛经验分享(从本科生到研究生,获奖成功率100%,我从数模所学)
  • 开发时间缩短90% Amaze UI助H5梦工场响应式网站快速上线
  • Ubuntu10.10中国版(附官方下载地址)
  • matlab中cellfun和arrayfun相关的几个问题
  • 微信小程序-页面开发
  • 最流行的三大数据建模工具
  • 用Python实现QQ找茬游戏外挂工具
  • 编程入门宝典,刚开始学习编程新手必看的5点建议!
  • 大开眼界系列之九:“双缝实验”及“蔡定谔的猫”量子实验其实揭开的是佛的真相...
  • 分享9款漂亮的浪漫情侣网站模板
  • 口袋妖怪金心银魂详细图文攻略(下)及游戏下载
  • 深入Device Tree--LINUX中用DT_MACHINE_START/MACHINE_START