Next round of fixing all kinds of spelling mistakes.
[dragonfly.git] / share / examples / isdn / FAQ
1 -------------------------------------------------------------------------------
2
3                    ISDN4BSD Frequently Asked Questions
4                    ===================================
5
6                 last edit-date: [Wed Nov  1 15:08:03 2000]
7
8  $FreeBSD: src/share/examples/isdn/FAQ,v 1.6.2.2 2002/08/07 10:47:48 blackend Exp $
9  $DragonFly: src/share/examples/isdn/FAQ,v 1.5 2007/05/17 08:19:01 swildner Exp $
10
11 --------------------------------------------------------------------------------
12
13 Contents:
14 =========
15
16          1. How do I get started with synchronous PPP (sPPP) ?
17          2. does anyone know a software that can receive/send fax over ISDN ?
18          3. does i4b callback only work with setups where the remote end
19                 returns a busy ?
20          4. trouble with kernel options IPFIREWALL and IPDIVERT and natd
21          5. I want to use -r with isdnd but it does not work
22          6. How do I configure and run the answering machine ?
23          7. Teles S0/16.3 ... unknown ?
24          8. How do i integrate a new lowlevel driver into i4b ?
25          9. Why it always says "no Space in TX FIFO - State F4 awaiting" ?
26         10. Incoming alert - what does it mean ?
27         11. How do i change irq's on my teles 16.3 card ?
28         12. NL: i'm getting CAUSE 100 or CAUSE 101 when dialling out
29         14. I'm using sPPP. I can connect to my ISP but no TCP/IP services work. HELP!
30         15. i4b 0.80.00: problems with AVM Fritz PCI
31         16. How do i setup logfile rotation for isdnd ?
32         17. How do i setup dialin from Windows NT RAS to i4b ?
33         18. How can I convert my old .g711a files to the new format?
34         19. I have lots of old .g711a files to convert what can I do?
35         20. How can I convert the .al files to Sun/NeXT .au/.snd/.vox files?
36         21. Help, isdn4bsd 0.82 fails to probe my Elsa PCC-16!
37         22. How do i enable and configure userland PPP with i4b ?
38         23. What is the procedure to install a new i4b on FreeBSD 3.x ?
39         24. Why do i get "ifconfig: ioctl (SIOCAIFADDR): file exists" ?
40         25. How to properly operate isdnd's fullscreen output in a 132x60 vty
41         26. NetBSD: i see isic0 while booting but I cannot access my Fritz!Card
42         27. i4b_pci_attach: pci_map_port 1 failed! What does this mean ?
43         28. What is: i4b-L2 i4b_rxd_ack: ((N(R)-1)=35) != (UA=36) !!!
44         29. Why does isdnd take up 95% CPU time ?
45
46
47 1. How do I get started with synchronous PPP (sPPP) ?
48 ================================================================================
49
50   Of course you first have to have sPPP interfaces in your kernel. If
51   you installed everything using FreeBSD/install.sh then the correct
52   entries should have been automatically made in /sys/conf/files for you.
53   For NetBSD it isn't quite as simple since NetBSD/install-netbsd.sh does
54   not do it for you.
55
56   Then all you need to do is put an entry like this:
57
58         device   "i4bisppp"      4
59
60   into your kernel configuration file (if it's not already there) and
61   generate and boot the new kernel. The above line will give you 4
62   sPPP interfaces - isp0 to isp3.
63
64   Then just modify /etc/isdn/isdnd.rc (see the example in etc-isdn/isdnd.rc)
65   to suit your needs (telephone numbers, etc).
66
67   The next step is to read the ispppcontrol man page and then to look at
68   etc/rc.isdn-PPP. ispppcontrol is a very important component in getting
69   sPPP working correctly and the ispppcontrol lines in your /etc/rc.isdn
70   must be correct.
71
72   In my experience there are two things which can cause problems:
73
74   1) the authproto line has to agree with what your ISP desires. In
75      general I've found that it's best to have something like this -
76
77         ispppcontrol <interface> myauthproto={pap,chap} myauthname=<AuthName>
78                 myauthsecret=<AuthSecret> hisauthproto=none callin
79
80      The "hisauthproto=none" is usually needed because the ISP does not want
81      to authorise himself to you; he expects you to authorize yourself to him !
82      I once forgot to set hisauthproto and it took me quite a while to figure
83      out why I couldn't connect.
84
85   2) the IP address at your ISP's end must be correct.
86
87   How can I find out (1) whether my ISP wants pap or chap and (2) what his
88   IP address is ? you might ask. Generally, your ISP should have provide
89   this information to you. But, if he didn't, or you've mislayed the
90   documentation (as I did), there's still hope.
91
92   Fortunately, J"org Wunsch implemented the sPPP kernel code so that it
93   provides all the information required if the interface is configured
94   with the debug flag set (e.g. ``ifconfig isp0 debug''). It's just a
95   little cryptic.
96
97   By the way, I suggest turning the debug flag on until you have things
98   working and then turning it off. The debug output is rather voluminous
99   and could fill up your /var partition, otherwise.
100
101   The debug output will appear on the console and also be logged to
102   /var/log/messages (under FreeBSD) unless you changed /etc/syslog.conf.
103
104   A. How to figure out the authproto
105   ----------------------------------
106
107   Here is an example where I configured isp0 with myauthproto=pap, my
108   ISP wanted chap, but was willing to accept pap:
109
110   /kernel: isp0: lcp up(starting)
111   /kernel: isp0: lcp output <conf-req id=0x7 len=10 5-6-34-e4-30-5a>
112   /kernel: isp0: lcp input(req-sent): <conf-req id=0x1 len=30 0-4-0-0-1-4-5-
113   f4-3-5-c2-23-5-11-4-5-f4-13-9-3-0-c0-7b-6e-fe-b5>
114          ^^^^^
115              |___ c223 is chap, it's what the ISP wants to use
116
117   /kernel: isp0: lcp parse opts:  0x0 [rej]  mru  auth-proto  0x11 [rej]
118   x13 [rej]  send conf-rej (I didn't agree)
119   /kernel: isp0: lcp output <conf-rej id=0x1 len=21 0-4-0-0-11-4-5-f4-13-9-3-
120   0-c0-7b-6e-fe-b5>
121   /kernel: isp0: lcp input(req-sent): <conf-ack id=0x7 len=10 5-6-34-e4-30-5a>
122   /kernel: isp0: lcp input(ack-rcvd): <conf-req id=0x2 len=13 1-4-5-f4-3-5-
123   c2-23-5>
124   /kernel: isp0: lcp parse opts:  mru  auth-proto
125   /kernel: isp0: lcp parse opt values:  mru 1524  auth-proto [mine 0x0 !=
126   his chap]  send conf-nak (we want to use pap, not chap)
127   /kernel: isp0: lcp output <conf-nak id=0x2 len=9 3-5-c0-23-5>
128                                                          ^^^^^
129                                                              |___ c023 is pap
130
131   /kernel: isp0: lcp input(ack-rcvd): <conf-req id=0x3 len=12 1-4-5-f4-3-4-
132   c0-23> (he agrees to use pap)
133   /kernel: isp0: lcp parse opts:  mru  auth-proto
134   /kernel: isp0: lcp parse opt values:  mru 1524  auth-proto  send conf-ack
135   /kernel: isp0: lcp output <conf-ack id=0x3 len=12 1-4-5-f4-3-4-c0-23>
136                                         he agrees to use pap ___|^^^^^
137
138   so, if you have problems in the lcp phase, check which authentication method
139   your ISP wants to use. Usually chap is preferred, but pap will be accepted.
140
141   B. How to figure out the ISP's IP address
142   -----------------------------------------
143
144         ======================================================================
145
146         UPDATE NOTE (February 8, 1999):
147
148         Jan Riedinger writes:
149         ---------------------
150         >I further think Gary should mention
151         >in the FAQ in the section "B. How to figure out the ISP's IP address
152         >that it isn't normally necessary to do it because of the auto
153         >address negotiation.
154
155         Gary answers:
156         -------------
157         I think you're right. I wrote that stuff before the support for
158         negotiation of the IPS's address was added to if_spppsubr.c.
159
160         ======================================================================
161
162
163   I also intentionally configured the interface with the wrong address for
164   my ISP, like this:
165
166         ifconfig isp0 0.0.0.0 10.0.0.1 debug link1
167
168   this means that I want the ISP to assign me an address (the 0.0.0.0) and
169   that I expect him to use 10.0.0.1 (which is wrong). Here's the result:
170   (note that these addresses have been changed by me)
171
172   /kernel: isp0: phase network
173   /kernel: isp0: ipcp open(initial)
174   /kernel: isp0: ipcp up(starting)
175   /kernel: isp0: ipcp output <conf-req id=0x9 len=10 3-6-0-0-0-0>
176   /kernel: isp0: ipcp input(req-sent): <conf-req id=0x1 len=16 2-6-0-2d-f-1-
177   3-6-c-22-38-4e>
178   /kernel: isp0: ipcp parse opts:  compression [rej]  address  send conf-rej
179   /kernel: isp0: ipcp output <conf-rej id=0x1 len=10 2-6-0-2d-f-1>
180   /kernel: isp0: ipcp input(req-sent): <conf-nak id=0x9 len=10 3-6-c-22-38-4e>
181   /kernel: isp0: ipcp nak opts:  address [wantaddr 12.34.56.78] [agree]
182                                                      ^^^^^
183                                                          |___ he assigns me this
184
185   /kernel: isp0: ipcp output <conf-req id=0xa len=10 3-6-c3-b4-eb-63>
186   /kernel: isp0: ipcp input(req-sent): <conf-req id=0x2 len=10 3-6-62-4c-36-20>
187   /kernel: isp0: ipcp parse opts:  address
188   /kernel: isp0: ipcp parse opt values:  address 98.76.54.32 [not agreed]
189                                                    ^^^^^
190                                                         |_this is *his* address
191   send conf-nak
192   /kernel: isp0: ipcp output <conf-nak id=0x2 len=10 3-6-a-0-0-1>
193         I expect a different address and (incorrectly) reject what he wants.
194         I tell him that I expect 10.0.0.1. After this the connection fails.
195
196   Anyway, I now know that his address is really 98.76.54.32 and can use
197   it to correctly configure the interface.
198
199   With the correct IP address I shoulkd now be able to connect with no
200   problems. As stated above, the authorization protocol is normally not
201   so important since most ISPs are willing to use pap, although chap is
202   more secure. Generally, I'd try chap first and only switch to pap if
203   the ISP doesn't accept it.
204
205   (by Gary Jennejohn, Home - garyj@muc.de, Work - garyj@fkr.dec.com)
206
207
208
209 2. does anyone know a software that can receive/send fax over ISDN ?
210 ================================================================================
211
212  > Hi,
213  >
214  > does anyone know a software that can receive/send fax over ISDN? I am
215  > using a Fritz!Card, which can handle group 3 (analogous) fax, but I
216  > can't find any hint in the i4b software that this is supported in any
217  > way.
218
219 This is probably not implemented.
220
221 Implementing G3 fax in ISDN would mean simulating an analog modem
222 on the digital link. This means having to generate the right waveforms
223 for the modulated data, and receive analog data from the other end
224 which you had to run FFT analysis on and then interpret.
225
226 In addition you have to do this in realtime, to be able to deal with
227 the timing involved in the fax protocol, something neither
228 FreeBSD or Linux is good at in their native form..
229
230 A third point is that a software simulated faxmodem usually does not
231 work well. I tested Teles software faxmodem in Win-95 towards an Ericsson V34
232 HE modem, and was able to send faxes from the ISDN card at 4800 baud
233 only, and receive faxes ad 9600 baud only(!) (And it is not the
234 Ericsson modems fault, it works flawlessly towards other fax machines.)
235
236 My point is that the best thing to do is to use an ordinary faxmodem
237 to handle faxes with Hylafax of mgetty+sendfax or efax, or you may use
238 a combined ISDN card with an analog part.
239
240 Of course, if you are crazy enough, you may try to implement a
241 software simulated modem in e.g. RT-linux, or a similar realtime
242 extension for FreeBSD.
243
244 Best regards,
245 Nils Ulltveit-Moe       (etonumo@eto.ericsson.se)
246
247
248
249 3. does i4b callback only work with setups where the remote end returns a busy ?
250 ================================================================================
251
252 > Is my assumption correct, does i4b callback only work with setups where
253 > the remote end returns a busy on the dialin?
254
255 Yes - otherwise you'll pay for the connection, at least here in Germany.
256
257 Most routers support two kind of callbacks - the one that i4b supports
258 means: the called system rejects (so no charge for this connection), waits
259 a configurable time and the calls back. Information on who has called and
260 who is to be called back relies on the ISDN calling party number information
261 and stuff statically configured in the routers (or isnd's) configuration.
262
263 The other type of callback (not supported by i4b right now) means: the
264 called system accepts the connection and starts ppp negotiation. During this
265 the ppp's aggree to do a callback. Information on who called in and who is
266 going to be called back is subject to the authentication/negotiation already
267 done by the two ppp's. Then ppp closes down, the connection is disconnected
268 and the called system calls back.
269
270 I've never seen someone actually use the second type due to its obvious
271 disadvantages. It may be usefull if you travel, call in from an unknown
272 number and want to be called back at that number.
273
274 Martin Husemann <martin@rumolt.teuto.de>
275
276
277 4. trouble with kernel options IPFIREWALL and IPDIVERT and natd
278 ================================================================================
279
280    NOTICE: section obsolete since IP address changes are handled properly now!
281    ===========================================================================
282
283 This section
284 > Trying to build a router/gateway between my privat Ethernet and
285 > the Internet (via my ISP), I have problems with I4B or NAT (I think:).
286 >
287 > The 2.2.5-R kernel with options IPFIREWALL and IPDIVERT works fine
288 > with ISDN4BSD 0.50-alpha and firewall rule 'pass all from any to any'.
289 > However, when I add 'divert natd all from any to any via isp0'
290 > and start natd, name server lookups to the ISP's NS don't work.
291 >
292 > Also, ping and nslookup fails from any other internal host.
293
294 I had exactly the same problems. natd doesn't seem to get a message if
295 the IP address of the interface changes (after successful dialout).
296 I have to manually send a HUP signal to natd. I do this via the following
297 (ugly?!) hack:
298
299 I added the following two lines to the system section of isdnd.rc:
300 regexpr         = "call active"         # look for matches in log messages
301 regprog         = hup_natd              # execute program whan match is found
302
303 The small script "hup_natd", located in /etc/isdn, looks like:
304 #!/bin/sh
305 pid=`cat /var/run/natd.pid`
306 kill -HUP $pid
307 sleep 3
308 kill -HUP $pid
309 sleep 5
310 kill -HUP $pid
311
312 It looks ugly, but at least for me it works. The two sleeps are necessary
313 since I have to wait for ppp negotiation to complete (I don't get a message
314 from isdnd for that). If I'm lucky I have my connection after 3 seconds,
315 but 8 seconds should suffice for worst case (the first HUP without a sleep
316 sometimes even succeeded on an slow 486/33 with 8MB RAM, more HUPs don't hurt).
317
318 I'm really interested in some more elegant method.
319
320 Daniel          (rock@cs.uni-sb.de)
321
322
323 Arve Ronning replied:
324 =====================
325
326 > I had exactly the same problems. natd doesn't seem to get a message if
327 > the IP address of the interface changes (after successful dialout).
328
329 Well, it (natd) _does_ pick up the dynamic address supplied for isp0.
330 Try 'natd -verbose ...' and you'll see it. Otherwise I agree, there is
331 certainly something missing in natd's functionality, or maybe sppp
332 does'nt
333 supply what it's supposed to ??
334
335 > I have to manually send a HUP signal to natd. I do this via the following
336 > (ugly?!) hack:
337
338 YES...super; strange but correct. It works when I send natd a -HUP after
339 sppp is up. Thanx for the tip. However, natd must be -HUPed _every_ time
340 sppp has been down (idle timeout) and comes back up!
341
342 > I'm really interested in some more elegant method.
343
344 So am I, let's see what may come out of the discussion on the list.
345
346
347
348 5. I want to use -r with isdnd but it does not work
349 ================================================================================
350
351 > > Use isdnd in fullscreen mode.
352 >
353 > I tried that already, but got an error when I start isdnd that way:
354 >
355 >       /usr/local/bin/isdnd -d 0xf9 -f -r /dev/ttyv1 -t cons25
356 >
357 > root is logged in on device /dev/ttyv1, the message in /var/log/messages looks like:
358 >
359 > "May 22 11:52:28 asterix isdnd[4160]: ERR ERROR, cannot setup tty as controlling terminal: Operation not permitted"
360 >
361 > How can I give this device permission ?
362
363
364 In case you want to use switch "-r" noone else _must_ use the tty you redirect
365 to, you have to remove the getty from the virtual terminal in /etc/ttys and
366 restart the init process.
367
368
369 6. How do I configure and run the answering machine (under FreeBSD 2.2.x) ?
370 ================================================================================
371
372 The answering machine will be activated, when isdnd executes the program
373 that has been named in "/etc/isdn/isdnd.rc" in the section "telephone
374 answering" at entry "answerprog = ". If the program is executed
375 without a pathname, the answer program is expected in "/etc/isdn".
376 Examples of such programs can be found in "/etc/isdn/samples". They
377 are named:
378
379         "answer"        answers only, no recording
380         "record"        answers, and records messages
381         "tell"          the number of the calling person is told,
382                         no recording.
383         "tell-record"   calling number as answer, message is recorded
384         "isdntel.sh"    answers and records messages; by using the
385                         program "isdntel", one has the control over
386                         the recorded messages in the directory
387                         "/var/isdn". Look at "man isdntel" and
388                         "man isdntelctl".
389
390 These programs have to be altered to suit your needs. Unfortunately there
391 is no program with which you can record your answer message. This is not
392 really bad, because you only have to alter the above mentioned program
393 "record" a bit (comment out the "if ... fi" statements for the beep
394 and msg messages). You have to create the directory "/var/isdn" first in
395 order to record messages. They will be stored in this location then.
396
397 Stefan Herrmann <stefan@asterix.webaffairs.net>
398
399
400 7. Teles S0/16.3 ... unknown ?
401 ================================================================================
402 Hi,
403
404 I have just purchased a Teles S0/16.3 card.
405 But it's not what i4b is looking for .... I mean, it's a different card.
406
407 The docs  (and sources)of i4b talks about a Telws S0/16.3 card with 3
408 address: d80 etc.
409
410 This one (is not PnP) has jumpers for 0x180 0x280 0x380.
411
412 It has the SIemens Chips numbered PSB 21525 N (HSCX TE V2.1) and PSB
413 2186N V1.1 (ISAC-S TE).
414
415 I undestand that the 16.3c is not supported, but over this board is
416 written "TELES.S0/16.3 Revision 1.3"
417
418 Can anybody tell me what is this card ???
419
420 answer:
421 -------
422
423 It's not a different card. The jumpers are documented to select
424 IO-address 0x180, 0x280 or 0x380 in some TELES manuals.
425 But in fact they select the addresses 0xd80, 0xe80 or 0xf80.
426
427 Wolfgang
428
429
430 And an additional note from Poul-Henning Kamp:
431 ----------------------------------------------
432 There is an intricate story behind this, in short some ISA cards
433 only decode the first 10 address bits (0x3ff), which over the years
434 has resulted in a mutation the "de-facto-spec" such that addressbits
435 10-15 can be used by the card for selecting various stuff.  This
436 is extensively used on obscure cards with massive IO needs, sound,
437 IEEE488 and ISDN cards often belong in this category.
438
439
440
441 8. How do i integrate a new lowlevel driver into i4b ?
442 ================================================================================
443
444 1) Request a flag value from me
445 2) add an entry for the card into FreeBSD/CONFIG
446 3) add driver filename to FreeBSD/files.i386.cat
447 4) add entry for the card to FreeBSD/options.i386.cat
448 5) add support to print type of card to diehl/diehlctl/main.c
449 6) add support to print type of card to isdnd/support.c, name_of_controller()
450 7) place your file as named in 3) into directory layer1
451 8) add the flag value and function prototypes to layer1/i4b_l1.h
452 9) add support for NetBSD to layer1/isa_isic.c
453 10) add support for attach/probe to layer1/i4b_isic.c
454 11) add card type to machine/i4b_ioctl.h and update CARD_TYPEP_MAX
455 12) add an entry to the man page man/isic.4
456
457 Produce diffs (please use context diffs, flag "-c" for diff) and send them in.
458
459
460 9. Why it always says "no Space in TX FIFO - State F4 awaiting" ?
461 ================================================================================
462
463 as I wrote about two weeks ago I had massive problems concerning this
464 "no space in TX FIFO"-thing,
465
466 /kernel: i4b-L1-ph_data_req: No Space in TX FIFO, state = F4 Awaiting Signal
467
468 Even though I used a correctly recognized Teles S0/16.3 nonpnp isdncard,
469 nothing worked, errormsgs were flooding the console until I rebooted the box.
470
471 I decided to play around in the BIOS-settings, I first just set them all
472 to default, which didn't work, and then changed lots of things - unfortunately
473 I can't remember them. After about hundreds of trial 'n errors I gave up.
474
475 A few days ago I just made another attempt, booted the box and to my surprise
476 it all worked without the smallest problem, great data rates :)
477
478 I tried hard to found what the something special was I changed in the BIOS
479 settings, but I just couldnt get isdnd back to its stupid behaviour it
480 showed all the time before, but I would recommend everybody who has this
481 kind of problem to look into his BIOS.
482
483                         (from Meike Aulbach, strange@stoned.rhein-main.de)
484
485
486 i4b now works for me, I had a USB-device interfering on IRQ 9,
487 which was supposed to be only for my Creatix Card.
488 (NetBSD 1.3, Creatix)
489         
490 Strange enough, my DOS s0-test worked, are they just polling the card?
491         
492 Even when the testsoftware under DOS is working, don't be shure, that
493 your hw-setup is correct for xxx(x)BSD. Triplecheck all your IRQ and
494 enable and disable PNP to triple-verify. Even unconfigured devices can
495 block your card. .....
496         
497 And that took me more than 2 months to discover :-((((
498         
499                         (from Andreas Lohrum, andreas.lohrum@consol.de)
500
501
502 when i changed the mainboard of a box that ran i4b alright, i forgot to
503 set 'used by isa' in the pnp-bios-settings for the irq of my teles
504 isdn-card. because of that some pci-card got the interrupt that the
505 isdn-card should have gotten.
506 i then also got this error: 'No space in TX FIFO'.
507
508 The reason occurred to my rather quick, but i would think, that this would
509 be a nice hint in a FAQ :)
510
511                         (from Heiko Schaefer, hschaefer@fto.de)
512
513
514 after my huge amount of problems, Meike's hint (changing the
515 ISA/PNP-settings in the BIOS) finally fixed things.
516 I have only tried out this stuff with my Creatix-card, I'll check
517 out the PNP-stuff with my Sedlbauer-card soon too though.
518
519                         (from Harold Gutch, logix@foobar.franken.de)
520
521
522 10. Incoming alert - what does it mean ?
523 ================================================================================
524
525 In the log on vty6 (isdnd full screen log) I'm seeing
526
527 16.07.98 11:42:35 CHD 00001 rwth rate 90 sec/unit (rate)
528 16.07.98 11:42:35 CHD 00001 rwth dialing from 4191236 to 441291234
529 16.07.98 11:42:35 CHD 00001 rwth outgoing call proceeding (ctl 0, ch 0)
530 16.07.98 11:42:35 CHD 00001 rwth incoming alert  <<<<<<<<<<<<<<<
531 16.07.98 11:42:35 CHD 00001 rwth outgoing call active (ctl 0, ch 0)
532
533 What does this 'incoming alert' mean?
534
535
536 It means that it is "ringing" at the remote end.
537
538
539 11. How do i change irq's on my teles 16.3 card ?
540 ================================================================================
541
542 Question:
543
544 So how do you change irq's on your teles 16.3 card (under FBSD or DOS,
545 I don't have and don't want to have Windows running on that computer) ?
546
547 Answer:
548
549 The irq is configured into the card each time the driver under whatever
550 OS you currently boot initializes the card. Thus, change the irq for the
551 isic driver in your kernel config file to one of the supported (!) irqs
552 for this card (hint: read "man isic") which is currently unused in your
553 machine and generate a new kernel.
554
555
556 12. NL: i'm getting CAUSE 100 or CAUSE 101 when dialling out
557 ================================================================================
558
559 This one seems to be specific for the Netherlands. (-hm)
560
561 Question:
562
563 I'm trying to get i4b running on my new FreeBSD 2.2.8 system. The kernel
564 compiles smootly and everything is looking fine until it's time to dial.
565 I get the following error:
566
567 Feb 10 20:31:00 goofy isdnd[498]: CHD 00018 I4BPPP outgoing call disconnected (remote)
568 Feb 10 20:31:00 goofy isdnd[498]: CHD 00018 I4BPPP cause 101: Message not compatible with call state (Q.850)
569 Feb 10 20:31:00 goofy isdnd[498]: ERR set_channel_idle: controller [0], invalid channel [-1]!
570 Feb 10 20:31:00 goofy isdnd[498]: ERR msg_disconnect_ind: set_channel_idle failed!
571
572 The remote site is a Cisco 4000 type router.  I used debug to take a view at
573 the ISDN events on the router but according to that the call doesn't arrive
574 over there.
575
576 Same hardware has worked fine with FreeBSD 2.2.6/i4b 0.63.
577
578 Who knows what's wrong?
579
580
581 Answer:
582
583 This sounds very much like your local phone number or remote phone number
584 is configured wrongly... in the Netherlands you need to specify the number
585 EXCLUDING the city code... so if you live in Utrecht and your number is
586 0301234567 you specify 1234567.
587
588 I have seen this in several locations in the Netherlands for years, not
589 just with i4b, but also with differentt isdn equipment.. why? guess it
590 simply depends on which operator defines your line or what exchange it
591 is connected to... :P
592 What I found is that what solved this with other isdn hardware/software,
593 also solves it for i4b.. ie.. make sure the local phone number is
594 specified, and is specified without the city code.
595 The numbering plan should be 'unknown'
596
597 Anyway, it would be nice if the Dutch ptt (they are called KPN btw)
598 would tell us why this happens... they havent been able to tell me in the
599 past so I guess I give up on that, but if everyone finds out whats exactly
600 happening here I'd be interested to know... :)
601
602 List of number configurations that I have found to almost always work in
603 the Netherlands:
604
605 1. Local phone number:
606    usually your preferred msn without city code works here.
607    (ie, 1234567 if you would like to use 0201234567 for outgoing calls)
608    on some locations leaving it blank or defining it with the city code,
609    but without the leading 0 works as well here.
610
611 2. remote phone number:
612    When this is a 'local' call, don't specify city code.
613    For calling parties in other cities you of cource have to use the city
614    code... in general you can say that KPN only accepts the shortest
615    possible notation where it would still be clear who you want to call.
616
617 3. numbers for incoming call recognition:
618    KPN always specifies incoming caller ids with city code, but without
619    leading 0. so 0201234567 will be displayed as 201234567
620
621
622 Hope this helps.
623 Bart
624
625                         (from Bart van Leeuwen bart@ixori.demon.nl)
626
627
628 14. I'm using sPPP. I can connect to my ISP but no TCP/IP services work. HELP!
629 ==============================================================================
630
631 This is probably because you have the RFC1323 - TCP Extensions for High
632 Performance - support turned on and your ISP (or some router in the loop)
633 is discarding the extensions.
634
635 This can easily be checked by doing ``sysctl net.inet.tcp.rfc1323''. If the
636 result is 1, then the RFC1323 support is turned on.
637
638 Turn this off by doing ``sysctl net.inet.tcp.rfc1323=0'' (This is
639 called "net.inet.tcp.do_rfc1323" under BSD/OS).
640
641 For FreeBSD make sure that tcp_extension="NO" is in your /etc/rc.conf
642 (/etc/defaults/rc.conf with more recent versions of FreeBSD) and
643 /etc/rc.conf.local (in -STABLE and upcoming 3.2)
644
645 This may be different for NetBSD, OpenBSD and BSD/OS.
646
647 Martin Husemann writes:
648 -----------------------
649 This does apply for NetBSD too (and probably OpenBSD, since it's been
650 in NetBSD for a long time). The sysctl name is even compatible ;-) We don't
651 have a coresponding rc.conf entry, I do it in /etc/netstart.local.
652
653 I would suggest to set this to 0 on all machines routed over ISDN (not only
654 the router), as this "high speed options" in fact do slow down an ISDN link
655 by making VJ "compression" impossible - as far as I understood it. So there
656 should be a more general advice in the FAQ, not only "turn it off if it
657 doesn't work for you".
658
659 I've only seen the problems against old linux kernels (about two years ago),
660 are there still machines out there that have such a broken TCP/IP stack? We
661 should start to blame the vendors...
662
663         (by Gary Jennejohn, garyj@muc.de, with additions from
664          Harold Gutch <logix@foobar.franken.de> and
665          Martin Husemann <martin@rumolt.teuto.de>).
666
667
668 15. i4b 0.80.00: problems with AVM Fritz PCI
669 ==============================================================================
670
671 Question:
672 =========
673
674 The system is FreeBSD 3.1-RELEASE with i4b-00.80.00-beta-070599 [...]
675
676 I'm trying to compile a Kernel with support for my AVM Fritz!PCI card,
677 however, when compiling, it fails with the following error
678
679 sh ../../conf/newvers.sh GENERIC -DAVM_A1_PCI
680 cc -c -O -Wreturn-type -Wcomment -Wredundant-decls -Wimplicit  -Wnested-
681 externs
682 -Wstrict-prototypes -Wmissing-prototypes  -Wpointer-arith -Winline -
683 Wuninitializ
684 ed -Wformat -Wunused  -fformat-extensions -ansi  -nostdinc -I- -I. -I../..
685 -I/us
686 r/include -DAVM_A1_PCI -DKERNEL -DVM_STACK -include opt_global.h -elf
687 vers.c
688 loading kernel
689 i4b_isic_pci.o: In function `i4b_pci_attach':
690 i4b_isic_pci.o(.text+0x141): undefined reference to `avma1pp_map_int'
691 i4b_isic_pci.o: In function `isic_pciattach':
692 i4b_isic_pci.o(.text+0x196): undefined reference to `isic_attach_avma1pp'
693 *** Error code 1
694
695
696 Solution:
697 =========
698
699 > I have added
700 >
701 > i4b/layer1/i4b_avm_fritz_pci.c  optional        isic    device-driver
702 >
703 > and am recomiling at the moment, but given that it's a 486, it could take
704 > some time :-)
705
706 The problem appears to be that overinstall.sh does not update files.i386
707 and options.i386, and that AVM_A1_PCI was added after 3.1-RELEASE and
708 hence is not defined.
709
710 Manually editing these files (using install.sh as a guide) allows the
711 kernel to compile cleanly.
712
713
714 (from Rich Wood, rich@dynamite.org)
715
716
717 16. How do i setup logfile rotation for isdnd ?
718 ==============================================================================
719
720 For syslog-based logging:
721 -------------------------
722
723 man newsyslog (on FreeBSD)
724
725 You just add a line to /etc/newsyslog.conf:
726 /var/log/isdnd.log      664     7       100     *       Z
727 and you are all done...
728
729 (From: Andreas Haakh <ah@alvman.RoBIN.de>)
730
731
732 For logfile-based logging:
733 --------------------------
734
735 I suggest using newsyslog(8). Adding a line like:
736
737 /var/log/isdn.log               664  100   *    168   Z  /var/run/isdnd.pid
738
739 to /etc/newsyslog.conf will do the job (here: once a week, for the next
740 100 weeks) with compression of the old log.
741
742 This is the standard method for other daemons (apache, etc.).
743
744 (From: Udo Schweigert <ust@cert.siemens.de>)
745
746
747 17. How do i setup dialin from Windows NT RAS to i4b ?
748 ==============================================================================
749
750 > > I need to be able to dial in from a WNT box, equipped with TELES h/w and
751 > > s/w, to a FreeBSD machine. I don't have a clue what RAS is using.
752 > > I've tried
753 > > ipr and isp. The latter seems to work but is hanging on authentication. Is
754 > > there somebody who has done this before and is able to give me some hints?
755 >
756 > RAS is using PPP, so you should be able to get the isp interface working. I
757 > haven't done it so I can't give you concrete hints, but setting the isp
758 > interface to debug mode and posting the log (with passwords cut out or with
759 > test passwords) could help us to debug your setup.
760
761 I have several customers using sPPP do dial in from their W95/W98/WNT.
762
763 If You use FreeBSD_3.2-BETA with i4b-071 or older then you have to apply
764 the attached patch to /sys/net/if_spppsubr.c (patch -p0 <patchfile).
765
766 You need to configure isp0. See the manpages or the supplied templates in
767 the i4b-distribution. I would suggest to supply an ip-number for the
768 isp0-interface and force the clients to accept this value.
769 Don't forget to supply the relevant parameters to sppconfig_isp0 in
770 /etc/rc.conf...
771
772 On WNT you have to install the CAPI-2.0-drivers and Dialin-network.
773
774 Create a new entry and check the following box:
775 * Connection to internet
776 select the appropriate ISDN-device for dialout, insert a phone-number
777 and that's it.
778 You are asked for username & password. Supply the values You did define in
779 spppconfig_isp0 and dial...
780
781 Patch for i4b version 0.71 or older:
782 ------------------------------------
783
784 *** /sys/net/if_spppsubr.c      Sun Dec 27 22:30:44 1998
785 --- /sys/net/if_spppsubr.c.orig Sat May  8 10:54:14 1999
786 ***************
787 *** 2056,2062 ****
788                         if (debug)
789                                 addlog("[non-empty] ");
790                         /* suggest a zero one */
791 !                       p[2] = p[3] = p[4] = p[5] = 0;
792                         break;
793
794                 case LCP_OPT_MRU:
795 --- 2056,2062 ----
796                         if (debug)
797                                 addlog("[non-empty] ");
798                         /* suggest a zero one */
799 !                       /* p[2] = p[3] = p[4] = p[5] = 0; */
800                         break;
801
802                 case LCP_OPT_MRU:
803 ***************
804 *** 2668,2678 ****
805                                         addlog("%s [not agreed] ",
806                                                 sppp_dotted_quad(desiredaddr));
807
808 -                               p[2] = hisaddr >> 24;
809 -                               p[3] = hisaddr >> 16;
810 -                               p[4] = hisaddr >> 8;
811 -                               p[5] = hisaddr;
812                         }
813                         break;
814                 }
815                 /* Add the option to nak'ed list. */
816 --- 2668,2678 ----
817                                         addlog("%s [not agreed] ",
818                                                 sppp_dotted_quad(desiredaddr));
819
820                         }
821 +                       p[2] = hisaddr >> 24;
822 +                       p[3] = hisaddr >> 16;
823 +                       p[4] = hisaddr >> 8;
824 +                       p[5] = hisaddr;
825                         break;
826                 }
827                 /* Add the option to nak'ed list. */
828
829 (From: Andreas Haakh <ah@alvman.RoBIN.de>)
830
831
832 18. How can I convert my old .g711a files to the new format?
833 ================================================================================
834 I got the best results with:
835 cat /some/path/dwhello.g711a | alaw2ulaw | g711conv -u > /tmp/newhello.al
836
837 (From: David Wetzel <dave@turbocat.de>)
838
839
840 19. I have lots of old .g711a files to convert what can I do?
841 ================================================================================
842
843 Create a shell script (/tmp/csnd.sh) with this contents:
844 #!/bin/sh
845
846 OLDFILES=`ls *.g711a`
847 #echo $OLDFILES
848
849 for THEFILE in $OLDFILES
850 do
851 (
852         echo -n "converting $THEFILE..."
853         BASENAME=`basename $THEFILE .g711a`
854
855         /bin/cat $THEFILE | alaw2ulaw | g711conv -u > $BASENAME.al
856         echo "done"
857 )
858
859 done
860 ###### END
861
862 then type "chmod a+x /tmp/csnd.sh" in you shell.
863 cd /usr/local/lib/isdn (or where your old sounds live)
864 /tmp/csnd.sh
865 Optional:
866 rm *.g711a (you should know what you do here :-)
867
868 (From: David Wetzel <dave@turbocat.de>)
869
870
871 20. How can I convert the .al files to Sun/NeXT .au/.snd/.vox files?
872 ================================================================================
873
874 /bin/cat /some/path/old.al | sox -t raw -A -b -r 8000 - -t .au /some/path/new.snd
875
876
877 (From: David Wetzel <dave@turbocat.de>)
878
879
880 21. Help, isdn4bsd 0.82 fails to probe my Elsa PCC-16!
881 ================================================================================
882
883 >Isdn4bsd 0.82 fails to probe my Elsa PCC-16. It just can't find isic0.
884
885 flags have changed from 19 to 20.
886
887
888 (From: "Frank J. Beckmann" <frank@vogon.agala.harz.de>)
889
890
891 22. How do i enable and configure userland PPP with i4b ?
892 ================================================================================
893
894 NOTE: this is the procedure used as of end of July 1999, it may change in
895       the near future!
896
897 Get the current ppp sources from
898
899         http://www.freebsd.org/~brian
900
901 unpack them and apply the patch
902
903         ftp://ftp6.uk.freebsd.org/pub/PPPoISDN/pppcommit.patch
904
905 to the ppp directory (where you just unpacked the above mentioned ppp source).
906 Make and install the result.
907
908 Have a look at the user-ppp directory and the end of etc-isdn/isdnd.rc.sample
909 for ppp and i4b sample configurations to get things up and running.
910
911 More information to ppp setup can be found at
912
913         http://www.Awfulhak.org/ppp.html
914         http://www.freebsd.org/doc/handbook/ppp-and-slip.html
915         http://www.freebsd.org/doc/faq/ppp.html
916
917 and in the directory "user-ppp" of the isdn4bsd distribution.
918
919
920 23. What is the procedure to install a new i4b on FreeBSD 3.x ?
921 ================================================================================
922
923 cd /usr/src
924 mkdir i4b
925 cd i4b
926 tar xvzf i4b-00.82.00-beta-140799.tar.gz
927 cd FreeBSD
928 sh overuninstall.sh
929 sh overinstall.sh
930 cd ..
931 make cleandir
932 make depend
933 make
934 make install
935 cd /sys/i386/conf
936 config <YOURKERNEL>
937 cd ../../compile/<YOURKERNEL>
938 make clean
939 make depend
940 make
941 make install
942 shutdown -r now
943
944
945 (From: Luke Roberts <luke@roberts.nl>)
946
947
948 24. Why do i get "ifconfig: ioctl (SIOCAIFADDR): file exists" ?
949 ================================================================================
950
951 Ich ?berlege gerade, aber ich glaube, ich bekomme sie auch.  Das
952 Problem existiert schon seit geraumer Zeit immer beim Konfigurieren
953 eines point-to-point Interfaces (SLIP, PPP).
954
955 Das `file exists' ist ein Misnomer, es r?hrt daher, da? der
956 Routingcode die errno's in einer leicht ver?nderten Weise benutzt, so
957 da? nicht neue errno's daf?r erfunden werden mu?ten.  Lies es als
958 `route exists'.  (Und falls Du im Zusammenhang mit Routing mal ein `no
959 such process' siehst, lies es als `no such route'.)
960
961 Die Meldung ist harmlos.  Sonst h?tte ich mir schon l?ngst mal die
962 M?he gemacht, mich durch den ganzen Routing-Code zu hangeln und zu
963 sehen, warum das passiert.
964
965 (From Joerg Wunsch <j@uriah.heep.sax.de>)
966
967
968 25. How to properly operate isdnd's fullscreen output in a 132x60 vty
969 ================================================================================
970
971 Q: I'm using allscreens_flags="132x60" in /etc/rc.conf but the vty gets
972    switched after isdnd is started, so isdnd didn't know about the new
973    dimensions of the screen.
974
975 A: This one's easy:
976    In /etc/rc.isdn change
977         isdn_ttype=cons25
978    to
979         isdn_ttype=cons60l1wide
980         /usr/sbin/vidcontrol VESA_132x60 < ${isdn_fsdev}
981
982    The new VESA modes don't have termcap entries yet, so you'll
983    have to add one yourself to define 132x60:
984
985    cons60l1wide|cons60-iso8859-1:\
986         :co#132:tc=cons60l1:
987
988
989 (From: "H. Eckert" <ripley@nostromo.in-berlin.de>)
990
991
992 26. NetBSD: i see isic0 while booting but I cannot access my Fritz!Card
993 ================================================================================
994
995 I got his:
996 isic0 at pci0 dev 8 function 0: Fritz!Card
997 isic0: ISAC 2085 Version A1/A2 or 2086/2186 Version 1.1 (IOM-2)
998 isic0: interrupting at irq 11
999 (...)
1000 i4b: ISDN call control device attached
1001 i4btrc: 2 ISDN trace device(s) attached
1002 i4bctl: ISDN system control port attached
1003 i4brbch: 4 raw B channel access device(s) attached
1004 i4btel: 2 ISDN telephony interface device(s) attached
1005 i4bipr: 2 IP over raw HDLC ISDN device(s) attached (VJ header compression)
1006 i4bisppp: 2 ISDN SyncPPP device(s) attached
1007
1008 But I could not use the card, because I forgot
1009 "options __I4B_IS_INTEGRATED" in the kernal config file.
1010 [Jan Sparud helped me to find that]
1011
1012 (From: David Wetzel <dave@turbocat.de>)
1013
1014
1015 27. i4b_pci_attach: pci_map_port 1 failed! What does this mean ?
1016 ================================================================================
1017
1018 Q: Hi,
1019
1020    I am trying to set up a ELSA QuickStep 1000pro PCI ISDN adaptor in a FreeBSD
1021    3.3 box. I configured the kernel according to the i4b.ps documentation. At
1022    boottime, these messages are displayed:
1023
1024    isic0: <ELSA QuickStep 1000pro PCI ISDN adaptor> rev 0x01 int a irq 11 on
1025    pci0.1 7.0
1026    i4b_pci_attach: pci_map_port 1 failed!
1027
1028    What does this mean ?, should I be worried ?, will the device function
1029    properly ?
1030
1031 A: Problem is solved.
1032
1033    In the BIOS, the PCI slot containing the ISDN card was set to IRQ 14 (having
1034    no IDE devices). The isic driver finds the card using irq 11 and then says
1035    "pci_port_map_port failed". The slot is set to IRQ 11 (which was free also)
1036    and everything works fine here ..
1037
1038 From: Joost Mulders <dhcp@j-mulders.demon.nl>
1039
1040
1041 28. What is: i4b-L2 i4b_rxd_ack: ((N(R)-1)=35) != (UA=36) !!!
1042 ================================================================================
1043
1044 > Some time I get follow message at console:
1045 >
1046 > i4b-L2 i4b_rxd_ack: ((N(R)-1)=35) != (UA=36) !!!
1047
1048 A layer 2 error occurred. These types of errors are automatically
1049 corrected by the layer 2 protocol.
1050
1051
1052 29. Why does isdnd take up 95% CPU time ?
1053 ================================================================================
1054
1055 Q: i just set up my isdn w/ user ppp, it works nice, but my isdn daemon takes
1056    up 95% of my CPU time.
1057
1058    output of "top":
1059    --snip--
1060    Mem: 42M Active, 4616K Inact, 11M Wired, 2896K Cache, 14M Buf, 408K Free
1061    Swap: 132M Total, 5128K Used, 127M Free, 3% Inuse
1062
1063      PID USERNAME PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU COMMAND
1064       63 root      58   0  1372K   752K RUN     38:05 93.75% 93.75% isdnd
1065      207 gboehm     2   0 25196K 22044K select   1:15  2.20%  2.20% XF86_Mach64
1066    --/snip--
1067
1068 A: i just found out what i did wrong ...
1069    i forgot to set these both lines in my /etc/rc.conf:
1070
1071    isdn_fsdev="NO"
1072    isdn_flags=""
1073
1074    had to do that if i want to run isdnd as an daemon service, 'cause the
1075    defaults in /etc/defaults/rc.conf are:
1076
1077    isdn_fsdev="/dev/ttyv4"         # Output device for fullscreen mode (or NO for daemon mode).
1078    isdn_flags="-dn -d0x1f9"        # Flags for isdnd
1079
1080 From: Guido Boehm <g.boehm@web.de>