Solaris PPP negotiate

I'd like to contribute the following blurb which
might go nicely into your PPP troubleshooting
section, if you'd like to include it.  This was
the problem I was having, and my solution.

PPP.1) I can get asppp to dial by typing "ping peerhost",
but the link doesn't stay up.  If I type "ping peerhost" again,
asppp tries to dial again.  What's up?

The most likely cause is that the link manager could not
login to the ISP.  This seems trivial, but it can drive you
nuts if you're shooting at the Dialers or Devices file, and
ignoring Systems and asppp (which is what I did).

If you can "cu -b 8 peerhost" or "tip hardwire" (as shown
in Celeste's document), then Dialers and Devices is 
probably correct.  It's most likely that the process of
logging into peehost is faulty.  This is done through
the Systems file, in conjunction with watching the
asppp log.

Use tip or cu to dial up peerhost, and note exactly the
text that is sent from the ISP, including any motd-type
messages.  Put the prompts as part of the expect-send
pairs in Systems:
  peerhost Any ACUV42BIS 19200 5551234 login: \
     myusername word: mypassword

My problem was that my ISP had a motd-type message
that said something like: 
"At the login: prompt below, type your login name, and
 type your password at the password: prompt.
 login:
"
As you can see, login: shows up twice, but my Systems
file tried to send my login name on the first occurence
of login:, so it never worked.  I fixed it by doing:
   peerhost Any ACUV42BIS 19200 5551234 login: "" \
      login: myusername word: mypassword
which sent an empty string at the first login: text.
Note that even though password: shows up twice, I only
need it once in Systems, because in waiting for the second
login: prompt, I'd already passed by the first occurence
of password:

To see what's happening with your connection, you can
do the following:

First, set the debug level for asppp to 5 in /etc/asppp.cf.
There are other levels, but 5 shows all uucp chat-script 
information.

Restart aspppd (this re-reads /etc/asppp.cf):
  kill -HUP `ps -ef | grep asppp | grep -v grep | awk '{print $2}'`

Watch the /etc/log/asppp.log:
  tail -f /etc/log/asppp.log

Now do the "ping my-isp" and watch the log screen.
You'll see things like (expect:) login:, then when asppp
gets the string, it says "got it" (sent:) myusername^M.

Use this to determine the expect-send pairs that you
need in your Systems file.  Once you can login to the
ISP, asppp is really very good at negotiating the PPP
connection.  It figures out your IP address (if you are
using dynamic IP addressing), and the remote router
it should use.

Well, I hope it helps someone.

Richard Tong == tong@platinum.com
September 19, 1996