当前位置:首页>Linux>Rocky Linux 下 DHCP 服务配置详细文档

Rocky Linux 下 DHCP 服务配置详细文档

  • 2026-01-31 20:38:06
Rocky Linux 下 DHCP 服务配置详细文档

字数 3953,阅读大约需 20 分钟

一、DHCP 简介

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是工作在应用层的局域网网络协议,依赖 UDP 不可靠传输协议实现数据传输,广泛应用于大型局域网环境。其核心作用是集中管理和分配网络资源,让网络中的主机能动态获取 IP 地址、网关(Gateway)地址、DNS 服务器地址等关键网络配置信息,同时有效提升 IP 地址的使用率,避免地址浪费。

二、DHCP 工作原理

DHCP 工作流程主要包括“租约四部曲”(DHCP Discover、DHCP Offer、DHCP Request、DHCP ACK/NAK)以及后续的续租过程,具体如下:

(一)租约四部曲

  1. 1. DHCP Discover(客户端IP请求)
    当 DHCP 客户端启动时,会自动将自身 IP 地址配置为 0.0.0.0,由于该地址无法实现正常通信,客户端必须向 DHCP 服务器请求合法 IP。因客户端未知 DHCP 服务器 IP,会以 0.0.0.0 为源地址、255.255.255.255 为目标地址(广播地址),通过 UDP 67 端口广播 DHCP Discover 消息。该消息包含客户端的 MAC 地址和计算机名,便于 DHCP 服务器识别请求来源。
  2. 2. DHCP Offer(服务器响应请求)
    DHCP 服务器接收到客户端的 IP 请求后,会在自身的 IP 地址池中检索是否有可用的合法 IP 地址。若存在可用 IP,服务器会对该 IP 做标记,并将其纳入 DHCP Offer 消息中,随后以自身 IP 为源地址、255.255.255.255 为目标地址、UDP 68 端口为源端口广播 DHCP Offer 消息。消息内容包括:客户端 MAC 地址、提供的合法 IP 地址、子网掩码、默认网关、IP 租约期限、DHCP 服务器 IP 地址等。
  3. 3. DHCP Request(客户端选择IP)
    DHCP 客户端会从接收到的第一个 DHCP Offer 消息中选定 IP 地址,发送该 Offer 的 DHCP 服务器会将此 IP 保留,防止分配给其他客户端。之后,客户端会向所有 DHCP 服务器广播 DHCP Request 消息,表明已接受某台服务器提供的 IP 配置,消息中包含提供该配置的服务器 IP(服务标识符)。未被选中的服务器会取消之前的 Offer,收回 IP 地址以备后续分配。此过程中,客户端仍未配置 IP,故继续使用 0.0.0.0 为源地址、255.255.255.255 为目标地址、UDP 67 端口为目的端口广播消息。
  4. 4. DHCP ACK/NAK(服务器确认租约)
  • • DHCP ACK(确认租约):DHCP 服务器接收到 DHCP Request 消息后,若确认客户端请求合法,会以广播形式向客户端发送 DHCP ACK 消息,包含 IP 地址的有效租约及其他配置信息。广播时,服务器以自身 IP 为源地址、255.255.255.255 为目标地址、UDP 68 端口为源端口。客户端接收 ACK 消息后,完成 IP 配置及 TCP/IP 初始化。
  • • DHCP NAK(拒绝租约):若客户端请求无效(如试图租用已不可用的旧 IP、客户端迁移到其他子网导致 IP 无效等),服务器会广播 DHCP NAK 消息。客户端接收 NAK 后,需重新启动 DHCP 租约申请流程。

(二)特殊情况说明

  1. 1. 若 DHCP 客户端无法找到 DHCP 服务器,会从 TCP/IP 的 B 类网段 169.254.0.0/16 中随机选取一个 IP 作为临时地址,同时每隔 5 分钟尝试与 DHCP 服务器通信。一旦建立连接,客户端会放弃临时 IP,使用服务器分配的合法 IP。
  2. 2. 客户端接收 DHCP ACK 报文后,若通过地址冲突检测(ARP)发现分配的 IP 存在冲突或因其他原因无法使用,会发送 DECLINE 报文,告知服务器该 IP 不可用。

(三)DHCP 客户端续租

  1. 1. 当 IP 租约期限过去 50% 时,客户端会直接向为其分配 IP 的 DHCP 服务器发送 DHCP Request 消息,请求续租。若收到服务器回复的 DHCP ACK 消息,客户端会根据消息中的新租约期限及更新的 TCP/IP 参数,更新自身配置,完成续租。若未收到回复,客户端继续使用当前 IP,因剩余租约仍可支持正常通信。
  2. 2. 若在租约 50% 时未完成续租,客户端会在租约过去 87.5% 时再次向原 DHCP 服务器发送续租请求。若此次仍未成功,当租约到期(100%)时,客户端必须放弃当前 IP,重新发起 IP 申请。若此时无可用 DHCP 服务器,客户端会从 169.254.0.0/16 网段随机选取 IP,并每隔 5 分钟重复尝试连接 DHCP 服务器。

三、DHCP 服务搭建准备

(一)实验环境准备

  1. 1. 准备两台虚拟机,将网络连接模式设置为“自定义 VMnet*”模式(如 VMnet1、VMnet8 等,确保两台机器处于同一虚拟网络)。
  2. 2. 关闭相关防护机制,避免影响 DHCP 服务通信:
  • • 关闭防火墙:执行systemctl stop firewalld
  • • 关闭 SELinux:执行 getenforce 查看 SELinux 状态,若为 Enforcing 模式,执行 setenforce 0 临时关闭,若需永久关闭,编辑 /etc/selinux/config 文件,将 SELINUX=enforcing 改为 SELINUX=disabled,重启系统生效。
  • • 关闭 VMware 虚拟网络编辑器的 DHCP 功能:打开 VMware,进入“编辑”->“虚拟网络编辑器”,选择对应虚拟网络(如 VMnet*),取消勾选“使用本地 DHCP 服务将 IP 地址分配给虚拟机”,点击“确定”保存。

(二)DHCP 相关基础信息

  1. 1. 软件包
  • • dhcp:DHCP 服务核心软件包,提供 DHCP 服务器功能。
  • • dhcp-common:DHCP 命令工具软件包,包含 DHCP 相关辅助命令。
    dnf install dhcp-server dhcp-common -y
  1. 1. 服务名
  • • dhcpd:DHCP 服务器服务名,用于启动、停止、重启 DHCP 服务。
  • • dhcrelay:DHCP 中继服务名,实现不同子网间 DHCP 消息转发时使用。
  1. 1. 端口号
  • • UDP 67:作为 DHCP 客户端的目标端口,客户端向服务器发送请求时使用。
  • • UDP 68:作为 DHCP 服务器的源端口,服务器向客户端回复消息时使用。
  1. 1. 配置文件
  • • /etc/dhcp/dhcpd.conf:DHCP 服务器主配置文件,默认为空,需从模板文件复制并修改后使用。
  • • /usr/share/doc/dhcp-server/dhcpd.conf.example:DHCP 配置模板文件,提供标准配置示例,需根据实际需求调整。
  • • /etc/sysconfig/dhcrelay:DHCP 中继服务配置文件,配置 DHCP 中继时使用。

四、DHCP 服务配置实操

(一)基本功能配置(动态分配IP)

  1. 1. 生成主配置文件
    执行以下命令,将模板配置文件复制到 DHCP 主配置文件路径,覆盖默认空文件:
    cp -a /usr/share/doc/dhcp-4.*.*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
    (注:需将命令中的“dhcp-4..”替换为实际系统中存在的版本目录,可通过 ls /usr/share/doc/ | grep dhcp 查看具体版本)
  2. 2. 修改主配置文件
    使用文本编辑器(如 vim)打开主配置文件:vim /etc/dhcp/dhcpd.conf
  • • 注释掉文件中前几个默认的 subnet 声明(通常以 subnet 10.0.0.0 netmask... 开头),避免冲突。
  • • 保留并修改最后一个 subnet 声明,配置实际网络参数,示例如下:
subnet 192.168.88.0 netmask 255.255.255.0{  # 声明要分配的网段及子网掩码
    range 192.168.88.3 192.168.88.254;  # 声明可用IP地址池范围
    option domain-name "atguigu.com";  # 设置DNS域名
    option domain-name-servers 8.8.8.8;  # 设置DNS服务器IP(此处使用谷歌DNS,可替换为其他DNS)
    option routers 192.168.88.2;  # 设置默认网关IP
    option broadcast-address 192.168.88.255;  # 设置广播地址(可选,可省略)
    default-lease-time 600;  # 设置默认租约期限,单位为秒(此处为10分钟)
    max-lease-time 7200;  # 设置最大租约期限,单位为秒(此处为2小时)
}
  • • 保存并退出编辑器(vim 中执行 :wq),注意配置文件中每行结尾需加英文分号,大括号需成对出现,避免语法错误。
  1. 3. 启动 DHCP 服务
    执行命令启动 DHCP 服务:systemctl start dhcpd
  • • 若需设置 DHCP 服务开机自启动,执行:systemctl enable dhcpd
  • • 执行 systemctl status dhcpd 查看服务状态,确保服务正常运行(状态显示“active (running)”)。
  1. 4. 客户端验证
    在 DHCP 客户端虚拟机上,执行以下命令重启网卡,获取 DHCP 服务器分配的 IP:
    ifdown eth0; ifup eth0(若网卡名称为 ens33 等,需替换为实际网卡名,可通过 ip addr 查看)
  • • 执行 ip addr 或 ifconfig 查看客户端 IP 地址,确认是否从配置的地址池(如 192.168.88.3-192.168.88.254)中获取到合法 IP。
  • • 执行 ping 网关IP(如 ping 192.168.88.2)和 ping DNS服务器IP(如 ping 8.8.8.8),验证网络连通性。

(二)保留地址配置(固定IP分配)

当需要为特定客户端(如服务器、打印机等)分配固定 IP 时,可通过配置保留地址实现,具体步骤如下:

  1. 1. 获取客户端 MAC 地址
    在 DHCP 服务器或客户端上,执行 arp -a 命令查看客户端的 MAC 地址(格式如 00:0c:29:3a:b4:5c),或在客户端执行 ip link show 查看(“link/ether”后即为 MAC 地址)。
  2. 2. 修改 DHCP 主配置文件
    打开 /etc/dhcp/dhcpd.conf 文件,在之前配置的 subnet 声明内部或外部(推荐在 subnet 内部)添加 host 声明,配置固定 IP 映射,示例:
subnet 192.168.88.0 netmask 255.255.255.0{
    # 其他已配置参数(如 range、option 等)...
    host fantasia{  # 自定义主机名(可任意命名,便于识别)
        hardware ethernet 00:0c:29:3a:b4:5c;  # 客户端的 MAC 地址
        fixed-address 192.168.88.10;  # 分配给该客户端的固定 IP(可使用地址池外的 IP)
    }
}
  • • 保存并退出配置文件。
  1. 3. 重启 DHCP 服务
    执行 systemctl restart dhcpd 重启服务,使配置生效,执行 systemctl status dhcpd 确认服务正常。
  2. 4. 客户端验证
    在目标客户端上重启网卡(ifdown eth0; ifup eth0),执行 ip addr 查看 IP,确认是否已分配到配置的固定 IP(如 192.168.88.10)。

(三)超级作用域配置(同一局域网多网段分配)

超级作用域允许 DHCP 服务器为单个物理网络上的客户端提供多个网段的 IP 租约,适用于网络中客户端数量较多、单个网段地址不足的场景,配置步骤如下:

  1. 1. 实验环境准备
    准备三台虚拟机:1 台作为 DHCP 服务器,2 台作为客户端,所有机器设置为同一自定义虚拟网络模式(如 VMnet8)。
  2. 2. 配置 DHCP 服务器单臂路由(子网卡)
    为 DHCP 服务器添加子网卡,实现多网段路由:
  • • 配置子接口:
    # 创建 VLAN 子接口
    sudo
     nmcli connection add type vlan \
    con-name vlan-eth0-200 \
    ifname eth0.200 \
    dev eth0 \
    id
     200

    # 配置 IP 地址

    sudo
     nmcli connection modify vlan-enp3s0-200 \
    ipv4.method manual \
    ipv4.addresses 192.168.99.10/24 \
    ipv4.gateway 192.168.99.1 \
    ipv4.dns "192.168.99.1"

    # 启用连接

    sudo
     nmcli connection up vlan-enp3s0-200
  1. 3. 开启 DHCP 服务器路由转发
    编辑内核参数配置文件,开启 IP 转发功能:
  • • 执行 vim /etc/sysctl.conf,添加或修改以下参数:net.ipv4.ip_forward = 1
  • • 执行 sysctl -p 刷新配置,使路由转发立即生效(无需重启系统)。
  1. 4. 修改 DHCP 主配置文件
    打开 /etc/dhcp/dhcpd.conf,注释掉之前的 subnet 声明和 host 声明(若有),添加 shared-network 声明(超级作用域),配置多网段参数,示例:
shared-network public {  # 超级作用域名称(自定义,如 public)
    subnet 192.168.88.0 netmask 255.255.255.0{  # 第一个网段
        option routers 192.168.88.10;  # 该网段默认网关(DHCP服务器原网卡IP)
        range 192.168.88.100 192.168.88.110;  # 该网段IP地址池
    }
    subnet 192.168.99.0 netmask 255.255.255.0{  # 第二个网段
        option routers 192.168.99.10;  # 该网段默认网关(DHCP服务器子网卡IP)
        range 192.168.99.100 192.168.99.110;  # 该网段IP地址池
    }
    # 可根据需求添加更多 subnet 声明(多网段)
}
  • • 保存并退出文件,确保语法正确(分号、大括号完整)。
  1. 5. 重启 DHCP 服务
    执行 systemctl restart dhcpd 重启服务,确认服务状态正常(systemctl status dhcpd)。
  2. 6. 客户端验证
    分别在两台客户端上重启网卡(ifdown eth0; ifup eth0),执行 ip addr 查看 IP 地址,确认两台客户端分别从不同网段(如 192.168.88.0/24 和 192.168.99.0/24)获取到 IP,且网关配置正确。

(四)DHCP 中继配置(跨子网IP分配)

当网络中存在多个子网,且仅部署一台 DHCP 服务器时,需通过 DHCP 中继实现跨子网的 IP 分配,DHCP 中继负责在不同子网间转发 DHCP 消息,配置步骤如下:

1. 实验环境准备

  • • DHCP 服务器:1 台,网卡 eth0 配置静态 IP 192.168.10.10,网络模式为 VMnet10。
  • • DHCP 中继服务器:1 台,双网卡配置,eth0(VMnet10)IP 192.168.10.20,eth1(VMnet11)IP 100.100.100.20。
  • • 客户端:1 台(外网客户端),网卡 eth0 设为自动获取 IP,网络模式为 VMnet11。
  • • 关闭所有机器的防火墙(firewalld/iptables)和 SELinux,确保网络互通。

2. 配置 DHCP 服务器

  1. 1. 安装 DHCP 软件包
    执行 yum -y install dhcp 安装 DHCP 服务(若已安装可跳过)。
  2. 2. 修改 DHCP 主配置文件
    打开 /etc/dhcp/dhcpd.conf,配置两个子网(分别对应 VMnet10 和 VMnet11 网段),示例:
# 第一个子网(VMnet10,DHCP服务器所在子网,实验中可暂不使用该地址池)
subnet 192.168.10.0 netmask 255.255.255.0 {
    range 192.168.10.100 192.168.10.110;  # 该子网IP地址池
    option routers 192.168.10.20;  # 网关为中继服务器eth0 IP
}
# 第二个子网(VMnet11,外网客户端所在子网)
subnet 100.100.100.0 netmask 255.255.255.0 {
    range 100.100.100.100 100.100.100.110;  # 该子网IP地址池
    option routers 100.100.100.20;  # 网关为中继服务器eth1 IP
}
  • • 保存并退出文件,删除或注释其他无关配置。
  1. 3. 启动并设置 DHCP 服务自启
    执行 systemctl start dhcpd 启动服务,systemctl enable dhcpd 设置开机自启,systemctl status dhcpd 确认服务正常。

3. 配置 DHCP 中继服务器

  1. 1. 配置双网卡静态 IP
  • • eth0 网卡配置,命令如下:
    sudo nmcli connection modify eth0 \
    ipv4.method manual \
    ipv4.addresses 192.168.10.20/24 \
    ipv4.gateway 192.168.10.1 \
    ipv4.dns "8.8.8.8 8.8.4.4"

    sudo
     nmcli connection up eth0  
  • • eth1 网卡配置,命令如下:
    sudo nmcli connection modify eth0 \
    ipv4.method manual \
    ipv4.addresses 192.168.20.20/24 \
    ipv4.gateway 192.168.20.1 \
    ipv4.dns "8.8.8.8 8.8.4.4"

    sudo
     nmcli connection up eth1

执行 ip addr 确认双网卡 IP 配置正确。
2. 安装 DHCP 软件包
执行 yum -y install dhcp 安装(需包含 dhcrelay 组件)。
3. 修改 DHCP 中继配置文件
编辑 /etc/sysconfig/dhcrelay 文件,配置中继监听接口和 DHCP 服务器地址:

INTERFACES="eth0 eth1"  # 中继监听的网卡接口(eth0 连接 DHCP 服务器,eth1 连接客户端子网)
DHCPSERVERS="192.168.10.10"  # DHCP 服务器的 IP 地址
  • • 保存并退出文件。
  1. 4. 开启路由转发
    编辑 /etc/sysctl.conf,确保 net.ipv4.ip_forward = 1(若未设置则添加),执行 sysctl -p 生效。
  2. 5. 启动并设置中继服务自启
    执行 systemctl start dhcrelay 启动中继服务,systemctl enable dhcrelay 设置开机自启,systemctl status dhcrelay 确认服务正常。
  3. 6. 客户端验证
    在 VMnet11 子网的客户端上,执行 ifdown eth0; ifup eth0 重启网卡,执行 ip addr 查看 IP 地址,确认是否从 DHCP 服务器配置的 192.168.20.20.100-192.168.20.20.110 地址池中获取到 IP。同时执行 ping 192.168.10.10(DHCP 服务器 IP)和 ping 192.168.20.20.20(中继服务器 eth1 IP),验证跨子网通信是否正常。

(七):配置 IP 与 MAC 绑定

编辑 DHCP 主配置文件 /etc/dhcp/dhcpd.conf,在 subnet 声明内部或外部添加 host 节点(推荐在 subnet 内部,确保网段匹配):

vim /etc/dhcp/dhcpd.conf

添加绑定配置(以“绑定 MAC 为 00:0c:29:3a:b4:5c 的设备到 IP 192.168.88.10 为例):

subnet 192.168.88.0 netmask 255.255.255.0{
    # 原有动态分配配置(range、option 等)...

    # IP 与 MAC 绑定配置(自定义 host 名称,如 fantasia)
    host fantasia{
        hardware ethernet 00:0c:29:3a:b4:5c;  # 客户端 MAC 地址(需与实际一致)
        fixed-address 192.168.88.10;         # 绑定的固定 IP(可在地址池内/外)
    }

    # 可添加多个绑定(复制 host 节点即可)
    # host printer{
    #     hardware ethernet 00:0c:29:4d:c8:7e;
    #     fixed-address 192.168.88.11;
    # }
}

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-09 03:45:05 HTTP/2.0 GET : https://f.mffb.com.cn/a/461466.html
  2. 运行时间 : 0.151084s [ 吞吐率:6.62req/s ] 内存消耗:4,729.14kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=9464fa9acee96185f89b7e823ef933d4
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000854s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000791s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.001464s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.001369s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000552s ]
  6. SELECT * FROM `set` [ RunTime:0.002726s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000624s ]
  8. SELECT * FROM `article` WHERE `id` = 461466 LIMIT 1 [ RunTime:0.003132s ]
  9. UPDATE `article` SET `lasttime` = 1770579906 WHERE `id` = 461466 [ RunTime:0.004146s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.004050s ]
  11. SELECT * FROM `article` WHERE `id` < 461466 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.007364s ]
  12. SELECT * FROM `article` WHERE `id` > 461466 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.009026s ]
  13. SELECT * FROM `article` WHERE `id` < 461466 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.009270s ]
  14. SELECT * FROM `article` WHERE `id` < 461466 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.012436s ]
  15. SELECT * FROM `article` WHERE `id` < 461466 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.020806s ]
0.152861s