Charlie Mengler <charliem@anchorchips.com>
Daniel Ellis <dellis@frycomm.com>
STattitali@Paragon-Mcs.com (Sandesh Tattitali)
In the end, we finally got this working by going back to the original
version of PPP bundled with Solaris 2.5.1, making some config changes in
Solaris PPP, and by using a W95 dialup script . When we dial in now, we get
a login prompt, whereas before we used to immediately get the PPP binary
"hello" packet which looked like gibberish. The curious thing was that
there would never be any entries in the PPP log on the solaris machine
during all of this. Using a standard PPP script we obtained, we were able
to see this login prompt when it came, and tweak this script to make it
work. I don't know why we weren't getting the login prompt before, but
things are great now. Also, we cannot connect without the script... we
always get the error "W95 could not negotiate a compatible set of network
protocols...." so we'll stick with the script and not worry about it for now.
Some useful tips we found out:
In the W95 client, you can actually do PPP logging. Configure this in the
Networks control panel, in the dial-up adapter, in advanced options. The
log is written to the file \windows\ppplog.txt.
Example:
12-01-1997 19:12:04.52 - LCP : Peer requests use of magic number 7660e.
12-01-1997 19:12:04.66 - LCP : Received and accepted ACCM of a0000.
12-01-1997 19:12:04.66 - LCP : Naking possibly loopback magic number.
12-01-1997 19:12:04.77 - LCP : Loopback! Peer nak'd with our nak of peer's
magic number!
12-01-1997 19:12:04.77 - LCP : Peer requests use of magic number 76705.
12-01-1997 19:12:04.90 - LCP : Received and accepted ACCM of a0000.
12-01-1997 19:12:04.90 - LCP : Naking possibly loopback magic number.
2nd tip:
Here's the script we used. I wonder if there's a reference on this script
language somewhere.
---------------
proc main
integer nTries = 3
string szLogin = "ogin:"
integer nLoginTimeout = 3
string szPW = "assword:"
integer nPWTimeout = 3
string szPrompt = "annex:"
; This is the command to send to establish the
; connection. This script assumes you only need
; to issue one command to continue. Feel free
; to add more commands if your provider requires
; it.
;
string szConnect = "3^M"
boolean bUseSlip = FALSE
delay 2
transmit "^M^M"
while 0 < nTries do
waitfor szLogin then DoLogin
until nLoginTimeout
TryAgain:
transmit "^M" ; ping
nTries = nTries - 1
endwhile
goto BailOut
DoLogin:
; Enter user ID
transmit $USERID, raw
transmit "^M"
; Wait for the password prompt
waitfor szPW until nPWTimeout
if FALSE == $SUCCESS then
goto TryAgain
endif
; Send the password
transmit $PASSWORD, raw
transmit "^M"
; Wait for the prompt
; waitfor szPrompt (commented out)
transmit szConnect
if bUseSlip then
; An alternative to the following line is
;
; waitfor "Your address is "
; set ipaddr getip
;
; if we don't know the order of the IP addresses.
set ipaddr getip 2
endif
goto Done
BailOut:
; Something isn't responding. Halt the script
; and let the user handle it manually.
set screen keyboard on
halt
Done:
endproc
-------------
Thanks again for all the help!
-keith salustro
-- --------------------------------------------------- Keith W. Salustro, Network Security Engineer Secure Networks Corporation Main: 800-357-0208 Fax: 617-876-1548 <http://www.snc-net.com>Direct: 617-875-7672 Keith_Salustro@snc-net.com ---------------------------------------------------
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/