Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > N


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


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_device translation_libraries


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.


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.


Transport Provider Interface, connectionless


Transport Provider Interface, connection oriented, supports orderly release.


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 are present. Only one character is currently recognized:


Visible (``default'') network. Used when the environment variable NETPATH is unset.


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:


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.


Transmission Control Protocol


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 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.

Itanium(R)-based libraries are located in the /usr/lib/hpux[32|64] directories. For backward compatibility appropriate links are provided in /usr/lib; for example, /usr/lib/libstraddr.so.1 is linked to /usr/lib/libstraddr.1. If the library field is modified and both Itanium-based and PA-RISC libraries are provided, links must be created in the /usr/lib directory to accommodate backward compatibility to PA-RISC library naming conventions. If an absolute library pathname is specified for a particular service, the applications using the service work only for that architecture.

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 following members:

char *nc_netid

Network ID, including NULL terminator.

unsigned long nc_semantics


unsigned long nc_flag


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

Names of the name-to-address translation libraries.

unsigned long nc_unused[9]

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:

# # The 'Network Configuration' File. # # Each entry is of the form: # # <network_id> <semantics> <flags> <protofamily> <protoname> <device> \ # <nametoaddr_libs> # # 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.




Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.