Newsgroup: it.comp.os.linux.sys
Titolo: Problema DIALD (ce riprovo:))

Uso una connessione PPP con TIN (questo è poco importante).
DIALD, per funzionare con PPP usa ugualmente SLIP all'inizio.
Inizialmente preimposta un device SL0 come gateway predefinito e su
questo controlla l'eventuale afflusso di pacchetti per aprire un
collegamento.
Il manuale dice che è tutto normale e che non appena la connessione
viene stabilita il gateway predefinito viene automaticamente scambiato
con PPP0.
In realtà questo non avviene .... e piuttosto ...
... per farlo funzionare ho dovuto aggiungere una riga al mio script di
connessione che prima far partire PPPD butta giù DIALD, ed una riga su
IP-DOWN che lo ritira su qualndo la connesione è terminata.
Il problema è dovuto al fatto che se il server PPP al quale cerco di
collegarmi trova il mio gateway remoto preimpostato su SL0 (con tanto di
IP, perché DIALD lo vuole per forza) mi manda giù la connessione e su
"/var/log/messages" trovo all'incirca qualcosa come: peers authecation
refused .... o giù di lì.
Comunque: buttando giù SLIP e il gateway remoto su SL0 per tempo tutto
funziona.
Funziona ma non mi piace.
Non mi piace perché se faccio (esempio) una chiamata ICMP o UDP che sia,
se DIALD è su (ed il gateway fittizzio anche) allora lui resta in attesa
della connessione per restituire il primo responso, ma se butto giù
diald, mi compare subito il messagio: destination unreacheble, host
unkonown e così via ....
Ho provato (quasi) tutte le opzioni possibili.
Se avete una dritta aiutatemi ...
-- 
Ciao ....
           Massimiliano ADAMO
         E-mail: 
maxa...@tin.it
http://web.tiscalinet.it/maxadamo/index.htm

"/var/log/messages" trovo all'incirca qualcosa come: peers authecation
Uso tin e non ho problemi.
Penso che "peer auth refused" non c'entri nulla col gateway.
Piuttosto prova a aumentare debug diald cosě vedi tutto ciň che fa con
route al momento della connessione.
Dici "....dovuto aggiungere una riga al mio script di connessione che
prima far partire PPPD...", se usi diald non devi avere alcuno script
che fa partire pppd.
Controlla di non avere opzioni pppd proibite in /etc/ppp/options
/etc/ppp/options.ttySX, chat script.
Vedi se hai messo "name" in pppd-options in diald.conf.
-- 
giu...@pobox.com

 route al momento della connessione.
Vedi un po' che te ne pare ....
Questo č diald.conf:
fifo /etc/diald/diald.ctl
mode ppp
connect "sh ppp-go -c"
device /dev/ttyS0
speed 115200
modem
lock
crtscts
local 192.168.1.10
remote 192.168.1.11 
dynamic
defaultroute
include /usr/lib/diald/standard.filter
Questo č invece /etc/ppp/options:
lock
defaultroute
modem
/dev/ttyS0
115200
crtscts
proxyarp
idle 360
debug
user "smangogn"
hide-password


hide-password
Ci sono molti problemi...
=== man diald:
WARNING:  Note  that  some pppd commands
              should  not  be  specified,   not   even   in   the
              /etc/ppp/options  file, because they will interfere
              with the proper operation of diald.  In  particular
              you  should  not  specify  the tty device, the baud
              rate, nor any  of  the  options  crtscts,  xonxoff,
              -crtscts,  defaultroute,  lock,  netmask,  -detach,
              modem, local, mtu and proxyarp.  Use the equivalent
              diald commands to control these pppd settings.
===
Le opzioni per la connessione semplice pppd (senza diald) mettile in un
file di config che solo pppd possa vedere.
In pratica lascia vuoti options e options.ttyS0.
-- 
giu...@pobox.com

Ce l'ho fatta !!!
Senza DIALD ma ce l'ho fatta.
Bastava aggiungere le opzioni:
"demand" e "0.0.0.0:0.0.0.0"
Sono stato un po' fortunato. 0.0.0.0 l'ho messo solo per provare. Viene
interpretato come dinamico e quando fai ROUTE l'indirizzo fittizio è un
altro. Ovviamente funziona sia con ICMP che UDP.
L'unica differenza consiste nella mancanza di tutte le regole di
filtraggio stabilite in /usr/lib/diald/standard.filter ma credo che
potrei attivarle in altra maniera.
Dopo che hai dato un'occhiata, alla luce di tutto questo ti chiedo: "a
che serve DIALD ?"
ti ringrazio comunque per i suggerimenti.
Guarda qui:
---------------------------------------------
Questo si chiama /etc/ppp/options.mio
lock
demand (questo stabilisce la funzione on demand)
0.0.0.0:0.0.0.0 (questo dice che l'IP è dinamico)
ktune (questo credo ci voglia anche)
defaultroute
modem
/dev/ttyS0
115200
crtscts
debug
kdebug 7
proxyarp
idle 360
user "pippo"
hide-password
--------------------------------------------------------
Questo è sia pap-secrets che chap-secrets
# PAP/CHAP authentication file.
# This file should have a permission of 600.
# chmod 600 /etc/ppp/pap-secrets
# Username      Server      Password      IP addresses
"pippo"   *   "pluto"   *
---------------------------------------
Questa è la tabella di routing prima della connessione.
DA NOTARE il 10.112.112.112 che lui usa in luogo del 0.0.0.0 che avevo
inserito :)
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use
Iface
192.168.1.1     *               255.255.255.255 UH    0      0        0
eth0
10.112.112.112  *               255.255.255.255 UH    0      0        0
ppp0
192.168.1.0     192.168.1.1     255.255.255.0   UG    0      0        0
eth0
192.168.1.0     *               255.255.255.0   U     0      0        0
eth0
127.0.0.0       *               255.0.0.0       U     0      0        0
lo
default         10.112.112.112  0.0.0.0         UG    0      0        0
ppp0
----------------------------------------
Questo è uno pseudo script pre-impostato che ho modificato ad hoc.
#!/bin/sh
#
killall -9 pppd 2>/dev/null
rm -f /var/lock/LCK..* /var/run/ppp*.pid
(/usr/sbin/pppd file /etc/ppp/options.mio connect "/usr/sbin/chat -v -r
/var/log/report-chat -f
/etc/ppp/ppp.chatscript") || exit 1
echo "Avvio di PPP-Daemon ..."
echo "La connessione verra' attivata solo in presenza di traffico su
PPP0 ..."
exit 0
------------------------------------------
Una volta che la connession è avvenuta la tabella di routing ovviamente
cambia con il nuovo IP assegnato ....

che serve DIALD ?"
Io ho iniziato a usare diald quando pppd non faceva demand.
Continuo ad usarlo perché non so se pppd fa tutte le cose che fa diald,
tipo:
- dare un peso diverso ai diversi pacchetti: se un utente fa www gli do
3 minuti; se fetchmail mi scarica posta automaticamente ogni 10 min gli
do 20 sec. Do 45 sec a ftp, etc etc
- il log mostra chiaramente sempre il pacchetto che ha fatto salire la
connessione.
- posso dire in modo semplice di forzare/bloccare la connessione
- posso mettere regole sui timeout in base alle ore del giorno: tariffa
+ bassa --> timeout più bassi.
- posso dire che i pacchetti che arrivano da alcune macchine possono
"usare" la connessione ma non provocarla; posso dire se contribuiscono a
tenerla sù o meno. Con molti utenti a volte succede che uno installa un
prog che continua a tentare connessione, lo blocco subito senza bloccare
altri.
- una volta installato diald, è semplice installare dialmon per
monitorarlo dai pc win.
pppd ha opzioni di filtro, che lo renderebbero quasi del tutto simile a
diald, ma dice che funzionano solo su NetBSD.
-- 
giu...@pobox.com

 diald, ma dice che funzionano solo su NetBSD.
E questo è vero; lo avevo letto anch'io.
Ma tu dici che un risultato che ci assomigli si potrebbe ottenere usando
ipchain e ipfwadmn?
Non sono ancora molto pratico ...
Due note un po' strane:
1) Quando cade la connessione, nella tabella di routing ti mantiene
l'ultimo IP utilizzato. Comunque non crea problema al nuovo tentativo
viene aggiornato.
2) La man-page di PPPD dice che in presenza di server che utilizzano il
metodo dell'assegnazione dinamica dell'IP (quasi alla fine della
man-page) di non usare la funzione demand.
E comunque il fatto di usare 0.0.0.0:0.0.0.0 per dire che vuoi
l'indirizzo dinamico non viene menzionato per nulla ed io l'ho usato
solo perché sapevo che l'avevo trovato in non so quale script ....
Infine, visto che usi anche tu TIN, funzionerà mai l'opzione (nel file
/etc/ppp/options), USEPEERDNS, al posto degli indirizzi in resolv.conf ?
Basta provare ... dirai tu :)


Basta provare ... dirai tu :)
Esatto, basta provare.
Comunque tin quando ti abboni ti dice di segnarti i suoi dns (se non ha
cambiato di recente), mentre mi pare che libero ti dica espressamente di
lasciare dns vuoto; quindi con libero di sicuro andrà, con tin forse.
-- 
giu...@pobox.com

On Thu, 16 Dec 1999 20:43:14 +0100, Max_Adamo wrote
| Dopo che hai dato un'occhiata, alla luce di tutto questo ti chiedo: "a
| che serve DIALD ?"
Serviva prima che il demone ppp ne inglobasse alcune funzioni..
Va da se che in molti altri casi serve ancora...
-- 
 ____      ___              | 3/4 Romulan, 1/4 Vorta. | Ho imparato qualcosa
/_  / ___ / _/______ ___ _  | Stirred, not Shaked.    |  - Kintaro Oe	
 / /_/ -_) _/ __/ _ `/  ' \ | 
http://zefram.8m.com
    | Lasciate che i concetti 
/___/\__/_//_/  \_,_/_/_/_/ | 
zef...@iol.it
	      | fluiscano liberi - ZC
	      - Zefram is on a K6-166 - RH6.0 - Kernel 2.2.12 -

 Va da se che in molti altri casi serve ancora...
invece va da se che non capisco il motivo per cui alcune funzioni
sarebbero limitate solo a NetBSD ....
--
ciao,
Massimiliano ADAMO.