FreeBSD 6.1 und ISDN

Breiti

Well-Known Member
hallo,
ich habe mich jetzt den ganzen nachmittag damit beschaeftigt ISDN für AVM Fritz PCI
in meinem kernel zu packen. immer schlug make buildkernel fehl. hat jemand eine
verlaessliche quelle zur installation von ISDN mit FreeBSd 6.x ?

gruss Breiti
 
Wenn du Hilfe moechtest, dann kannst du auch die Fehlerausgabe hier posten. Da das Problem augenscheinlich nicht am ISDN liegt, sondern am Kernel kompilieren bzw. den eingetragenen Optionen.

Trotzdem sollen hier die geforderten Verweise gegeben werden. Auf die Schnelle hab' ich hier im Forum ein Howto[1] gefunden. Ausserdem existiert eine FreeBSD-ISDN Mailinglist[2]. Auch das Handbuch[3] soll, eigentlich an erster Stelle, hier genannt werden.

[1] http://www.bsdforen.de/showthread.php?t=3467
[2] http://lists.freebsd.org/mailman/listinfo/freebsd-isdn
[3] http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/network-isdn.html bzw. http://people.freebsd.org/~hm/
 
danke schonmal fuer die antworten, natuerlich habe ich das handbuch eingesehen und
diverse webseiten über google bescht. dabei aber eher den eindruck gewonnen das die
meisten der hits die ich hatte schon jahre zuruck liegen und sich gerademal bis FreeBSD 5
mit dem thema befassen. hier also meine kernel configuration, nur der ISDN teil als
post und das ergebniss von male buildworld.

ich möchte mit der karte eine anrufbeantworter realisieren und die entgangenen anrufe in einer mysql datenbank speichern. keine enwahl ins internet damit realisieren.

PHP:
# AVM ISDN Fritz Card PCI
options         NETGRAPH
device          ifpi
device          ifpi2
device          "i4bq921"
device          "i4bq931"
device          "i4b"
device          "i4btrc"
device          "i4bctl"
device          "i4brbch"
device          "i4btel"

PHP:
cc -c -O2 -pipe -fno-strict-aliasing  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter -I/usr/src/sys/contrib/pf -I/usr/src/sys/contrib/dev/ath -I/usr/src/sys/contrib/dev/ath/freebsd -I/usr/src/sys/contrib/ngatm -I/usr/src/sys/dev/twa -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Werror  /usr/src/sys/i4b/driver/i4b_rbch.c
/usr/src/sys/i4b/driver/i4b_rbch.c:64: error: `NI4BRBCH' undeclared here (not in a function)
/usr/src/sys/i4b/driver/i4b_rbch.c:64: error: storage size of `rbch_drvr_linktab' isn't known
/usr/src/sys/i4b/driver/i4b_rbch.c:65: error: storage size of `isdn_linktab' isn't known
/usr/src/sys/i4b/driver/i4b_rbch.c:98: error: storage size of `rbch_softc' isn't known
/usr/src/sys/i4b/driver/i4b_rbch.c:64: warning: 'rbch_drvr_linktab' defined but not used
/usr/src/sys/i4b/driver/i4b_rbch.c:65: warning: 'isdn_linktab' defined but not used
/usr/src/sys/i4b/driver/i4b_rbch.c:98: warning: 'rbch_softc' defined but not used
 
isdn on FreeBSD6.1

Hallo,

hier mein ISDN-Teil aus der Kernel.cfg

#ISDN
device ifpnp
device ifpi
device ifpi2
device i4bq921
device i4bq931
device i4b
device i4btrc
options NI4BTRC=4
device i4bctl
device i4brbch
options NI4BRBCH=4
device i4btel
options NI4BTEL=2
device i4bipr
options NI4BIPR=4444
options IPR_VJ
options IPR_LOG=32
device i4bisppp
options NI4BISPPP=4
 
ahhh, das comilieren klappt schonmal, samstag werde ich das ganze dann nochmal testen. kann den rechner nicht neu starten im moment.

breiti
 
oki, ich konnte es nicht lassen und habe meinen kleinen gerade neu gestartet.
die karte wird erkannt, wunderbar :) nun habe ich also die isdnd.rc in /etc/isdn
nach einigem lesen entsprechend angepasst.

PHP:
system
ratesfile               = /etc/isdn/isdnd.rates
useacctfile             = on
acctfile                = /var/log/isdnd.acct
acctall                 = on
entry                           
name                    = I4BTEL        # name for reference
usrdevicename           = tel           # ipr, tel, rbch
usrdeviceunit           = 0             # unit number
isdncontroller          = 0             # controller to use or -1 to use any
isdnchannel             = -1            # channel (1/2) to use or 0 or -1 for any
                                        # numbers used to verify at DIAL IN
local-phone-incoming    = 396692        # we take calls for this local number
remote-phone-incoming   = *             # we take calls from this remote machine
local-phone-dialout     = 396693        # Durch richtige Telefonnummer ersetzen
remote-phone-dialout    = 396693        # ppp(8) will override this
dialin-reaction         = ignore        # accept, reject, ignore, answer
answerprog              = answer        # program to use
b1protocol              = raw           # hdlc, raw
idletime-incoming       = 2

dann /etc/rc.d/isdn start

der daemon laeuft. wenn ich jetzt anrufe vom handy aus, bekomme ich in var/log/messeges
folgende fehler

PHP:
Nov  3 21:17:37 proxy kernel: i4b-L1 ifpi_isac_irq: unit 0: CRC error
Nov  3 21:17:37 proxy kernel: i4b-L1 ifpi_isac_irq: unit 0: CRC error
Nov  3 21:17:37 proxy kernel: i4b-L1 ifpi_isac_irq: unit 0: Receive Aborted error
Nov  3 21:17:57 proxy kernel: i4b-L1 ifpi_isac_irq: RPF, input buffer overflow!
Nov  3 21:17:58 proxy kernel: i4b-L1 ifpi_isac_irq: RPF, input buffer overflow!

ich habe eine AVM Fritz!Card PCI

wer hat unter 6.1 eine anruferkennung und anrufbeantworter laufen und kann weiter helfen ?

google verrät mir nicht viel.
 
so, 1 flasche maria, /usr/ports/sktools/man2brain und keinen schlaf haben die
loesung gebracht. die irq fehler kommen zwar abundan aber scheinen mit ruhigem
gewissen ignorierbar zu sein :)

lösung :

in kernel config
PHP:
# AVM ISDN Fritz Card PCI / ISDN4BSD
options AVM_A1
device          ifpi
device          "i4bcapi"

# protocol stack
device          "i4bq921"
device          "i4bq931"
device          "i4b"

# control devices
device          "i4btrc"
options         NI4BTRC=2
device          "i4bctl"
device          "i4brbch"
options         NI4BRBCH=2
device          "i4btel"
options         NI4BTEL=2

anschliessend isdnd.rc

PHP:
system
ratesfile               = /etc/isdn/isdnd.rates
useacctfile             = on
acctfile                = /var/log/isdnd.acct
acctall                 = on
regexpr                 = "incoming call" # wir starten ein Script, wenn
regprog                 = "incomingcall" # jemand anruft 
entry                           
name                    = I4BTEL        # name for reference
usrdevicename           = tel           # ipr, tel, rbch
usrdeviceunit           = 0             # unit number
isdncontroller          = 0             # controller to use or -1 to use any
isdnchannel             = -1            # channel (1/2) to use or 0 or -1 for any
                                        # numbers used to verify at DIAL IN
local-phone-incoming    = 396692        # we take calls for this local number
remote-phone-incoming   = *             # we take calls from this remote machine
local-phone-dialout     = 396692        # Durch richtige Telefonnummer ersetzen
remote-phone-dialout    = 396692        # ppp(8) will override this
dialin-reaction         = ignore        # accept, reject, ignore, answer
answerprog              = isdntel        # program to use
direction               = in            # only incoming is possible
b1protocol              = raw           # hdlc, raw


jetzt werden schonmal alle anrufe ueber das incommingcall script gewrapped.

gruss Breiti
 
Zurück
Oben