Next Previous Contents

4. 如何運作

4.1 NIS 如何運作

在依個網路上必須有至少一台的 NIS 伺服器。 你可已有好幾台 NIS 伺服器,各台服務不同的 NIS 網域, 或是共同合作的 NIS 伺服器,其中一台為主 NIS 伺服器, 其他則是所謂的副 NIS 伺服器(服務同一個 NIS 網域), 或是你可以混和使用這兩種。

副伺服器只擁有 NIS 資料庫的副本,當主伺服器上的資料庫更動時, 副伺服器會收到這些更新過的副本。依照網路上機器的數目和網路的可靠性, 你可以決定安裝一或多台的副伺服器。當 NIS 伺服器停止服務或回應要求的速度太慢時, NIS 客戶端會試著找到另一台正常服務或是較快的伺服器。

NIS 資料庫是儲存在一種由 ASCII 資料庫衍生出稱為 DBM 的格式。 舉例來說,/etc/passwd/etc/group 檔可以 使用 ASCII-DBM 轉換軟體(makedbm,包含在伺服器軟體中)直接轉換為 DBM 格式。 主 NIS 伺服器應該要有 ASCII 跟 DBM 兩種格式的資料庫。

副伺服器在 NIS 對應表更動後會收到通知(透過 yppush 程式), 而且會自動抓取這些變更來使資料庫同步。NIS 客戶端完全不需要做這些動作, 因為它們直接與 NIS 伺服器溝通取得資料。

舊版的 ypbind 使用廣播的方式來找到執行中的 NIS 伺服器。 這方法是不安全的,因為任何人都可以安裝一台 NIS 伺服器來回應這些廣播。 較新版本的 ypbind(ypbind-3.3 或 ypbind-mt)可以從設定檔中取得伺服器資訊, 不需要廣播。

4.2 NIS+ 如何運作

NIS+ 是由 Sun 所推出的新版的網路資訊名稱服務。 NIS 和 NIS+ 之間最大的差異就在於 NIS+ 支援了資料加密與透過 secure RPC 進行認證。

NIS+ 的命名規則是根據樹枝狀結構而來。樹上的每一個節點對應到一個 NIS+ 的物件, 物件有六種型態:directory、entry、group、link、table 和 private。

組成 NIS+ 命名空間的根的 NIS+ 目錄(directory)稱為根目錄。 有兩種特殊型態的的 NIS+ 目錄:org_dir 和 groups_dir。 org_dir 目錄包含了所有管理性表格,像是 passwd、hosts 和 mail_aliases。 groups_dir 目錄包含了做為存取控制的 NIS+ 群組(group)物件。 org_dir 和 groups_dir 還有它們的母目錄的集合就稱為一個 NIS+ 網域。


Next Previous Contents