• DHCP原理和配置


    1、DHCP原理

    (1)什么是DHCP

    • DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议):给网络内的客户机自动分配IP地址
    • 由internet工作任务小组设计开发口专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
    • DHCP采用的是UDP作为传输协议,有两个端口67和68,DHCP客户端发送请求消息给服务端的67号端口,DHCP服务端回应响应消息给客户端的68端口

    (2)DHCP的好处

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

    (3)DHCP的分配方式

    • 自动分配:分配到一个IP地址后永久使用
    • 手动分配:由DHCP服务器管理员专门指定IP地址
    • 动态分配:使用完释放该IP,供其他客户使用

    (4)DHCP的工作原理

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

    分为四个步骤

    (1)客户端通过广播发送DHCP Discover报文寻找DHCP服务端
    (2)服务端通过广播发送DHCP Offer报文向客户端提供从地址池挑选的可用IP等信息
    (3)客户端只接受第一个收到的DHCP Offer报文并提取IP地址,然后通过广播发送DHCP Request报文告知服务端要使用该IP地址
    (4)服务端通过广播发送DHCP ACK报文告知客户端该IP地址是合法可用的,并提供租约信息

    DHCP客户机每次登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次分配的IP地址的DHCP Request请求信息。如果IP地址可用,DHCP会发送DHCP ACK确认消息。如果IP地址不可用,DHCP服务器会发送DHCP Nack否认消息,此时DHCP客户端需要重新发送DHCP Discover报文寻找DHCP服务端

    linux、windows客户端和服务端都是以广播方式发送消息
    华为设备客户端以广播方式发送消息,服务端以单播的方式发送消息


    2、配置DHCP实验

    (1)实验目的

    模拟DHCP自动获取IP地址

    (2)实验准备

    三台虚拟机:一台完好的linux虚拟机来当DHCP服务端,一台完好的linux虚拟机来当DHCP客户端1,一台完好的windows虚拟机来当DHCP客户端2

    (3)实验要求

    两台客户端虚拟机能通过服务端虚拟机来自动获取到IP地址

    (4)实验步骤

    1)服务端虚拟机初始化操作

    将网络连接调至仅主机模式(如用nat模式,需将其本地的dhcp服务给关闭)

    如果使用仅主机模式,需将电脑里网络连接的vmnet1(仅主机使用的)里的ipv4

    协议属性进行修改

    关闭防火墙,设置其立即开机不自启

    临时关闭selinux防火墙,然后永久关闭

    补充

    SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。
    selinux(security enhanced linux)安全强化的linux,它是一个linux内核模块,也是linux的一个安全子系统

    SELinuxd的工作模式

    enforcing强制模式,违反 SELinux 规则的行为将被阻止并记录到日志中
    permissive
    宽容模式,违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
    disabled
    关闭 SELinux。

    2)安装dhcp服务

    有两种方式安装

    第一种:rpm -ivh RPM包文件

    第二种:yum -y install dhcp(需检查本地yum源有没有配好)

    3)修改dhcp配置文件

    cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

    由于etc/dhcp/dhcpd.conf的文件是没有什么内容的,我们需将usr/share/doc/dhcp-4.2.5/dhcpd.conf.example这个模版文件复制过来

    启动dhcp服务并查看

    如果启动报错,可以查看日志文件/var/log/messages或通过journalctl -xe

    4)打开客户机查看验证

    两台客户端虚拟机都得把网络状态设置为仅主机模式

    windows客户端验证

    linux客户端验证

  • 相关阅读:
    17.11 std::atomic续谈、std::async深入谈
    计算机网络朝花夕拾
    [附源码]SSM计算机毕业设计学生宿舍管理系统JAVA
    从Web2社交网络学习,为何要重视地位平等?
    嵌入式实操----基于RT1170 AWTK1.6版本库编译(三十)
    基于高股息高分红优化的量化选股模型
    C语言程序设计(入门)
    一张图快速了解 Istio 的 EnvoyFilter
    LVGL Animations(动画)的简单使用
    用友2024秋招后端BIP一面-2023.8.10
  • 原文地址:https://blog.csdn.net/zx52306/article/details/138155588