NIS 이해
이전에 YP(Yellow Pages)라고 알려졌던 NIS(네트워크 정보 서비스)는 데이터베이스와 프로세스로 구성된 간단한 네트워크 조회 서비스입니다. NIS 도메인은 클라이언트와 하나 이상의 서버로 구성됩니다. 클라이언트에서는 NIS 프로토콜을 사용하여 NIS 데이터베이스에 저장된 정보를 조회하며, 이 데이터베이스는 서버 간에 복제됩니다. 단일 마스터 서버는 데이터베이스를 업데이트하도록 할당되며, 하위 서버는 읽기 전용 서비스만 제공합니다. 데이터베이스는 마스터 서버에서 하위 서버로 정기적으로 복사되거나 데이터베이스가 변경될 때 복사되어 동기화됩니다.
NIS에서 제공하는 데이터베이스를 NIS 맵이라고 합니다. NIS 조회 호출을 사용하려면 맵(데이터베이스) 이름과 NIS 도메인 이름이 필요합니다. NIS 도메인은 이러한 맵의 모음으로 구성됩니다. 마스터 NIS 서버에서는 맵 데이터베이스 외에도 각 데이터베이스가 마지막으로 수정된 시기를 나타내는 타임스탬프를 유지 관리합니다.
각 데이터베이스는 원본 파일로부터 만들어집니다. 예를 들어 passwd.byname 및 passwd.byuid 데이터베이스는 passwd라는 원본 파일로부터 만들어집니다. 원본 파일이 변경되면 관리자는 ypmake라는 셸 스크립트 또는 메이크파일을 실행하여 데이터베이스를 업데이트합니다. 또한 데이터베이스를 만드는 데 사용되는 메이크파일은 yppush를 사용하여 데이터베이스를 하위 NIS 서버로 밀어 넣습니다. 전송에는 하위 서버에서 실행되는 프로그램인 ypxfr이 사용됩니다.
클라이언트에서는 다음과 같은 여러 함수 및 원격 프로시저 호출을 사용하여 네트워크 조회 서비스에 연결합니다.
-
yp_match
-
yp_first
-
yp_next
-
yp_all
-
yp_order
-
yp_master
-
yperr_string
-
ypprot_err
또한 일반적으로 NIS를 관리할 수 있는 도구는 ypwhich, yppoll, ypset, ypcat 및 domainname 등과 같이 다양합니다.
참고 | |
NIS용 서버에서는 ypxfrd를 지원하지 않습니다. 이 도구를 사용하면 일부 UNIX 하위 NIS 서버에 경고 메시지가 표시될 수 있습니다. 경고 메시지는 ypinit로 인해 발생하며 실제 오류를 나타내지 않습니다. 일부 UNIX 하위 NIS 서버는 마스터 NIS 서버에서 ypxfrd를 실행하여 NIS 맵을 복제합니다. ypxfrd에 연결하지 못할 경우 yp_all을 사용하여 NIS 맵 복사본을 가져옵니다. |