FreeBSD 中文手册
FreeBSD 中文社区
  • FreeBSD 中文手册
  • 编辑日志
  • 译者说明
  • FreeBSD 中文手册
  • 目录
  • 概述
  • 前言
    • 致读者
    • 第四版
    • 第三版
    • 第二版(2004)
    • 第一版(2001)
    • 本书的组织结构
    • 本书中使用的一些约定
    • 致谢
  • 第一部分:快速开始
  • 第1章 简介
    • 1.1.概述
    • 1.2.欢迎来到 FreeBSD!
    • 1.3.关于 FreeBSD 项目
  • 第2章 安装 FreeBSD
    • 2.1.概述
    • 2.2.最低硬件要求
    • 2.3.安装前的准备工作
    • 2.4.开始安装
    • 2.5.使用 bsdinstall
    • 2.6.分配磁盘空间
    • 2.7.获取安装文件
    • 2.8.账户、时区、服务和安全
    • 2.9.故障排除
    • 2.10.使用 Live CD
  • 第3章 FreeBSD 基础
    • 3.1.概述
    • 3.2.虚拟控制台和终端
    • 3.3.用户和基本账户管理
    • 3.4.权限
    • 3.5.目录结构
    • 3.6.磁盘结构
    • 3.7.文件系统的挂载与卸载
    • 3.8.进程和守护进程
    • 3.9.Shell
    • 3.10.文本编辑器
    • 3.11.设备和设备节点
    • 3.12.手册页
  • 第4章 安装应用程序:软件包和 Ports
    • 4.1.概述
    • 4.2.软件安装的概述
    • 4.3.寻找所需的应用程序
    • 4.4.使用 pkg 管理二进制包
    • 4.5.使用 Ports
    • 4.6.使用 Poudriere 构建软件包
    • 4.7.安装后的注意事项
    • 4.8.如何处理损坏的 port
  • 第5章 X Window 系统
    • 5.1.概述
    • 5.2.安装 Xorg
    • 5.3.显卡驱动
    • 5.4.Xorg 配置
    • 5.5.在 X11 中使用字体
  • 第6章 FreeBSD 中的 Wayland
    • 6.1.简介
    • 6.2.Wayland 概述
    • 6.3.Wayfire 混成器
    • 6.4.Hikari 混成器
    • 6.5.Sway 混成器
    • 6.6.使用 Xwayland
    • 6.7.使用 VNC 进行远程连接
    • 6.8.Wayland 登录管理器
    • 6.9.实用工具
  • 第7章 网络
    • 7.1.概述
    • 7.2.设置网络
    • 7.3.有线网络
    • 7.4.无线网络
    • 7.5.主机名
    • 7.6.DNS
    • 7.7.故障排除
  • 第二部分:常见任务
  • 第8章 桌面环境
    • 8.1.概述
    • 8.2.桌面环境
    • 8.3.浏览器
    • 8.4.开发工具
    • 8.5.桌面办公应用
    • 8.6.文档阅读器
    • 8.7.财务
  • 第9章 多媒体
    • 9.1.概述
    • 9.2.设置声卡
    • 9.3.音频播放器
    • 9.4.视频播放器
    • 9.5.视频会议
    • 9.6.图像扫描仪
  • 第10章 配置 FreeBSD 内核
    • 10.1.概述
    • 10.2.为什么要构建定制内核
    • 10.3.浏览系统硬件
    • 10.4.配置文件
    • 10.5.构建并安装定制内核
    • 10.6.如果发生了错误
  • 第11章 打印
    • 11.1.快速入门
    • 11.2.连接打印机
    • 11.3.常见的页面描述语言(PDL)
    • 11.4.直接打印
    • 11.5.LPD(行式打印机程序)
    • 11.6.其他打印系统
  • 第12章 Linux 二进制兼容层
    • 12.1.概述
    • 12.2.配置 Linux 二进制兼容层
    • 12.3.Linux 用户空间
    • 12.4.高级主题
  • 第13章 WINE
    • 13.1.概述
    • 13.2.WINE 概述和概念
    • 13.3.在 FreeBSD 上安装 WINE
    • 13.4.在 FreeBSD 上运行第一个 WINE 程序
    • 13.5.配置 WINE 安装程序
    • 13.6.WINE 图形化用户管理界面
    • 13.7.多用户 FreeBSD 与 WINE
    • 13.8.FreeBSD 上的 WINE 常见问题
  • 第三部分:系统管理
  • 第14章 配置与优化
    • 14.1.概述
    • 14.2.配置文件
    • 14.3.管理 FreeBSD 中的服务
    • 14.4.Cron 和 Periodic
    • 14.5.配置系统日志
    • 14.6.电源和资源管理
    • 14.7.添加交换空间
  • 第15章 FreeBSD 的引导过程
    • 15.1.概述
    • 15.2.FreeBSD 的引导过程
    • 15.3.Device Hints
    • 15.4.关机流程
  • 第16章 安全
    • 16.1.概述
    • 16.2.简介
    • 16.3.账户安全
    • 16.4.入侵检测系统(IDS)
    • 16.5.安全等级
    • 16.6.文件标志位
    • 16.7.OpenSSH
    • 16.8.OpenSSL
    • 16.9.Kerberos
    • 16.10.TCP 封装器(TCP Wrapper)
    • 16.11.访问控制列表(ACL)
    • 16.12.Capsicum
    • 16.13.进程记账
    • 16.14.资源限制
    • 16.15.监控第三方安全问题
    • 16.16.FreeBSD 安全公告
  • 第17章 jail 与容器
    • 17.1.概述
    • 17.2.jail 的类型
    • 17.3.主机配置
    • 17.4.传统 jail(厚 jail)
    • 17.5.瘦 jail
    • 17.6.管理 jail
    • 17.7.更新 jail
    • 17.8.jail 资源限制
    • 17.9.jail 管理器与容器
  • 第18章 强制访问控制
    • 18.1.概述
    • 18.2.关键术语
    • 18.3.了解 MAC 标签
    • 18.4.规划安全配置
    • 18.5.可用的 MAC 策略
    • 18.6.用户锁定
    • 18.7.MAC Jail 中的 Nagios
    • 18.8.MAC 框架的故障排除
  • 第19章 安全事件审计
    • 19.1.概述
    • 19.2.关键术语
    • 19.3.审计配置
    • 19.4.使用审计跟踪
  • 第20章 存储
    • 20.1.概述
    • 20.2.添加磁盘
    • 20.3.调整和增加磁盘大小
    • 20.4.USB 存储设备
    • 20.5.创建和使用 CD
    • 20.6.创建和使用 DVD
    • 20.7.创建和使用软盘
    • 20.8.备份的基础知识
    • 20.9.内存盘
    • 20.10.文件系统快照
    • 20.11.磁盘配额
    • 20.12.加密磁盘分区
    • 20.13.加密交换分区
    • 20.14.高可用性存储(HAST)
  • 第21章 GEOM: 模块化磁盘转换框架
    • 21.1.概述
    • 21.2.RAID0——条带
    • 21.3.RAID1——镜像
    • 21.4.RAID3——带有专用奇偶校验的字节级条带
    • 21.5.软件 RAID 设备
    • 21.6.GEOM Gate 网络设备
    • 21.7.为磁盘设备添加卷标
    • 21.8.通过 GEOM 实现 UFS 日志
  • 第22章 Z 文件系统(ZFS)
    • 22.1.是什么使 ZFS 与众不同
    • 22.2.快速入门指南
    • 22.3.zpool 管理
    • 22.4.zfs 管理
    • 22.5.委托管理
    • 22.6.高级主题
    • 22.7.更多资源
    • 22.8.ZFS 特性和术语
  • 第23章 其他文件系统
    • 23.1.概述
    • 23.2.Linux® 文件系统
    • 23.3.Windows® 文件系统
    • 23.4.MacOS® 文件系统
  • 第24章 虚拟化
    • 24.1.概述
    • 24.2.使用 macOS® 上的 Parallels Desktop 安装 FreeBSD
    • 24.3.使用 macOS® 上的 VMware Fusion 安装 FreeBSD
    • 24.4.使用 VirtualBox™ 安装 FreeBSD
    • 24.5.在 FreeBSD 上安装 VirtualBox™
    • 24.6.使用 FreeBSD 上的 QEMU 虚拟化
    • 24.7.使用 FreeBSD 上的 bhyve 虚拟机
    • 24.8.基于 FreeBSD 的 Xen™ 虚拟机
  • 第25章 本地化——i18n/L10n 的使用和设置
    • 25.1.概述
    • 25.2.使用本地化
    • 25.3.寻找 i18n 应用程序
    • 25.4.特定语言的区域配置
  • 第26章 FreeBSD 更新与升级
    • 26.1.概述
    • 26.2.更新 FreeBSD
    • 26.3.更新 Bootcode
    • 26.4.更新文档
    • 26.5.追踪开发分支
    • 26.6.从源代码更新 FreeBSD
    • 26.7.多台机器的追踪
    • 26.8.在非 FreeBSD 主机上进行构建
  • 第27章 DTrace
    • 27.1.概述
    • 27.2.实现上的差异
    • 27.3.开启 DTrace 支持
    • 27.4.启用内核外部模块 DTrace
    • 27.5.使用 DTrace
  • 第28章 USB 设备模式/USB OTG
    • 28.1.概述
    • 28.2.USB 虚拟串行端口
    • 28.3.USB 设备模式网络接口
    • 28.4.USB 虚拟存储设备
  • 第四部分:网络通讯
  • 第29章 串行通信
    • 29.1.概述
    • 29.2.串行术语和硬件
    • 29.3.终端
    • 29.4.拨入服务
    • 29.5.拨出服务
    • 29.6.设置串行控制台
  • 第30章 PPP
    • 30.1.概述
    • 30.2.配置 PPP
    • 30.3.PPP 连接的故障排除
    • 30.4.使用以太网 PPP(PPPoE)
    • 30.5.使用 ATM 上的 PPP (PPPoA)
  • 第31章 电子邮件
    • 31.1.概述
    • 31.2.邮件组件
    • 31.3.DragonFly 邮件代理(DMA)
    • 31.4.Sendmail
    • 31.5.修改邮件传输代理
    • 31.6.邮件用户代理
    • 31.7.高级主题
  • 第32章 网络服务器
    • 32.1.概述
    • 32.2.inetd 超级服务器
    • 32.3.网络文件系统(NFS)
    • 32.4.网络信息系统(NIS)
    • 32.5.轻型目录访问协议(LDAP)
    • 32.6.动态主机设置协议(DHCP)
    • 32.7.域名系统(DNS)
    • 32.8.零配置网络(mDNS/DNS-SD)
    • 32.9.Apache HTTP 服务器
    • 32.10.文件传输协议(FTP)
    • 32.11.用于 Microsoft® Windows® 客户端的文件和打印服务(Samba)
    • 32.12.用 NTP 进行时钟同步
    • 32.13.iSCSI target 和 initiator 的配置
  • 第33章 防火墙
    • 33.1.概述
    • 33.2.防火墙的概念
    • 33.3.PF
    • 33.4.IPFW
    • 33.5.IPFILTER(IPF)
    • 33.6.Blacklistd
  • 第34章 高级网络
    • 34.1.概述
    • 34.2.网关和路由
    • 34.3.虚拟主机
    • 34.4.无线高级身份验证
    • 34.5.无线自组织(Ad-hoc)模式
    • 34.6.USB 网络共享
    • 34.7.蓝牙
    • 34.8.桥接
    • 34.9.链路聚合与故障转移
    • 34.10.使用 PXE 进行无盘操作
    • 34.11.共用地址冗余协议(CARP)
    • 34.12.VLAN
  • 第五部分:附录
  • 附录 A.获取 FreeBSD
    • A.1.镜像站
    • A.2.使用 Git
    • A.3.使用 Subversion
    • A.4.光盘
  • 附录 B.书目
    • B.1.FreeBSD 相关书籍
    • B.2.安全性参考文献
    • B.3.UNIX 历史
    • B.4.期刊与杂志
  • 附录 C.网络资源
    • C.1.网站
    • C.2.邮件列表
    • C.3.Usenet 新闻组
  • 附录 D.OpenPGP 密钥
    • D.1.官方成员
  • 术语表
  • 后记
由 GitBook 提供支持

FreeBSD 中文社区

在本页
  • 32.6.1. 配置 DHCP 客户端
  • 32.6.2. 安装和配置 DHCP 服务器

这有帮助吗?

在GitHub上编辑
导出为 PDF
  1. 第32章 网络服务器

32.6.动态主机设置协议(DHCP)

动态主机配置协议(DHCP)允许系统连接到网络,并分配必要的地址信息以进行网络通信。FreeBSD 包含了 OpenBSD 版本的 dhclient,该客户端用于获取地址信息。FreeBSD 并没有安装 DHCP 服务器,但在 FreeBSD Ports 中有几个服务器可供选择。DHCP 协议的完整描述可以参见 RFC 2131。更多信息可以访问 isc.org/downloads/dhcp/。

本节将介绍如何使用内置的 DHCP 客户端。接下来介绍如何安装和配置 DHCP 服务器。

注意

在 FreeBSD 中,bpf(4) 设备是 DHCP 服务器和客户端都需要的设备。这个设备包含在 FreeBSD 安装的 GENERIC 内核中。如果用户想创建自定义内核,需要保留此设备以便使用 DHCP。值得注意的是,bpf 还允许具有特权的用户在该系统上运行网络数据包嗅探器。

32.6.1. 配置 DHCP 客户端

FreeBSD 安装程序中包含了 DHCP 客户端支持,使得新安装的系统能够自动从现有的 DHCP 服务器获取网络配置地址信息。有关网络配置的示例,请参阅 Accounts, Time Zone, Services and Hardening。

当在客户端机器上执行 dhclient 时,它会开始广播请求配置信息。默认情况下,这些请求使用 UDP 端口 68。服务器回复在 UDP 端口 67 上,向客户端提供 IP 地址以及其他相关的网络信息,例如子网掩码、默认网关和 DNS 服务器地址。这些信息以 DHCP "租约" 的形式提供,并且在可配置的时间内有效。这使得那些不再连接到网络的客户端的过期 IP 地址能够被自动回收。DHCP 客户端可以从服务器获取大量的信息。有关详细信息,请参见 dhcp-options(5)。

默认情况下,当 FreeBSD 系统启动时,其 DHCP 客户端会在后台运行,或称为 异步模式。其他启动脚本会继续运行,而 DHCP 进程在后台完成,这样可以加速系统启动。

背景模式下的 DHCP 工作得很好,前提是 DHCP 服务器能快速响应客户端的请求。然而,在某些系统上,DHCP 可能需要较长时间才能完成。如果网络服务在 DHCP 配置完成之前尝试启动,它们将会失败。使用同步模式下的 DHCP 可以避免这个问题,因为它会在启动时暂停,直到 DHCP 配置完成。

在 /etc/rc.conf 中使用以下行配置后台或异步模式:

ifconfig_fxp0="DHCP"

如果在安装过程中已配置该系统使用 DHCP,则这行配置可能已经存在。请将这些示例中的 fxp0 替换为要动态配置的接口名称,如在 “Setting Up Network Interface Cards” 中所述。

要配置系统使用同步模式,并在启动时暂停直到 DHCP 配置完成,请使用 “SYNCDHCP”:

ifconfig_fxp0="SYNCDHCP"

可以使用其他客户端选项。请在 rc.conf(5) 中搜索 dhclient 以获取更多详细信息。

DHCP 客户端使用以下文件:

  • /etc/dhclient.confdhclient 使用的配置文件。通常,这个文件仅包含注释,因为默认配置适合大多数客户端。此配置文件的详细描述请参见 dhclient.conf(5)。

  • /sbin/dhclient 有关此命令的更多信息,请参见 dhclient(8)。

  • /sbin/dhclient-script FreeBSD 特定的 DHCP 客户端配置脚本。它的描述请参见 dhclient-script(8),但通常不需要用户修改以正常工作。

  • /var/db/dhclient.leases.interface DHCP 客户端将有效的租约保存在此文件中,以日志的形式记录,详细信息请参见 dhclient.leases(5)。

32.6.2. 安装和配置 DHCP 服务器

本节演示如何配置 FreeBSD 系统,使其充当 DHCP 服务器,使用互联网系统联盟(ISC)实现的 DHCP 服务器。此实现及其文档可以通过安装 net/isc-dhcp44-server 软件软件包和 Ports 来获得。

安装 net/isc-dhcp44-server 后,会安装一个示例配置文件。将 /usr/local/etc/dhcpd.conf.example 复制到 /usr/local/etc/dhcpd.conf,并对新文件进行编辑。

配置文件由子网和主机的声明组成,这些声明定义了提供给 DHCP 客户端的信息。例如,以下几行配置了如下内容:

option domain-name "example.org";  ①
option domain-name-servers ns1.example.org;  ②
option subnet-mask 255.255.255.0;  ③

default-lease-time 600;  ④
max-lease-time 72400;  ⑤
ddns-update-style none;  ⑥

subnet 10.254.239.0 netmask 255.255.255.224 {
  range 10.254.239.10 10.254.239.20;  ⑦
  option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;  ⑧
}

host fantasia {
  hardware ethernet 08:00:07:26:c0:a5;  ⑨
  fixed-address fantasia.fugue.com;  ⑩
}
  • ① 该选项指定将提供给客户端的默认搜索域。有关更多信息,请参见 resolv.conf(5)。

  • ② 该选项指定客户端应使用的 DNS 服务器的逗号分隔列表。可以使用其完全限定的域名(FQDN),如示例中所示,或者使用它们的 IP 地址。

  • ③ 将提供给客户端的子网掩码。

  • ④ 默认租约到期时间,以秒为单位。客户端可以配置为覆盖此值。

  • ⑤ 租约的最大有效时长,以秒为单位。如果客户端请求更长的租约,仍然会发放租约,但它将仅在 max-lease-time 的有效期内有效。

  • ⑥ 默认值 none 禁用动态 DNS 更新。将其更改为 interim 配置 DHCP 服务器,在每次发放租约时更新 DNS 服务器,这样 DNS 服务器就知道哪些 IP 地址与网络中的哪些计算机相关联。除非 DNS 服务器已配置为支持动态 DNS,否则不应更改默认设置。

  • ⑦ 这一行创建一个可供 DHCP 客户端分配的 IP 地址池。地址范围必须对前面指定的网络或子网有效。

  • ⑧ 声明在前面花括号之前指定的网络或子网的默认网关。

  • ⑨ 指定客户端的硬件 MAC 地址,以便 DHCP 服务器在客户端请求时识别该客户端。

  • ⑩ 指定该主机应始终获得相同的 IP 地址。使用主机名是正确的,因为 DHCP 服务器将在返回租约信息之前解析主机名。

此配置文件支持更多选项。有关详细信息和示例,请参见与服务器一起安装的 dhcpd.conf(5)。

配置完 dhcpd.conf 后,在 /etc/rc.conf 中启用 DHCP 服务器:

dhcpd_enable="YES"
dhcpd_ifaces="dc0"

将 dc0 替换为 DHCP 服务器应侦听 DHCP 客户端请求的接口(或多个接口,接口间以空格分隔)。

通过以下命令启动服务器:

# service isc-dhcpd start

以后对服务器配置的任何更改都需要先停止 dhcpd 服务,然后使用 service(8) 命令重新启动。

DHCP 服务器使用以下文件。请注意,手册页已随服务器软件一起安装。

  • /usr/local/sbin/dhcpd 有关 dhcpd 服务器的更多信息,请参见 dhcpd(8)。

  • /usr/local/etc/dhcpd.conf 服务器配置文件需要包含所有应提供给客户端的信息,以及关于服务器操作的信息。此配置文件在 dhcpd.conf(5) 中有详细描述。

  • /var/db/dhcpd.leases DHCP 服务器将它所发放的租约保存在此文件中,文件以日志的形式写入。请参阅 dhcpd.leases(5),该文档给出了稍长的描述。

  • /usr/local/sbin/dhcrelay 该守护进程用于在高级环境中,其中一个 DHCP 服务器将客户端的请求转发到另一个 DHCP 服务器,该服务器位于不同的网络中。如果需要此功能,请安装 net/isc-dhcp44-relay 软件包和 Ports 。安装后包含 dhcrelay(8),提供更多详细信息。

上一页32.5.轻型目录访问协议(LDAP)下一页32.7.域名系统(DNS)

最后更新于1个月前

这有帮助吗?