La scheda utilizzata
è una Teles S0 16.3 interna non pnp con i settaggi di default
(IRQ=10 e IO=180).
La distribuzione utilizzata
è la RedHat 5.0 con kernel 2.1.59, non chiedetemi perchè'
prorio questo kernel ;-)!
Ho ricompilato il kernel
attivando il supporto per il modulo Hisax ed in particolare ho usato i
seguenti parametri:
CONFIG_ISDN
<M>
CONFIG_ISDN_DRV_HISAX
<M>
CONFIG_HISAX_16_3
<Y>
CONFIG_EURO
<Y>
Poi ho settato <Yes>
a:
CONFIG_ISDN_PPP
CONFIG_ISDN_PPP_VJ
CONFIG_ISDN_PPP_MPP
CONFIG_ISDN_AUDIO
Ho installato i pacchetti
(rpm):
-
isdn4k-utils (ver 2.1.b1)
-
isdn4net
Quest'ultimo fornisce
un po' si script utili per il caricamento dei moduli "isdn4linux" (in /etc/rc.d/init).
Esso carica i moduli in base al file di configurazione isdn
(in /etc/sysconfig ...).
Nella file di configurazione
isdn
settare corretamente IRQ (normalmente 10) e
IO (normalmente 0x180) oltre
ad altri parametri relativi alla linea ISDN in Italia.
Questi pacchetti sono disponibili
nella directory contrib
di RedHat o e possibile cercarli sul megadatabase Rufus della W3C: http://rufus.w3.org/linux/RPM/
Gli script per la connessioni
li ho costruiti a partire dai file
rc.isdn.syncppp
e rc.isdn.syncppp.1
forniti nel pacchetto isdn4k-utils (usr/doc/ ...)
Lo script che uso per la
connessione e il seguente (sostituire opportunamente i propri numeri di
telefono e indirizzi IP):
----------------------------------------------------------
#!/bin/sh
#
# BE SURE TO EDIT THIS
FILE BEFORE USING IT !!!!!
# this is an example
script to use with isdn4linux
# compiled into kernel
#
# don't forget to edit
the files
#
/etc/ppp/pap-secrets or
#
/etc/ppp/chap-secrets
#
LOCAL_NUMBER="99999999"
REMOTE_NUMBER="13246789"
LOCAL_IP="0.0.0.0"
REMOTE_IP="194.243.154.62"
DEVICE="ippp0"
SYSPATH="/sbin"
TELESCTRL="$SYSPATH/telesctrl"
ISDNCTRL="$SYSPATH/isdnctrl"
$TELESCTRL Teles163 1
4 # enable verbose '4' mode
echo "****** Starting
ISDN ... "
$ISDNCTRL addif
$DEVICE
# Create new interface 'DEVICE'
# $ISDNCTRL addphone
$DEVICE in $REMOTE_NUMBER # Set incoming phone-number
$ISDNCTRL addphone $DEVICE
out $REMOTE_NUMBER # Set outgoung phone-number
$ISDNCTRL eaz $DEVICE
$LOCAL_NUMBER
# Set local EAZ ..
$ISDNCTRL l2_prot $DEVICE
hdlc # for sync PPP: set Level 2 to HDLC
$ISDNCTRL l3_prot $DEVICE
trans # not really necessary, 'trans' is default
$ISDNCTRL encap $DEVICE
syncppp # encap the IP Pakets in PPP frames
$ISDNCTRL huptimeout
$DEVICE 600 # Hangup-Timeout is 600 sec.
$ISDNCTRL chargehup
$DEVICE off # Hangup before next Charge-Info
$ISDNCTRL secure $DEVICE
on # Accept only configured
phone-number
$SYSPATH/ifconfig $DEVICE
$LOCAL_IP pointopoint $REMOTE_IP metric 1
$SYSPATH/route add default
dev $DEVICE
# start the (new) deamon:
# -----------------------
# 'user myusername'
: set username to get the right password from the
#
pap/chap-secrets file(s)
# ipcp-accept-local
ipcp-accept-remote : accept every IP address
# -vjccomp -ac -pc
: _my_ remote side doesn't support this, so disable it
# -bsdcomp : i4l-syncPPP
driver doesn't support bsd-compression
# debug
: enable debugging, WARNING: ipppd will also log your password
# useifip : get
IP address information form the network interface
# /dev/ippp0 /dev/ippp1
/dev/ippp2 : connect to 3 devices for max.
#
# Se e' gia attivo il
demone non lo rilancia
if [ ! -e /var/run/ipppd.pid
]; then
echo "****** Starting
ipppd ..."
$SYSPATH/ipppd /dev/ippp0
&
fi
----------------------------------------------------------
Questo script usa il file
ioptions
in /etc/ppp e il file pap-secrets:
Il file ioptions:
----------------------------------------------------------
user myuser
ipcp-accept-local
ipcp-accept-remote
noipdefault
defaultroute
-vj
#-vjccomp
#-ac
#-pc
-detach
mtu 1500
mru 1500
#-bsdcomp
debug
----------------------------------------------------------
Per disconnettermi uso il
seguente script:
----------------------------------------------------------
#!/bin/sh
#
# BE SURE TO EDIT THIS
FILE BEFORE USING IT !!!!!
# this is an example
script to use with isdn4linux
# compiled into kernel
#
# don't forget to edit
the files
#
/etc/ppp/pap-secrets or
#
/etc/ppp/chap-secrets
#
LOCAL_NUMBER="99999999"
#
REMOTE_NUMBER="123456789"
LOCAL_IP="0.0.0.0"
REMOTE_IP="194.243.154.62"
DEVICE="ippp0"
SYSPATH="/sbin"
TELESCTRL="$SYSPATH/telesctrl"
ISDNCTRL="$SYSPATH/isdnctrl"
VERSION=`cat /proc/version
| awk '{ print $3 }' `
# when setting the environment
variable MODPATH you
# can omit the full
path.
echo "****** Stop ISDN
..."
$SYSPATH/ifconfig $DEVICE
down
$ISDNCTRL delif
$DEVICE
----------------------------------------------------------
Installando i pacchetti isdn4linux
si ha disponibile, sotto X, l'utility "isdnbutton" con il semaforo rosso
quando al scheda non e startata, giallo se la scheda e attiva e verde se
la connessione e attiva.