摘要
制定服务位置协议 (SLP) 是为了简化本地网络中联网客户机的配置。要配置网络客户机(包括所有必需服务),管理员通常需要对网络中提供的服务器有详细了解。SLP 可以向本地网络中的所有客户机声明特定服务是否可用。支持 SLP 的应用程序则可以利用这一发布信息并进行自动配置。
SUSE Linux 支持使用通过 SLP 提供的安装源进行安装,并且包含许多集成了 SLP 支持的系统服务。YaST 和 Konqueror 都适用于 SLP 的前端。您可以使用 SLP 为联网客户机提供核心功能,如 SUSE Linux 上的安装服务器、YOU 服务器、文件服务器或打印服务器。
SUSE Linux 中的许多应用程序都已使用 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
此文件中最重要的一行是以 service: 开头的服务 URL。其中包含服务类型 (scanner.sane) 以及该服务在服务器上的地址。$HOSTNAME 自动用完整主机名替换。随后是可以找到相关服务的 TCP 端口的名称,端口与主机名之间用冒号分隔。然后输入服务的显示语言及以秒计的注册持续时间。应该用逗号分隔服务 URL 之后的各项内容。将注册持续时间设置为 0 到 65535 之间的值。0 表示禁止注册。65535 表示取消所有限制。
配置文件还包含 watch-tcp-port 和 description 这两个变量。通过 slpd 检查服务的状态,第一个变量将 SLP 服务声明与相关服务是否处于活动状态联系起来。第二个变量为显示在应用程序浏览器中的服务提供了更为准确的说明。
/etc/slp.reg 进行的静态注册与上述过程的唯一差别即在于:这种注册方式要将所有服务都集中到一个核心文件中。
如果应该从专有脚本为某项服务注册 SLP 支持,请使用 slptool 命令行前端。