netconfig - network configuration database
The network configuration database, /etc/netconfig, is a system file used
to store information about networks connected to the system and available
for use. The netconfig database and the routines that access it [see
getnetconfig(3N)] are part of the UNIX System V Network Selection
component. The Network Selection component also includes the environment
variable NETPATH and a group of routines that access the netconfig
database using NETPATH components as links to the netconfig entries.
NETPATH is described in sh(1); the NETPATH access routines are discussed
netconfig contains an entry for each network available on the system.
Entries are separated by newlines. Fields are separated by whitespace
and occur in the order in which they are described below. Whitespace can
be embedded as ``\blank'' or ``\tab''. Backslashes may be embedded as
``\\''. Each field corresponds to an element in the struct netconfig
structure. struct netconfig and the identifiers described on this manual
page are defined in /usr/include/netconfig.h.
A string used to uniquely identify a network. network ID consists
of non-null characters, and has a length of at least 1. No maximum
length is specified. This namespace is locally significant and the
local system administrator is the naming authority. All network
IDs on a system must be unique.
The semantics field is a string identifying the ``semantics'' of
the network, i.e., the set of services it supports, by identifying
the service interface it provides. The semantics field is
mandatory. The following semantics are recognized.
tpi_clts Transport Provider Interface, connectionless
tpi_cots Transport Provider Interface, connection oriented
Transport Provider Interface, connection oriented,
supports orderly release.
tpi_raw Transport Provider Interface, raw
flag The flag field records certain two-valued (``true'' and ``false'')
attributes of networks. flag is a string composed of a combination
of characters, each of which indicates the value of the
corresponding attribute. If the character is present, the
attribute is ``true.'' If the character is absent, the attribute
is ``false.'' ``-'' indicates that none of the attributes is
present. Only one character is currently recognized:
v Visible (``default'') network. Used when the
environment variable NETPATH is unset.
The protocol family and protocol name fields are provided for
The protocol family field contains a string that identifies a
protocol family. The protocol family identifier follows the same
rules as those for network IDs, that is, the string consists of
non-null characters; it has a length of at least 1; and there is no
maximum length specified. A ``-'' in the protocol family field
indicates that no protocol family identifier applies, that is, the
network is experimental. The following are examples:
loopback Loopback (local to host).
inet Internetwork: UDP, TCP, etc.
implink ARPANET imp addresses
pup PUP protocols: e.g. BSP
chaos MIT CHAOS protocols
ns XEROX NS protocols
nbs NBS protocols
ecma European Computer Manufacturers Association
datakit DATAKIT protocols
ccitt CCITT protocols, X.25, etc.
sna IBM SNA
dli Direct data link interface
hylink NSC Hyperchannel
appletalk Apple Talk
nit Network Interface Tap
ieee802 IEEE 802.2; also ISO 8802
osi Umbrella for all families used by OSI (e.g.,
x25 CCITT X.25 in particular
osinet AFI = 47, IDI = 4
gosip U.S. Government OSI
The protocol name field contains a string that identifies a
protocol. The protocol name identifier follows the same rules as
those for network IDs, that is, the string consists of non-NULL
characters; it has a length of at least 1; and there is no maximum
length specified. The following protocol names are recognized. A
``-'' indicates that none of the names listed applies.
tcp Transmission Control Protocol
udp User Datagram Protocol
icmp Internet Control Message Protocol
The network device is the full pathname of the device used to
connect to the transport provider. Typically, this device will be
in the /dev directory. The network device must be specified.
directory lookup libraries
The directory lookup libraries support a ``directory service'' (a
name-to-address mapping service) for the network. This service is
implemented by the UNIX System V Name-to-Address Mapping feature.
If a network is not provided with such a library, the netdir
feature will not work. A ``-'' in this field indicates the absence
of any lookup libraries, in which case name-to-address mapping for
the network is non-functional. The directory lookup library field
consists of a comma-separated list of full pathnames to dynamically
linked libraries. Commas may be embedded as ``\,''; backslashs as
Lines in /etc/netconfig that begin with a sharp sign (#) in column 1 are
treated as comments.
The struct netconfig structure includes the following members
corresponding to the fields in the netconfig database entries:
char * nc_netid Network ID, including NULL terminator
unsigned long nc_semantics Semantics
unsigned long nc_flag Flags
char * nc_protofmly Protocol family
char * nc_proto Protocol name
char * nc_device Full pathname of the network device
unsigned long nc_nlookups Number of directory lookup libraries
char ** nc_lookups Full pathnames of the directory lookup
unsigned long nc_unused Reserved for future expansion (not
advertised to user level)
The nc_semantics field takes the following values, corresponding to the
semantics identified above:
The nc_flag field is a bitfield. The following bit, corresponding to the
attribute identified above, is currently recognized. NC_NOFLAG indicates
the absence of any attributes.
netdir_getbyname(3N), getnetconfig(3N), getnetpath(3N), netconfig(4),
PPPPaaaaggggeeee 4444 [ Back ]