# Network Information Service

Network Information System (conocido por su acrónimo NIS, que en español significa Sistema de Información de Red), es el nombre de un protocolo de servicios de directorios cliente-servidor desarrollado por Sun Microsystems para el envío de datos de configuración en sistemas distribuidos tales como nombres de usuarios y hosts entre computadoras sobre una red.
NIS está basado en ONC RPC, y consta de un servidor, una biblioteca de la parte cliente, y varias herramientas de administración.

## Historia

Originalmente NIS se llamaba Páginas Amarillas (Yellow Pages), o YP, que todavía se utiliza para referirse a él. Desafortunadamente, ese nombre es una marca registrada de Orange Spain, que exigió a Sun abandonar ese nombre. Sin embargo YP permanece como prefijo en los nombres de la mayoría de las órdenes relacionadas con NIS, como ypserv e ypbind.
DNS sirve un rango limitado de información, siendo la más importante la correspondencia entre el nombre de nodo y la dirección IP. Para otros tipos de información, no existe un servicio especializado así. Por otra parte, si sólo se administra una pequeña LAN sin conectividad a Internet, no parece que merezca la pena configurar DNS. Ésta es la razón por la que Sun desarrolló el Sistema de Información de Red (NIS). NIS proporciona prestaciones de acceso a bases de datos genéricas que pueden utilizarse para distribuir, por ejemplo, la información contenida en los ficheros passwd y groups a todos los nodos de su red. Esto hace que la red parezca un sistema individual, con las mismas cuentas en todos los nodos. De manera similar, se puede usar NIS para distribuir la información de nombres de nodo contenida en /etc/hosts a todas las máquinas de la red.

## Implementaciones

Hoy NIS está disponible prácticamente en todos las distribuciones de Unix, e incluso existen implementaciones libres. BSD Net-2 publicó una que ha sido derivada de una implementación de referencia de dominio público donada por Sun. El código de la biblioteca de la parte cliente de esta versión existe en la libc de GNU/Linux desde hace mucho tiempo, y los programas de administración fueron portados a GNU/Linux por Swen Thümmler. Sin embargo, falta un servidor NIS a partir de la implementación de referencia.
Peter Eriksson ha desarrollado una implementación nueva llamada NYS. Soporta tanto NIS básico como la versión mejorada de Sun NIS+. NYS no sólo proporciona una serie de herramientas NIS y un servidor, sino que también añade un completo juego nuevo de funciones de biblioteca que necesita compilar en su libc si quiere utilizarlas. Esto incluye un esquema nuevo de configuración para la resolución de nombres de nodo que sustituye al esquema actual que usa el fichero "host.conf".
La libc de GNU, conocida como libc6 en la comunidad GNU/Linux, incluye una versión actualizada del soporte de NIS tradicional desarrollado por Thorsten Kukuk. Soporta todas las funciones de biblioteca que proporcionaba NYS, y también utiliza el esquema avanzado de configuración de NYS. Todavía se necesitan las herramientas y el servidor, pero utilizando la libc de GNU se ahorra el trabajo de tener que parchear y recompilar la biblioteca.