DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Administering network selection

The /etc/netconfig file

The system administrator is responsible for maintaining the network configuration database file /etc/netconfig. Entries in the netconfig file contain the following fields in the order shown here:

network_id semantics flags protofamily protoname device nametoaddr_libs

The fields correspond to elements of the netconfig structure. Pointers returned by network selection library routines are pointers to netconfig entries in netconfig format. See netconfig(4bnu) for more information. The netconfig(4bnu) manual page also describes the elements of the struct netconfig structure. All symbolic names, structure definitions, and constant values for the network selection feature are defined in the header files:

netconfig fields are defined as follows:


network_id
A string used to identify a transport provider. network_id consists of non-null characters and has a length of at least 1. No maximum length is specified. This name space is locally significant and the local system administrator is the naming authority responsible for ensuring that each network_id on a system is unique.

semantics
A string that identifies the semantics of the transport provider, that is, the set of services it supports, by identifying the service interface it provides. This is closely related to, but not identical with, the API with which applications are supposed to access the network. Typically, an application will specify its API by pushing an appropriate STREAMS module (such as timod) and using an appropriate user-level library (such as the Transport Layer Interface (TLI) library). 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 and supports orderly release

tpi_raw
Transport Provider Interface, raw

flags
The flags field contains two-valued (true and false) attributes of transport providers. flags is a string of characters, each of which specifies the value of the corresponding attribute. If the character is present, the attribute is true. If the character is absent, the attribute is false. A dash (-) indicates no attributes are present. The characters currently recognized are:

v
Visible network. Used to establish a default list of networks to search when the environment variable NETPATH is unset. See ``The NETPATH environment variable'', for a description of how the v flag is used.

b
Enable Remote Procedure Call (RPC) broadcast. Used by rpc_broadcast (see rpc_clnt_calls(3rpc)).

protofamily
The protofamily and protoname fields are provided for protocol-specific applications. The protofamily field contains a string that identifies a protocol family. The protofamily identifier follows the rules for network_ids: it is a string of non-null characters with a length of at least 1. No maximum length is specified.

A dash (-) in the protofamily field indicates that none of the available protocol family identifiers applies, that is, the transport provider is experimental. An application that wants to have family characteristics can match on the protofamily field when selecting a network. (For example, an application can search for an OSI family.) In this case, the application is not protocol-independent, since it has searched only for OSI entries. The following are examples of protocol family identifiers:


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
National Bureau of Standards (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

x25
CCITT X.25 in particular

osinet
AFI = 47, IDI = 4

gosip
US Government OSI

protoname
The protoname field contains a string that identifies a protocol. This field is currently used only for the inet family. For any other family, the protocol name field contains a dash (-). The protoname identifier follows the same rules as network_ids: The string consists of non-null characters and has a length of at least 1. No maximum length is specified.

The protoname field may contain:


icmp
Internet Control Message Protocol

tcp
Transmission Control Protocol

udp
User Datagram Protocol

device
The device is the full pathname of the device used to connect to the remote machine via the transport provider. Typically, this device will be in the /dev directory. The device must be specified.

nametoaddr_libs
The nametoaddr_libs support a directory service (that is, a name-to-address mapping service) for the network. This service is implemented by the name-to-address mapping feature. If a transport is not provided with such a library, that is, if the nametoaddr_libs field in the netconfig file contains only a dash, the network selection request will fail.

The nametoaddr_libs field consists of a comma-separated list of full pathnames to dynamically linked libraries.

Literal commas may be embedded as ``\,''; backslashes as ``\\'' Lines in /etc/netconfig that begin with a hash sign (#) in the first column are comments.

The system administrator determines the order of the entries in the netconfig database. Because the network selection library routines that access netconfig directly return entries in order, beginning at the top of the /etc/netconfig file, the order in which networks are entered in the file by the system administrator becomes the default search path for applications choosing networks to which they will connect.

#network_id   semantics     flags  protofamily  protoname  device          nametoaddr_libs
#
ticlts        tpi_clts      v      loopback     -          /dev/ticlts     /usr/lib/straddr.so
ticots        tpi_cots      v      loopback     -          /dev/ticots     /usr/lib/straddr.so
ticotsord     tpi_cots_ord  v      loopback     -          /dev/ticotsord  /usr/lib/straddr.so
tcp           tpi_cots_ord  v      inet         tcp        /dev/tcp        /usr/lib/tcpip.so,/usr/lib/resolv.so
udp           tpi_clts      v      inet         udp        /dev/udp        /usr/lib/tcpip.so,/usr/lib/resolv.so
icmp          tpi_raw       -      inet         icmp       /dev/icmp       /usr/lib/tcpip.so,/usr/lib/resolv.so
rawip         tpi_raw       -      inet         -          /dev/rawip      /usr/lib/tcpip.so,/usr/lib/resolv.so

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 22 April 2004