The file ${DPLOG_DIR}/call.log can be used to give you a one line
summary of each successful call. The file ${DPLOG_DIR}/dp.log can be used
to show you a blow by blow description of calls in progress. The amount
of logging can be increased by invoking dpd with "-d N" where N can be anywhere
from 0 for minimal logging to 3 for verbose logging. In addition, the log
level can be set for individual systems in the configuration file by using
the LOG_LEVEL variable.
When running adb on the kernel, you must be sure to specify the correct
object file so that you get the correct symbols. Under Solaris 1.X,
you must link a new object file using the "mksyms" shell script in
the sys directory. This will create a file called vmunix.syms that
can be used as an object file. Under Solaris 2.X, the kernel already
provides access to all loaded symbols via the device "/dev/ksyms".
Here is a typical adb session:
In general the remote primary servers should not be listed in the
nameserver data contained in the zone data. Otherwise, distant Internet hosts
may try to use them for information about the zone, generating unnecessary
traffic. They should exist as primary nameservers, but not be advertised
as such.
Debug Tracing
If you encounter problems with the kernel modules, you can turn on very
verbose debugging output by setting the following kernel variables:
dp streams driver (dp.o (Sol 2.X))
dp_debug General info
dp_debug_dump_msg Print trace of packets
dp_debug_lists Print linked lists after updates
vjc streams module (vjc.o)
vjc_debug General info
pppasync streams module (ppp_async.o)
ppp_async_debug General info
ppp_async_input_debug input packet dump of N bytes
These variables are all int variables and should be set to 0 or 1, to have
the reporting off or on, respectively. The ppp_async_input_debug variable
can be given a value greater than 1 to indicate the number of bytes printed in
a packet trace.
# adb -w -k /dev/ksyms /dev/mem
physmem fe9
ppp_async_input_debug/X
_ppp_async_input_debug: 0
/W0t32
_ppp_async_input_debug: 0x0 = 0x20
$q
#
In order to set a variable to remain in effect after the next reboot,
you must adb the individual module files. Under Solaris 2.X, these are
located in
/usr/kernel/drv/dp
/usr/kernel/strmod/vjc
/usr/kernel/strmod/pppasync
Broadcast programs
Some programs broadcast information on a regular basis to all connected
interfaces. If a program is found to generate frequent output on PPP
interfaces, it should be reconfigured, modified, or just not run at all,
depending on the circumstances.
rwhod
A common example of a talkative program is rwhod. If you must run rwhod,
it should be modified to ignore PPP links. Context diffs for rwhod are
available. Once applying
these diffs to rwhod sources, you should be able to run rwhod with the
"-p" flag to suppress all output on Point to Point interfaces.
Nameserver (DNS)
If you are on the Internet, you are basically mandated to use DNS.
Typically, this is implemented in a program called named or in.named.
If you are relying solely on DNS (no NIS or host tables), you should
set up nameservers at the remote sites. Care should be taken in the
configuration of the nameservers. There are at least a couple of ways
that you can set things up.
Secondary nameservers
You can set up secondary nameservers on each of the remote sites.
They can zone load your organization-wide zones on a regular basis.
Please note that zones have a refresh time at which point a connection
will be made to check for updates. This can vary, but it may be 12 hours
or so. This interval is specified in the zone file on the primary nameserver.
At this interval, the remote secondary nameserver will contact the primary
nameserver (generating a call in our case). It will verify that the primary
has the most recent version of each zone of interest.
Primary nameservers
For remote sites that are placing toll calls, a refresh interval of 12
hours would result in 2 extra toll calls per day. This may be a problem.
If so, consider making the remote system a primary nameserver. When the
central nameserver file is updated, it needs to be distributed to all remote
primary nameservers, but this may be preferable compared to all the long
distance toll charges of the more automatic scheme employed by the secondary
nameservers.
Kirk Smith / ks@acn.purdue.edu
Last updated: 28 July 1995