I am having (great) difficulty getting diald (0.16.14) to work.  I am
using diald on a stand alone computer running Red Hat 6.2, kernel
2.2.13.  Diald dials my ISP ok when I start netscape, but then hangs up
as soon as 'protocol started' appears in the dctrl dialling log.  The
log looks something like:

                Initializing modem
                Dialing 46386011
                chat Jun 2 0040.10 connect 115200
                logging in
                protocol started

        I have used my MS Works communication program to see what scripting
comes from my ISP - (I'm new to Linux - I suppose Minicom would have
done it...)

                UQKT2 tntl.toowoomba.au.da.uu.net
                Login (my username)
                Password:
                Entering PPP Session
                IP address is 210.84.182.209
                MTU is 1524

        I edited the connect script supplied with the rpm a little to get rid
of the comm protocol prompt: here is the script:

        #!/bin/sh

#------------------------------------------------------------------
# For the RPM I've added a few lines to report the connect speed.
# See /usr/lib/diald for the original connect script. -- Dave Cook
#------------------------------------------------------------------

# Copyright (c) 1996, Eric Schenk.
#
# This script is intended to give an example of a connection script that
# uses the "message" facility of diald to communicate progress through
# the dialing process to a diald monitoring program such as dctrl or
diald-top.
# It also reports progress to the system logs. This can be useful if you
# are seeing failed attempts to connect and you want to know when and
why
# they are failing.
#
# This script requires the use of chat-1.9 or greater for full
# functionality. It should work with older versions of chat,
# but it will not be able to report the reason for a connection failure.

# Configuration parameters

# The initialization string for your modem

MODEM_INIT="ATZ&C1&D2%C0"

# The phone number to dial
PHONE_NUMBER="46386011"

# The chat sequence to recognize that the remote system
# is asking for your user name.
USER_CHAT_SEQ="ogin:--ogin:--ogin:--ogin:--ogin:--ogin:--ogin:"

# The string to send in response to the request for your user name.
USER_NAME="(my user name)"

# The chat sequence to recongnize that the remote system
# is asking for your password.
PASSWD_CHAT_SEQ="(my password)"

# The string to send in response to the request for your password.
PASSWORD="exeter60"

# The prompt the remote system will give once you are logged in
# If you do not define this then the script will assume that
# there is no command to be issued to start up the remote protocol.
#PROMPT="exec:"   I COMMENTED OUT THIS
# The command to issue to start up the remote protocol
PROTOCOL_START="ppp"

# The string to wait for to see that the protocol on the remote
# end started OK. If this is empty then no check will be performed.
START_ACK="Entering PPP Session"   I CHANGED THIS

# Pass a message on to diald and the system logs.
function message () {
[ $FIFO ] && echo "message $*" >$FIFO
logger -p local2.info -t connect "$*"
}

# Initialize the modem. Usually this just resets it.
message "Initializing Modem"
chat TIMEOUT 5 "" $MODEM_INIT TIMEOUT 45 OK ""
if [ $? != 0 ]; then
    message "Failed to initialize modem"
    exit 1
fi

>/var/log/connect

# Dial the remote system.

message "Dialing $PHONE_NUMBER"
chat -r /var/log/connect \
        REPORT CONNECT \
        TIMEOUT 45 \
        ABORT "NO CARRIER" \
        ABORT BUSY \
        ABORT "NO DIALTONE" \
        ABORT ERROR \
        "" ATDT$PHONE_NUMBER \
        CONNECT ""
case $? in
   0) message "$(cat /var/log/connect)";;
   1) message "Chat Error"; exit 1;;
   2) message "Chat Script Error"; exit 1;;
   3) message "Chat Timeout"; exit 1;;
   4) message "No Carrier"; exit 1;;
   5) message "Busy"; exit 1;;
   6) message "No DialTone"; exit 1;;
   7) message "Modem Error"; exit 1;;
   *)
esac

# We're connected try to log in.
message "Loggin in"
chat \
        TIMEOUT 5 \
        $USER_CHAT_SEQ \\q$USER_NAME \
        TIMEOUT 45 \
        $PASSWD_CHAT_SEQ $PASSWORD
if [ $? != 0 ]; then
    message "Failed to log in"
    exit 1
fi

# We logged in, try to start up the protocol (provided that the
# user has specified how to do this)

if [ $PROMPT ]; then
    message "Starting Comm Protocol"
    chat TIMEOUT 15 $PROMPT $PROTOCOL_START
    if [ $? != 0 ]; then
        message "Prompt not received"
        exit 1
    fi
fi

if [ $START_ACK ]; then
    chat TIMEOUT 15 $START_ACK ""
    if [ $? != 0 ]; then
        message "Failed to start Protocol"
        exit 1
    fi
fi

# Success!
message "Protocol started"

        I am using the supplied diald.config file:

fifo /etc/diald/diald.ctl
mode ppp
connect "sh /etc/ppp/connect"
device /dev/ttyS0
speed 115200
modem
lock
crtscts
local 192.168.0.1
remote 192.168.0.2
dynamic
defaultroute
pppd-options asyncmap 0
include /usr/lib/diald/standard.filter

        Normally I can start my internet connection without any trouble using
"ifup ppp0" but this didnt work when I put it into the connect line of
the diald.config file.  (I put the path in as well -
"/etc/sysconfig/network-scripts/ifup ppp0")

        One thing Ive noticed is that when I connect this way (ifup ppp0) the
addresses of my ISP's nameservers in /etc/resolv.config change.  They
should be 203.2.193.124 and 203.2.192.124 but they change to:

search .
nameserver 198.6.1.98
nameserver 198.6.100.98

        Does this have anything to do with it?
        
        In summary, can anyone see where I've gone wrong?  Is there some way to
use my existing 'ifup ppp0' routine with diald?  How does Diald know
where my ISP's nameservers are, and why do they change with ifup ppp0? 
Help..!

Thank you in advance..

        Bob

-
To unsubscribe from this list: send the line "unsubscribe linux-diald" in
the body of a message to [EMAIL PROTECTED]

Reply via email to