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:
-
/usr/include/netconfig.h
-
/usr/include/sys/netconfig.h
-
/usr/include/netdir.h
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