netconfig - network configuration database
The network configuration database, /etc/netconfig, is a system file
used to store information about networks that are connected to the
system. The netconfig database and the routines that access it (see
getnetconfig(3N)) are part of the Network Selection component. The
Network Selection component also includes getnetpath() routines to
provide application-specific network search paths. These routines
access the netconfig database based on the environment variable
NETPATH (see environ(5)).
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. Lines in /etc/netconfig that begin
with a # (hash) in column 1 are treated as comments.
Each of the valid lines in the netconfig database correspond to an
available transport. Each entry is of the form:
network_ID semantics_flag protocol_family protocol_name
network_ID 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_ID's on a system
must be unique.
semantics The semantics field is a string identifying the
``semantics'' of the network, that is, 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,
tpi_cots_ord Transport Provider Interface,
connection oriented, supports orderly
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
Hewlett-Packard Company - 1 - HP-UX Release 11i: November 2000
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 are present. Only
one character is currently recognized:
v Visible (``default'') network. Used
when the environment variable NETPATH
The protocol_family and protocol_name fields are provided
for protocol-specific applications.
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; 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 (the
network is experimental). An example protocol family:
inet Internetwork: UDP, TCP, etc.
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. A
``-'' indicates that none of the names listed apply. The
following protocol names are recognized.
tcp Transmission Control Protocol
udp User Datagram 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.
The name-to-address translation libraries support a
``directory service'' (a name-to-address mapping service)
for the network. A ``-'' in this field indicates the
absence of any translation_libraries. This has a special
meaning for networks of the protocol family inet: its
name-to-address mapping is provided by the name service
Hewlett-Packard Company - 2 - HP-UX Release 11i: November 2000
switch based on the entries for hosts and services in
switch()(see nsswitch.conf(4)). For networks of other
families, a ``-'' indicates non-functional name-to-address
mapping. Otherwise, this field consists of a comma-
separated list of pathnames to dynamically linked
libraries. The pathname of the library can be either
absolute or relative.
Each field corresponds to an element in the struct netconfig
structure. struct netconfig and the identifiers described on this
manual page are defined in <<<<netconfig.h>>>>. This structure includes the
char *nc_netid Network ID, including NULL
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
unsigned long nc_nlookups Number of directory lookup
char **nc_lookups Names of the name-to-address
unsigned long nc_unused Reserved for future expansion.
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.
Below is a sample netconfig file:
Hewlett-Packard Company - 3 - HP-UX Release 11i: November 2000
# The 'Network Configuration' File.
# Each entry is of the form:
# <<<<network_id>>>> <<<<semantics>>>> <<<<flags>>>> <<<<protofamily>>>> <<<<protoname>>>> <<<<device>>>> \
# The '-' in <<<<nametoaddr_libs>>>> for inet family transports indicates
# redirection to the name service switch policies for 'hosts' and
# 'services'. The '-' may be replaced by nametoaddr libraries that
# comply with the SVr4 specs, in which case the name service switch
# will not be used for netdir_getbyname, netdir_getbyaddr,
# gethostbyname, gethostbyaddr, getservbyname, and getservbyport.
# There are no nametoaddr_libs for the inet family, and currently
# nametoaddr_libs are not supported.
udp tpi_clts v inet udp /dev/udp -
tcp tpi_cots_ord v inet tcp /dev/tcp -
netconfig was developed by Sun Microsystems, Inc.
getnetconfig(3N), getnetpath(3N), nsswitch.conf(4).
Hewlett-Packard Company - 4 - HP-UX Release 11i: November 2000