JavaScript is required to for searching.
跳过导航链接
退出打印视图
在 Oracle Solaris 11.1 中管理服务位置协议服务     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

1.  SLP(概述)

2.  规划和启用 SLP(任务)

3.  管理 SLP(任务)

4.  引入传统服务

何时通告传统服务

通告传统服务

修改服务

通告未启用 SLP 的服务

SLP 代理注册

如何启用 SLP 代理注册

使用 SLP 代理注册进行通告

通告传统服务时的注意事项

5.  SLP(参考信息)

索引

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

通告传统服务

可以使用以下任一方法来通告传统服务。

修改服务

如果软件服务器的源代码可用,则可引入 SLP SA。用于 SLP 的 C 和 Java API 使用起来相对简单。有关 C API 的信息和有关 Java API 的文档,请参见手册页。如果服务是硬件设备,则制造商可能会有可引入 SLP 的更新 PROM。有关更多信息,请与设备制造商联系。

通告未启用 SLP 的服务

如果没有源代码或包含 SLP 的更新的 PROM,则可编写一个使用 SLP 客户机库通告服务的小型应用程序。此应用程序可用作小型守护进程,可在用来启动和停止服务的同一 Shell 脚本中启动或停止。

SLP 代理注册

Oracle Solaris slpd 通过代理注册文件支持传统的服务通告。代理注册文件是采用可移植格式的服务通告的列表。

如何启用 SLP 代理注册

  1. 在主机文件系统或可通过 HTTP 访问的任何网络目录中创建代理注册文件。
  2. 确定是否存在用于该服务的服务类型模板。

    模板是对服务 URL 和服务类型的属性的说明。模板用于为特定服务类型定义通告的组成部分:

    • 如果存在服务类型模板,请使用该模板来构造代理注册。有关服务类型模板的更多信息,请参见 RFC 2609。

    • 如果没有该服务的服务类型模板,可选择可以准确描述该服务的属性集合。对通告使用命名授权而非缺省设置。缺省的命名授权只允许用于已标准化的服务类型。有关命名授权的更多信息,请参见 RFC 2609。

      例如,假设一个名为 BizApp 的公司有一个用于跟踪软件缺陷的本地数据库。要对该数据库进行通告,该公司可以使用服务类型为 service:bugdb.bizapp 的 URL。此后,命名授权将会是 bizapp

  3. 按照后续步骤,使用在前面步骤中创建的注册文件的位置,在 /etc/inet/slp.conf 文件中配置 net.slp.serializedRegURL 属性。
  4. 成为管理员。

    有关更多信息,请参见《Oracle Solaris 11.1 管理:安全服务》中的"如何使用指定给您的管理权限"

  5. 停止 slpd 和主机上的所有 SLP 活动。
    # svcadm disable network/slp
  6. 在更改配置设置之前,先备份缺省的 /etc/inet/slp.conf 文件。
  7. /etc/inet/slp.conf 文件的 net.slp.serializedRegURL 属性中指定代理注册文件的位置。
    net.slp.net.slp.serializedRegURL=proxy registration file URL

    例如,如果串行化的注册文件是 /net/inet/slp.reg,则可按如下所示来配置属性:

    net.slp.serializedRegURL=file:/etc/inet/slp.reg
  8. 保存更改并关闭文件。
  9. 重新启动 slpd 以激活更改。
    # svcadm enable network/slp

使用 SLP 代理注册进行通告

服务通告由标识服务 URL、可选范围和一系列属性定义的行构成。SLP 守护进程将完全按照与 SA 客户机相同的方式来读取、注册和维护代理通告。下面是某个代理注册文件中的通告示例。

在此示例中,通告了支持 LPR 协议和 FTP 服务器的传统打印机。为了便于说明,添加了行号,但它们不是文件的构成部分。

 (1) #Advertise legacy printer. 
 (2) 
 (3) service:lpr://bizserver/mainspool,en,65535
 (4) scope=eng,corp
 (5) make-model=Laserwriter II
 (6) location-description=B16-2345
 (7) color-supported=monochromatic
 (8) fonts-supported=Courier,Times,Helvetica 9 10
 (9) 
 (10) #Advertise FTP server
 (11) 
 (12) ftp://archive/usr/src/public,en,65535,src-server
 (13) content=Source code for projects
 (14) 

注 - 像配置文件一样,代理注册文件支持同样的非 ASCII 字符转义约定。有关代理注册文件格式的更多信息,请参见 RFC 2614。


表 4-1 SLP 代理注册文件说明

行号
说明
1 和 10
注释行以井号 (#) 开头,不影响文件操作。从注释行开头一直到结束的所有字符都将被忽略。
2、9 和 14
分隔通告的空白行。
3、12
具有用逗号分隔的三个必需字段和一个可选字段的服务 URL:
  • 通告的通用 URL 或 service:URL。有关如何形成 service: URL 的说明,请参见 RFC 2609。

  • 通告的语言。在前面的示例中,此字段指定为英语,即 en。语言是 RFC 1766 语言标记。

  • 注册的生命周期,以秒为单位度量。生命周期限制为 16 位的无符号整数。如果生命周期小于最大值 65535,slpd 将使通告超时。如果生命周期为 65535,slpd 将定期刷新通告,并且在 slpd 退出之前,一直将生命周期视为永久。

  • (可选的)服务类型字段-如果使用此字段,它将定义服务类型。如果定义了服务 URL,则可更改通告 URL 所用的服务类型。在前面的代理注册文件示例中,第 12 行包含一个通用 FTP URL。可选类型字段会使 URL 以服务类型名称 src-server 进行通告。缺省情况下,类型名称中不会添加 service 前缀。

4
范围指定。

可选行包括标记 scope,后跟等号以及用逗号分隔的范围名称列表。范围名称由 net.slp.useScopes 配置属性定义。此列表中只应包括为主机配置的范围。如果未添加范围行,则在配置了 slpd 的所有范围内进行注册。范围行必须紧随 URL 行之后。否则,系统会将范围名称识别为属性。

5–8
属性定义。

在可选的范围行之后,批量服务通告中包含属性/值列表对行。每个对都包含属性标记,其后是等号以及属性值或以逗号分隔的值列表。在前面的代理注册文件示例中,第 8 行显示了具有多个值的属性列表。所有其他列表都是单值。属性名称和值的格式与在线 SLP 消息的格式相同。