• DHCP服务详解


    DHCP服务

    • 了解DHCP服务的工作原理

    • 能够配置简单的dhcp服务器

    一、DHCP服务介绍

    • DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,UDP协议,67号端口

    • 主要用于动态管理分配IP地址

    二、DHCP服务的工作原理

    过程分析:

    • dhcpdiscover(发现):该过程中客户端开始建立请求

    • dhcpoffer(提供):当网络中的dhcp服务器收到dhcpdiscover信息后,对自身进行检查

    • dhcprequset(请求):当dhcp客户收到服务器的返回信息后,就以广播的方式发送

    • dhcpack(确认):一旦被选中的dhcp收到客户端的请求信息后,就将以保留的这个ip标识为以租用
       

      三、DHCP服务器配置

    • 环境准备:云服务器,我用的是3A网络的,上手简单,适合小白,可以随时更换ip地址。

    • 步骤:

    • 安装dhcp软件包
       

      1. [root@server ~]# yum -y install dhcp
      2. [root@server ~]# rpm -ql dhcp
      3. /etc/dhcp
      4. /etc/dhcp/dhcpd.conf //主配置文件
    • 修改配置文件
       

      1. vim /etc/dhcp/dhcpd.conf
      2. option domain-name "itcast.cc"; //域名
      3. option domain-name-servers 192.168.1.110, 8.8.8.8; //DNS(可以写多个)
      4. default-lease-time 3600; //缺省租约
      5. max-lease-time 7200; //客户端最大租约
      6. log-facility local7; //定义日志设备载体 (/var/log/boot.log输出)
      1. subnet 10.1.1.0 netmask 255.255.255.0 {
      2. range 10.1.1.100 10.1.1.150;
      3. option routers 10.1.1.1;
      4. option broadcast-address 10.1.1.255
      5. }
      6. [root@MissHou ~]# service dhcpd start
      7. Starting dhcpd: [FAILED]
      8. //启动失败
      9. 原因分析:
      10. 当我们排除了所有可能的情况下还找不出原因的话,就需要通过日志去分析
    • 日志错误信息
       

      1. [root@server ~]# tail -f /var/log/messages
      2. Apr 16 17:54:22 MissHou dhcpd: /etc/dhcp/dhcpd.conf line 16: semicolon expected.
      3. Apr 16 17:54:22 MissHou dhcpd: }
      4. Apr 16 17:54:22 MissHou dhcpd: ^
      5. Apr 16 17:54:22 MissHou dhcpd: /etc/dhcp/dhcpd.conf line 16: unexpected end of file
      6. Apr 16 17:54:22 MissHou dhcpd: }
      7. Apr 16 17:54:22 MissHou dhcpd: ^
      8. Apr 16 17:54:22 MissHou dhcpd: Configuration file errors encountered -- exiting
      9. Apr 16 17:54:22 MissHou dhcpd:
      10. 通过查看日志发现,在}附近有报错,再次查看配置文件,发现少了一个分号;
      11. 更改如下:
      12. option domain-name "itcast.cc";
      13. option domain-name-servers 8.8.8.8;
      14. default-lease-time 3600;
      15. max-lease-time 7200;
      16. log-facility local7;
    • 测试验证
       

      1. client端修改IP地址为动态获取:
      2. [root@client ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
      3. [root@client ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
      4. DEVICE=eth0
      5. TYPE=Ethernet
      6. ONBOOT=yes
      7. NM_CONTROLLED=yes
      8. BOOTPROTO=dhcp
      9. 重启网络让client端自动获取IP地址:
      10. [root@client ~]# service network restart
      11. Shutting down loopback interface: [ OK ]
      12. Bringing up loopback interface: [ OK ]
      13. Bringing up interface eth0: Active connection state: activating
      14. Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/

  • 相关阅读:
    【计算机毕业设计】家政服务平台
    企业DevOps之路:Jenkins 流水线
    R语言dplyr包filter函数过滤dataframe数据中指定数据列的内容包含指定字符串的数据行、基于grepl函数
    【栈和队列刷题】 有效的括号、删除字符串中的所有相邻重复项、用栈实现队列、用队列实现栈
    Docker | 创建私有库并了解将项目放入和拉取到私有库的流程
    java计算机毕业设计ssm驾校预约考试管理系统a3cf7(附源码、数据库)
    基于微信小程序智能停车场系统(微信小程序毕业设计)
    APS生产排产在包装行业的应用
    Lombok
    【限时】21天学习挑战赛 - 经典算法
  • 原文地址:https://blog.csdn.net/m0_56221131/article/details/126142140