netconfig(4) — FILE FORMATS
NAME
netconfig − network configuration database
SYNOPSIS
#include <netconfig.h>
DESCRIPTION
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 in getnetpath(3N).
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.
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 IDs 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, connectionless
tpi_cots Transport Provider Interface, connection oriented
tpi_cots_ord 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.
b Enable RPC broadcast.
protocol family
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, 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, and so on
implink ARPANET imp addresses
pup PUP protocols: for example, 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, and so on
sna IBM SNA
decnet DECNET
dli Direct data link interface
lat LAT
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 (for example, protosw lookup)
x25 CCITT X.25 in particular
osinet AFI = 47, IDI = 4
gosip U.S. Government OSI
protocol name
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
network device
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 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 libraries themselves
unsigned long nc_unused[9] Reserved for future expansion (not advertised to user level)
The nc_semantics field takes the following values, corresponding to the semantics identified above:
NC_TPI_CLTS
NC_TPI_COTS
NC_TPI_COTS_ORD
NC_TPI_RAW
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.
NC_VISIBLE
FILES
/etc/netconfig
/usr/include/netconfig.h
SEE ALSO
getnetconfig(3N), getnetpath(3N), icmp(7), ip(7), netconfig(4), netdir_getbyname() [see netdir(3N)]
— Networking Support Utilities