NDB(6) Games Manual NDB(6)

ndb - network data base

/lib/ndb/local
/lib/ndb/inferno
/lib/ndb/dns
/lib/ndb/common

Network configuration data is stored in one or more files in the directory /lib/ndb, in the attribute data base format defined by attrdb (6). Most applications that use it start with /lib/ndb/local by default. That can refer (using a database entry) to other files that form part of the same logical database. They are stored in distinct files to allow different configurations to avoid duplicating data by sharing some common content. For example, /lib/ndb/common associates service names with port numbers for Internet protocols, and /lib/ndb/inferno provides the Inferno-specific port mapping. A database is automatically reread if any component file has changed since it was last read (based on its modification time).

A network database gives particular meaning to the following attributes:

name or address of authentication server
name of the file to send to a device on request when booting
name or address of DNS resolver (see also the ns attribute below)
domain in which the local host lives (used to qualify unqualified names)
Internet domain name (host or DNS zone)
Ethernet address in the form accepted by ether (2)
name or address of file server
IL service name
empty-valued attribute that labels default site parameters
Internet address
name or address of Internet gateway
Internet network mask
network or subnetwork name
IPv4 protocol number (see also protocol)
mail exchanger
name of a DNS name server for an associated dom
port number for a service
protocol name
start of area (value is empty if locally authoritative, or `delegated' if another server is authoritative)
system name (short local name for a host)
TCP service name
UDP service name

Internet addresses and masks can be written in any form accepted by Ip (2). Network applications might use other attributes of their own, which they document on their own pages.

Cs (8) interprets a host name of the form $server as referring to the set of names and addresses that are values of the attribute server in the network data base. Attributes in general use include some of those above, and the following:

older name for file server fs file server
mail reading service using the POP3 protocol
firewall proxy for ftpfs (4)
Inferno authentication server running logind (8) and/or signer (8)
mail delivery gateway using the SMTP protocol

Other such symbolic server names are mentioned in the manual pages for associated applications.

Dns (8) interprets dns and dnsdomain values in any infernosite entry, and dom, ip, and ns values more generally. When resolving a domain name, dns looks first in this data base to see if there is a dom entry for the name, and if so, whether there is either an associated ns attribute giving a name server to ask, or an ip attribute giving the name's IP address. Failing that, it works up the name hierarchy looking for name servers to ask. Failing that, it looks for a dnsdomain entry with dns attributes listing other resolvers to ask. Bootstrap data is commonly stored in /lib/ndb/dns; by default it defines the root name servers:

dom=    # root
	ns=a.root-servers.net
	ns=b.root-servers.net
	...
dom=a.root-servers.net ip=198.41.0.4
dom=b.root-servers.net ip=128.9.0.107
	...
    

Specify the site's default DNS domain name and resolvers for dns (8), and a collection of symbolic service names for cs (8):

infernosite=
	dnsdomain=vitanuova.com
	dns=200.1.1.11
	dns=158.152.1.58
	dns=158.152.1.43
	SIGNER=doppio
	FILESERVER=doppio
	smtp=doppio
	pop3=doppio
	PROXY=doppio
	GAMES=vivido
	IRMSERVER=vivido
    

/lib/ndb/*

attrdb (2), attrdb (6), bootpd (8), cs (8), dns (8)