30 SLP REPORT DOCUMENTATION BUG#
要配置网络客户端,需要了解关于通过网络提供的服务(例如打印或 LDAP)的详细知识。为了简化在网络客户端上配置此类服务的工作,“服务定位协议” (SLP) 应运而生。SLP 可向本地网络中的所有客户端告知所选服务的可用性和配置数据。支持 SLP 的应用程序可以利用这一信息来进行自动配置。
SUSE® Linux Enterprise Server 支持使用 SLP 提供的安装源进行安装,并且包含许多集成了 SLP 支持的系统服务。您可以使用 SLP 为联网客户端(如系统上的安装服务器、文件服务器或打印服务器)提供核心功能。提供 SLP 支持的服务包括 cupsd、login、ntp、openldap2、postfix、rpasswd、rsyncd、saned、sshd(通过 fish)、vnc 和 ypserv。
默认情况下,系统会安装在网络客户端上使用 SLP 服务所需的所有包。但如果您要通过 SLP 提供服务,请检查 openslp-server 包是否已安装。
30.1 SLP 前端 slptool REPORT DOCUMENTATION BUG#
slptool 是一个命令行工具,用于查询和注册 SLP 服务。在进行诊断时,查询功能非常有用。下面列出了最重要的 slptool 子命令。slptool --help 列出所有可用的选项和函数。
findsrvtypes
列出网络上可用的所有服务类型。
tux > slptool findsrvtypes
service:install.suse:nfs
service:install.suse:ftp
service:install.suse:http
service:install.suse:smb
service:ssh
service:fish
service:YaST.installation.suse:vnc
service:smtp
service:domain
service:management-software.IBM:hardware-management-console
service:rsync
service:ntp
service:ypserv
COPY CODE
findsrvs SERVICE_TYPE
列出提供 SERVICE_TYPE 的所有服务器
tux > slptool findsrvs service:ntp
service:ntp://ntp.example.com:123,57810
service:ntp://ntp2.example.com:123,57810
COPY CODE
findattrs SERVICE_TYPE//HOST
列出 HOST 上 SERVICE_TYPE 的属性
tux > slptool findattrs service:ntp://ntp.example.com
(owner=tux),(email=tux@example.com)
COPY CODE
register SERVICE type//HOST:PORT "(ATTRIBUTE=VALUE),(ATTRIBUTE=VALUE)"
使用可选属性列表在 HOST 上注册 SERVICE_TYPE
slptool register service:ntp://ntp.example.com:57810 \ "(owner=tux),(email=tux@example.com)"
COPY CODE
deregister SERVICE_TYPE//host
在 HOST 上取消注册 SERVICE_TYPE
slptool deregister service:ntp://ntp.example.com
COPY CODE
有关更多信息,请运行 slptool --help。
30.2 通过 SLP 提供服务 REPORT DOCUMENTATION BUG#
要提供 SLP 服务,SLP 守护程序 (slpd) 必须处于运行状态。就像 SUSE Linux Enterprise Server 中的大多数系统服务一样,slpd 通过单独的启动脚本来控制。安装后,默认情况下停用守护程序。要为当前的会话激活它,请运行 sudo systemctl start slpd。如果 slpd 应该在系统启动时激活,请运行 sudo systemctl enable slpd。
SUSE Linux Enterprise Server 中的许多应用程序都已通过 libslp 库集成了 SLP 支持。如果服务未符合 SLP 支持,请使用以下方法之一使其可通过 SLP 发布。
通过 /etc/slp.reg.d 进行的静态注册
为每个新服务创建单独的注册文件。下面的示例会注册一个扫描仪服务:
## Register a saned service on this system ## en means english language ## 65535 disables the timeout, so the service registration does ## not need refreshes service:scanner.sane://$HOSTNAME:6566,en,65535 watch-port-tcp=6566 description=SANE scanner daemon
COPY CODE
此文件中最重要的一行是以 service: 开头的服务 URL。其中包含服务类型 (scanner.sane) 以及该服务在服务器上的地址。$HOSTNAME 会自动替换为完整主机名。随后是可以找到相关服务的 TCP 端口的名称,端口与主机名之间用冒号分隔。然后输入服务的显示语言及以秒计的注册持续时间。应该用逗号分隔服务 URL 之后的各项内容。将注册持续时间设置为 0 到 65535 之间的值。0 表示禁止注册。65535 表示取消所有限制。
该注册文件还包含 watch-port-tcp 和 description 这两个变量。watch-port-tcp 通过使 slpd 检查相关服务的状态,链接 SLP 服务对该服务是否活动的发布。第二个变量为显示在适合的浏览器中的服务提供了更为准确的描述。
提示:YaST 和 SLP
在模块对话框中激活 SLP 后,由 YaST 代理的某些服务(如安装服务器或 YOU 服务器)会为您自动执行此注册。然后,YaST 为这些服务创建注册文件。
通过 /etc/slp.reg 进行的静态注册
此方法与使用 /etc/slp.reg.d 的步骤之间唯一的区别在于,所有服务在中心文件中分组。
使用 slptool 进行的动态注册
如果某个服务须动态注册,而无需配置文件,请使用 slptool 命令行实用程序。该实用程序还可用于取消注册某个现有服务产品,而无需重启动 slpd。有关详细信息,请参见第 30.1 节 “SLP 前端 slptool”。
30.2.1 设置 SLP 安装服务器 REPORT DOCUMENTATION BUG#
在网络中通过 SLP 公告安装数据可简化网络安装过程,因为系统会通过 SLP 查询自动请求服务器 IP 地址或安装媒体路径等安装数据。有关指导,请参见第 8 章 “设置存放安装源的服务器”。
30.3 更多信息 REPORT DOCUMENTATION BUG#
RFC 2608、2609、2610
RFC 2608 主要描述了 SLP 的定义。RFC 2609 更详细地描述了所用服务 URL 的语法;RFC 2610 则对通过 SLP 的 DHCP 进行了描述。
OpenSLP 项目的主页。
/usr/share/doc/packages/openslp
此目录包含 openslp-server 包随附的 SLP 文档,其中的 README.SUSE 文件包含 SUSE Linux Enterprise Server 细节、RFC 和两个介绍性的 HTML 文档。要使用 SLP 功能的程序员可参见 SUSE 软件开发包附带的 openslp-devel 包中的《Programmers Guide》(编程指南),以了解更多信息。
本文介绍了服务定位协议(SLP)的基本概念及其在网络客户端配置中的应用。SLP能够自动告知客户端可用的服务及其配置信息,简化了服务配置流程。文章还详细解释了如何使用slptool工具管理和查询SLP服务,以及如何通过SLP提供服务。
4591

被折叠的 条评论
为什么被折叠?



