DHCP原理与配置、实验操作
- 一 、了解DHCP服务
- 二、使用DHCP动态配置主机地址
- 三、CentOS7环境中配置命令步骤
- 四、实验
-
- 4.1、具体实验步骤
-
- (1)、ensp上设置云服务器主机
- (2)、在ensp中配置相关的DHCP中继功能
- (3)、接着配置DHCP服务器
- (4)、接着将磁盘挂载,然后创建本地yum 源仓库,以便后续安装软件包
- (5)、安装DHCP 软件包,使该虚拟机具有DHCP的功能
- (6)、接着查看一下dhcp的主配置文件dhcpd.conf,发现里面目前啥也没有,只有让我们查看/usr/share/doc/dhcp.conf.example 的提示
- (7)、那接下来我们就按照提示去查看/usr/share/doc/dhcpd.conf.example 这个文件
- (8)、接着将该主配置文件复制到 /etc/dhcp/dhcpd.conf 中去
- (9)、更改、添加如下红框中的内容后保存退出
- (10)、关闭防火墙以后重启一下网卡,然后ping 一下三个网关,看看是否有问题,能ping 通说明没有问题
- (11)、接着在ensp 中使用dhcp功能让两台PC 机自动获取一下IP 地址
- 4.2、给PC 机分配固定的IP地址
- 五、FTP文件传输实验
-
- 5.1、FTP文件传输
-
- (1)、首先安装vsftpd 软件包
- (2)、查看一下该文件
- (3)、为防止修改出错,需要将vsftpd.conf 文件进行备份,然后修改该配置文件
- (4)、修改完vsftpd.conf 文件以后需要重启一下该服务。
- (5)、接着进入存放匿名用户的目录 /var/ftp 中,修改该匿名用户pub的权限为777(最高权限)
- (6)、接着开启 vsftpd ,并关闭防火墙
- (7)、接着在win10 的虚拟机的CMD 中ftp到192.168.100.100
- (8)、将Linux 中的文件传输到windows系统中 接着可以在pub 下创建一些文件,然后就可以在win 10 这台机子的pub 目录下找到在centos 中创建的这个123.txt 文件,也可以使用get 命令将该文件下载到windows的用户xwj目录下
- (9)、将windows 系统中的文件传输到Linux 系统中
- 5.2、设置本地用户验证访问 ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)
一 、了解DHCP服务
1.1、 DHCP简述
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)
由Internet工作任务小组设计开发
专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
1.2、 DHCP 的作用
(1)、减少管理员的工作量
减少输入错误的可能
避免IP地址冲突
当网路更改IP地址段时,不需要再重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
(2)、DHCP的分配方式
自动分配:分配到一个IP地址后永久使用
手动分配:由DCP服务器管理员专门指定IP地址
动态分配:使用完后释放该IP,供其它客户机使用
1.3、DHCP的租约过程
(1)、客户机请求IP地址
当一个DHCP客户机启动时,客户机还没有IP地址,所以
客户机要通过DHCP获取一个合法的地址
此时DHCP客户机以广播方式发送DHCP Discover发现信
息来寻找DHCP服务器
(2)、客户机选择IP地址
DHCP客户机从接收到的第一个DHCP Offer消息中提取
IP地址,发出IP地址的DHCP服务器将该地址保留,这样
该地址就不能再分配给另一个DHCP客户机
(3)、服务器确定租约
DHCP服务器接收到DHCP Request消息后,以DHCP
ACK消息的形式向客户机广播成功确认,该消息包含有IP
地址的有效租约和其他可配置的信息
当客户机收到DHCP ACK消息时,配置IP地址,完成
TCP/IP的初始化
(4)、重新登录
DHCP客户机每次重新登录网络时,不需要再发送DHCP
Discover信息,而是直接发送包含前一次所分配的IP地址
的DHCP Request请求信息
(5)、更新租约
当DHCP服务器向客户机出租的IP地址租期达到50%时,
就需要更新租约
客户机直接向提供租约的服务器发送DHCP Request包,
要求更新现有的地址租约
(6)、小结:四个过程都是广播
dicover 广播寻找提供DHCP的服务器
offer :源地址,目标地址255.255.255.255
可用IP地址(确定在后面),相关的租约期限8天
request :请求确认,若是没有被用,就会返回ack,若是被别的主机占用,就会重新发送offer
ack:若是同一网段内有多台DHCP服务器,谁先发送ack就用谁的IP资源池
dhcp协议:续约是在过半时就申请续约,续约的8天从此时重新计算
二、使用DHCP动态配置主机地址
2.1、DHCP服务
为大量客户机自动分配地址,提供集中管理
减轻管理和维护成本,提高网络配置效率
2.2、可分配的地址信息主要包括
网卡的IP地址、子网掩码
对应的网络地址、广播地址
默认网关地址
DNS服务器地址
2.3、安装DHCP服务器
Centos光盘中的dhcp-4.2.5-47.e17.centos.x86_64.rpm
dhcp软件包的主要文件
主配置文件:/etc/dhcpd.conf
执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay
2.4、主配置文件
(1)、dhcpd.conf的内容构成
ddns-update style interim; 全局配置参数
subnet)1 92.1 68.0.0 netmask 255.255.255.0 {网段声明
option routers 192. 168.0.1;配置选项
......
default-lease-time 21 600;配置参数
......
host ns {
fixed- address 207.175.42.254; 主机声明
(2)、 全局设置,作用于整个DHCP服务器
ddns-update-style none;
default-lease-time 21 600;
max-lease-time 43200;
option domain-name "domain.org"
option domain-name -servers 202. 106.0.20;
三、CentOS7环境中配置命令步骤
2.1、设置DHCP配置文件
yum -y install dhcp #首先安装dhcp,系统默认没有安装
cd /etc/dhcp
less dhcpd.conf #看一下dhcp配置文件,大多无内容
cd /usr/share/doc/dhcp-4.2.5 #dhcp配置文件参考模板
less dhcpd.conf.example #查看配置文件参考模板
cp /usr/share/doc/dhcpd.conf.example /etc/dhcp/dhcpd.conf #将模板文件复制到配置文件中
vim /etc/dhcp/dhcpd.conf #进入编辑dhcp配置文件
2.2、设置全局配置(一般默认)
default-lease-time 21600; #默认租约为 6 小时,单位为秒
max-lease-time 43200; #最大租约为 12 小时,单位为秒
option domain-name "……"; #指定默认域名
option domain-name-servers ……; #指定 DNS 服务器地址
ddns-update-style none; #禁用 DNS 动态更新
2.3、网段声明
**作用于整个子网段,部分配置参数优先级高于全局配置参数
subnet 192.168.80.0 netmask 255.255.255.0 { #首先声明dhcp服务器网段以及子网掩码
range 192.168.80.10 192.168.80.20; #设置ip地址池
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; #设置ip地址池
option routers 192.168.1.254; #指定默认网关
}
……
2.4、host主机声明
**给单机分配固定的IP地址
host hostname { #指定需要分配固定IP地址的客户机名称
hardware ethernet xx:xx:xx:xx:xx:xx; #指定该主机的MAC地址
fixed-address 192.168.80.100; #指定保留给该主机的IP地址
}
2.5、最后开启服务
systemctl start dhcpd #开启dhcp服务
systemctl stop firewalld #关闭防火墙
sentenforce 0 #关闭防火墙
netstat -naup | grep 67 #查看服务是否启动
tail -f /var/log/messages #如果启动失败,可以通过查看日志文件来排查错误
四、实验
实验环境:华为模拟器、CentOS7
●1、LSW1为DHCP中继服务器,Cloud为服务器主机
●2、CentOS7-2虚拟机为DHCP服务器,IP地址为192.168.100.100,子网掩码为255.255.255.0,网关为192.168.100.1
●实验要求:以仅主机模式,使用虚拟机CentOS7-2为华为模拟器上的两台主机动态分配IP地址
4.1、具体实验步骤
(1)、ensp上设置云服务器主机
(2)、在ensp中配置相关的DHCP中继功能
(3)、接着配置DHCP服务器
首先将该虚拟机的网络适配器更改为VMnet 1 ,接着将网卡更改为之前ensp 中所配置的中继服务器ip , 即192.168.100.100
(4)、接着将磁盘挂载,然后创建本地yum 源仓库,以便后续安装软件包
(5)、安装DHCP 软件包,使该虚拟机具有DHCP的功能
(6)、接着查看一下dhcp的主配置文件dhcpd.conf,发现里面目前啥也没有,只有让我们查看/usr/share/doc/dhcp.conf.example 的提示
(7)、那接下来我们就按照提示去查看/usr/share/doc/dhcpd.conf.example 这个文件
(8)、接着将该主配置文件复制到 /etc/dhcp/dhcpd.conf 中去
(9)、更改、添加如下红框中的内容后保存退出
(10)、关闭防火墙以后重启一下网卡,然后ping 一下三个网关,看看是否有问题,能ping 通说明没有问题
(11)、接着在ensp 中使用dhcp功能让两台PC 机自动获取一下IP 地址
4.2、给PC 机分配固定的IP地址
(1)、这边我们再开一台 windows 系统 的虚拟机进行实验,需要更改一下VMnet1 的属性,设置IPV4 的 IP地址为我们需要固定的100网段的地址,这里注意不要和之前配的网关相同。确定后退出。
(2)、在该win 10 的虚拟机中的CMD中使用ipconfig all 命令找到该虚拟机的物理地址
(3)、在centos 虚拟机中的 vim /etc/dhcp/dhcpd. conf 中绑定 win 10 的物理地址和绑定的IP 地址
(4)、然后在win 10 中就可以获取到绑定的 IP 了
五、FTP文件传输实验
5.1、FTP文件传输
(1)、首先安装vsftpd 软件包
(2)、查看一下该文件
(3)、为防止修改出错,需要将vsftpd.conf 文件进行备份,然后修改该配置文件
(4)、修改完vsftpd.conf 文件以后需要重启一下该服务。
(5)、接着进入存放匿名用户的目录 /var/ftp 中,修改该匿名用户pub的权限为777(最高权限)
(6)、接着开启 vsftpd ,并关闭防火墙
(7)、接着在win10 的虚拟机的CMD 中ftp到192.168.100.100
(8)、将Linux 中的文件传输到windows系统中 接着可以在pub 下创建一些文件,然后就可以在win 10 这台机子的pub 目录下找到在centos 中创建的这个123.txt 文件,也可以使用get 命令将该文件下载到windows的用户xwj目录下
(9)、将windows 系统中的文件传输到Linux 系统中
首次在用户文件夹中的xwj中创建一个叫hahaha的文件
5.2、设置本地用户验证访问 ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)
(1)、在/etc/vsftpd/vsftpd.conf 中进行如下的编辑
(2)、设置将访问禁锢在用户的宿主目录中
这样其他用户就不能登录windows的一些重要的目录下了
(3)、在linux 中的zhangsan的家目录下创建一个文件abc.txt 可以传输到windows中
同样也可以使用get 命令将该文件下载下来
补充:在/etc/vsftpd/vsftpd.conf 中添加userlist_deny=NO 是不禁用用户,可以理解为白名单的作用。