]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | README for the ISDN-subsystem |
2 | ||
3 | 1. Preface | |
4 | ||
5 | 1.1 Introduction | |
6 | ||
7 | This README describes how to set up and how to use the different parts | |
8 | of the ISDN-subsystem. | |
9 | ||
10 | For using the ISDN-subsystem, some additional userlevel programs are | |
11 | necessary. Those programs and some contributed utilities are available | |
12 | at | |
13 | ||
14 | ftp.isdn4linux.de | |
15 | ||
16 | /pub/isdn4linux/isdn4k-utils-<VersionNumber>.tar.gz | |
17 | ||
18 | ||
19 | We also have set up a mailing-list: | |
20 | ||
21 | The isdn4linux-project originates in Germany, and therefore by historical | |
22 | reasons, the mailing-list's primary language is german. However mails | |
23 | written in english have been welcome all the time. | |
24 | ||
25 | to subscribe: write a email to [email protected], | |
26 | Subject irrelevant, in the message body: | |
27 | subscribe isdn4linux <your_email_address> | |
28 | ||
29 | To write to the mailing-list, write to [email protected] | |
30 | ||
31 | This mailinglist is bidirectionally gated to the newsgroup | |
32 | ||
33 | de.alt.comm.isdn4linux | |
34 | ||
35 | There is also a well maintained FAQ in English available at | |
36 | http://www.mhessler.de/i4lfaq/ | |
37 | It can be viewed online, or downloaded in sgml/text/html format. | |
38 | The FAQ can also be viewed online at | |
0ea6e611 | 39 | http://www.isdn4linux.de/faq/ |
1da177e4 LT |
40 | or downloaded from |
41 | ftp://ftp.isdn4linux.de/pub/isdn4linux/FAQ/ | |
42 | ||
43 | 1.1 Technical details | |
44 | ||
45 | In the following Text, the terms MSN and EAZ are used. | |
46 | ||
47 | MSN is the abbreviation for (M)ultiple(S)ubscriber(N)umber, and applies | |
48 | to Euro(EDSS1)-type lines. Usually it is simply the phone number. | |
49 | ||
50 | EAZ is the abbreviation of (E)ndgeraete(A)uswahl(Z)iffer and | |
51 | applies to German 1TR6-type lines. This is a one-digit string, | |
52 | simply appended to the base phone number | |
53 | ||
54 | The internal handling is nearly identical, so replace the appropriate | |
55 | term to that one, which applies to your local ISDN-environment. | |
56 | ||
57 | When the link-level-module isdn.o is loaded, it supports up to 16 | |
58 | low-level-modules with up to 64 channels. (The number 64 is arbitrarily | |
59 | chosen and can be configured at compile-time --ISDN_MAX in isdn.h). | |
60 | A low-level-driver can register itself through an interface (which is | |
61 | defined in isdnif.h) and gets assigned a slot. | |
62 | The following char-devices are made available for each channel: | |
63 | ||
64 | A raw-control-device with the following functions: | |
65 | write: raw D-channel-messages (format: depends on driver). | |
66 | read: raw D-channel-messages (format: depends on driver). | |
67 | ioctl: depends on driver, i.e. for the ICN-driver, the base-address of | |
68 | the ports and the shared memory on the card can be set and read | |
69 | also the boot-code and the protocol software can be loaded into | |
70 | the card. | |
71 | ||
72 | O N L Y !!! for debugging (no locking against other devices): | |
73 | One raw-data-device with the following functions: | |
74 | write: data to B-channel. | |
75 | read: data from B-channel. | |
76 | ||
77 | In addition the following devices are made available: | |
78 | ||
79 | 128 tty-devices (64 cuix and 64 ttyIx) with integrated modem-emulator: | |
80 | The functionality is almost the same as that of a serial device | |
81 | (the line-discs are handled by the kernel), which lets you run | |
82 | SLIP, CSLIP and asynchronous PPP through the devices. We have tested | |
83 | Seyon, minicom, CSLIP (uri-dip) PPP, mgetty, XCept and Hylafax. | |
84 | ||
85 | The modem-emulation supports the following: | |
86 | 1.3.1 Commands: | |
87 | ||
88 | ATA Answer incoming call. | |
89 | ATD<No.> Dial, the number may contain: | |
90 | [0-9] and [,#.*WPT-S] | |
91 | the latter are ignored until 'S'. | |
92 | The 'S' must precede the number, if | |
93 | the line is a SPV (German 1TR6). | |
94 | ATE0 Echo off. | |
95 | ATE1 Echo on (default). | |
96 | ATH Hang-up. | |
97 | ATH1 Off hook (ignored). | |
98 | ATH0 Hang-up. | |
99 | ATI Return "ISDN for Linux...". | |
100 | ATI0 " | |
101 | ATI1 " | |
102 | ATI2 Report of last connection. | |
103 | ATO On line (data mode). | |
104 | ATQ0 Enable result codes (default). | |
105 | ATQ1 Disable result codes (default). | |
106 | ATSx=y Set register x to y. | |
107 | ATSx? Show contents of register x. | |
108 | ATV0 Numeric responses. | |
109 | ATV1 English responses (default). | |
110 | ATZ Load registers and EAZ/MSN from Profile. | |
111 | AT&Bx Set Send-Packet-size to x (max. 4000) | |
112 | The real packet-size may be limited by the | |
113 | low-level-driver used. e.g. the HiSax-Module- | |
114 | limit is 2000. You will get NO Error-Message, | |
115 | if you set it to higher values, because at the | |
116 | time of giving this command the corresponding | |
117 | driver may not be selected (see "Automatic | |
118 | Assignment") however the size of outgoing packets | |
119 | will be limited correctly. | |
120 | AT&D0 Ignore DTR | |
121 | AT&D2 DTR-low-edge: Hang up and return to | |
122 | command mode (default). | |
123 | AT&D3 Same as AT&D2 but also resets all registers. | |
124 | AT&Ex Set the EAZ/MSN for this channel to x. | |
125 | AT&F Reset all registers and profile to "factory-defaults" | |
126 | AT&Lx Set list of phone numbers to listen on. x is a | |
127 | list of wildcard patterns separated by semicolon. | |
128 | If this is set, it has precedence over the MSN set | |
129 | by AT&E. | |
130 | AT&Rx Select V.110 bitrate adaption. | |
131 | This command enables V.110 protocol with 9600 baud | |
132 | (x=9600), 19200 baud (x=19200) or 38400 baud | |
133 | (x=38400). A value of x=0 disables V.110 switching | |
134 | back to default X.75. This command sets the following | |
135 | Registers: | |
136 | Reg 14 (Layer-2 protocol): | |
137 | x = 0: 0 | |
138 | x = 9600: 7 | |
139 | x = 19200: 8 | |
140 | x = 38400: 9 | |
141 | Reg 18.2 = 1 | |
142 | Reg 19 (Additional Service Indicator): | |
143 | x = 0: 0 | |
144 | x = 9600: 197 | |
145 | x = 19200: 199 | |
146 | x = 38400: 198 | |
147 | Note on value in Reg 19: | |
148 | There is _NO_ common convention for 38400 baud. | |
149 | The value 198 is chosen arbitrarily. Users | |
150 | _MUST_ negotiate this value before establishing | |
151 | a connection. | |
152 | AT&Sx Set window-size (x = 1..8) (not yet implemented) | |
153 | AT&V Show all settings. | |
154 | AT&W0 Write registers and EAZ/MSN to profile. See also | |
155 | iprofd (5.c in this README). | |
156 | AT&X0 BTX-mode and T.70-mode off (default) | |
157 | AT&X1 BTX-mode on. (S13.1=1, S13.5=0 S14=0, S16=7, S18=7, S19=0) | |
158 | AT&X2 T.70-mode on. (S13.1=1, S13.5=1, S14=0, S16=7, S18=7, S19=0) | |
159 | AT+Rx Resume a suspended call with CallID x (x = 1,2,3...) | |
160 | AT+Sx Suspend a call with CallID x (x = 1,2,3...) | |
161 | ||
162 | For voice-mode commands refer to README.audio | |
163 | ||
164 | 1.3.2 Escape sequence: | |
165 | During a connection, the emulation reacts just like | |
166 | a normal modem to the escape sequence <DELAY>+++<DELAY>. | |
167 | (The escape character - default '+' - can be set in the | |
168 | register 2). | |
169 | The DELAY must at least be 1.5 seconds long and delay | |
170 | between the escape characters must not exceed 0.5 seconds. | |
171 | ||
172 | 1.3.3 Registers: | |
173 | ||
174 | Nr. Default Description | |
175 | 0 0 Answer on ring number. | |
176 | (no auto-answer if S0=0). | |
177 | 1 0 Count of rings. | |
178 | 2 43 Escape character. | |
179 | (a value >= 128 disables the escape sequence). | |
180 | 3 13 Carriage return character (ASCII). | |
181 | 4 10 Line feed character (ASCII). | |
182 | 5 8 Backspace character (ASCII). | |
183 | 6 3 Delay in seconds before dialing. | |
184 | 7 60 Wait for carrier. | |
185 | 8 2 Pause time for comma (ignored) | |
186 | 9 6 Carrier detect time (ignored) | |
187 | 10 7 Carrier loss to disconnect time (ignored). | |
188 | 11 70 Touch tone timing (ignored). | |
189 | 12 69 Bit coded register: | |
190 | Bit 0: 0 = Suppress response messages. | |
191 | 1 = Show response messages. | |
192 | Bit 1: 0 = English response messages. | |
193 | 1 = Numeric response messages. | |
194 | Bit 2: 0 = Echo off. | |
195 | 1 = Echo on. | |
196 | Bit 3 0 = DCD always on. | |
197 | 1 = DCD follows carrier. | |
198 | Bit 4 0 = CTS follows RTS | |
199 | 1 = Ignore RTS, CTS always on. | |
200 | Bit 5 0 = return to command mode on DTR low. | |
201 | 1 = Same as 0 but also resets all | |
202 | registers. | |
203 | See also register 13, bit 2 | |
204 | Bit 6 0 = DSR always on. | |
205 | 1 = DSR only on if channel is available. | |
206 | Bit 7 0 = Cisco-PPP-flag-hack off (default). | |
207 | 1 = Cisco-PPP-flag-hack on. | |
208 | 13 0 Bit coded register: | |
209 | Bit 0: 0 = Use delayed tty-send-algorithm | |
210 | 1 = Direct tty-send. | |
211 | Bit 1: 0 = T.70 protocol (Only for BTX!) off | |
212 | 1 = T.70 protocol (Only for BTX!) on | |
213 | Bit 2: 0 = Don't hangup on DTR low. | |
214 | 1 = Hangup on DTR low. | |
215 | Bit 3: 0 = Standard response messages | |
216 | 1 = Extended response messages | |
217 | Bit 4: 0 = CALLER NUMBER before every RING. | |
218 | 1 = CALLER NUMBER after first RING. | |
219 | Bit 5: 0 = T.70 extended protocol off | |
220 | 1 = T.70 extended protocol on | |
221 | Bit 6: 0 = Special RUNG Message off | |
222 | 1 = Special RUNG Message on | |
223 | "RUNG" is delivered on a ttyI, if | |
224 | an incoming call happened (RING) and | |
225 | the remote party hung up before any | |
226 | local ATA was given. | |
227 | Bit 7: 0 = Don't show display messages from net | |
228 | 1 = Show display messages from net | |
229 | (S12 Bit 1 must be 0 too) | |
230 | 14 0 Layer-2 protocol: | |
231 | 0 = X75/LAPB with I-frames | |
232 | 1 = X75/LAPB with UI-frames | |
233 | 2 = X75/LAPB with BUI-frames | |
234 | 3 = HDLC | |
235 | 4 = Transparent (audio) | |
236 | 7 = V.110, 9600 baud | |
237 | 8 = V.110, 19200 baud | |
238 | 9 = V.110, 38400 baud | |
239 | 10 = Analog Modem (only if hardware supports this) | |
240 | 11 = Fax G3 (only if hardware supports this) | |
241 | 15 0 Layer-3 protocol: | |
242 | 0 = transparent | |
243 | 1 = transparent with audio features (e.g. DSP) | |
244 | 2 = Fax G3 Class 2 commands (S14 has to be set to 11) | |
245 | 3 = Fax G3 Class 1 commands (S14 has to be set to 11) | |
246 | 16 250 Send-Packet-size/16 | |
247 | 17 8 Window-size (not yet implemented) | |
248 | 18 4 Bit coded register, Service-Octet-1 to accept, | |
249 | or to be used on dialout: | |
250 | Bit 0: Service 1 (audio) when set. | |
251 | Bit 1: Service 5 (BTX) when set. | |
252 | Bit 2: Service 7 (data) when set. | |
253 | Note: It is possible to set more than one | |
254 | bit. In this case, on incoming calls | |
255 | the selected services are accepted, | |
256 | and if the service is "audio", the | |
257 | Layer-2-protocol is automatically | |
258 | changed to 4 regardless of the setting | |
259 | of register 14. On outgoing calls, | |
260 | the most significant 1-bit is chosen to | |
261 | select the outgoing service octet. | |
262 | 19 0 Service-Octet-2 | |
263 | 20 0 Bit coded register (readonly) | |
264 | Service-Octet-1 of last call. | |
265 | Bit mapping is the same as register 18 | |
266 | 21 0 Bit coded register (readonly) | |
267 | Set on incoming call (during RING) to | |
268 | octet 3 of calling party number IE (Numbering plan) | |
269 | See section 4.5.10 of ITU Q.931 | |
270 | 22 0 Bit coded register (readonly) | |
271 | Set on incoming call (during RING) to | |
272 | octet 3a of calling party number IE (Screening info) | |
273 | See section 4.5.10 of ITU Q.931 | |
274 | 23 0 Bit coded register: | |
275 | Bit 0: 0 = Add CPN to RING message off | |
276 | 1 = Add CPN to RING message on | |
277 | Bit 1: 0 = Add CPN to FCON message off | |
278 | 1 = Add CPN to FCON message on | |
279 | Bit 2: 0 = Add CDN to RING/FCON message off | |
280 | 1 = Add CDN to RING/FCON message on | |
281 | ||
282 | Last but not least a (at the moment fairly primitive) device to request | |
283 | the line-status (/dev/isdninfo) is made available. | |
284 | ||
285 | Automatic assignment of devices to lines: | |
286 | ||
287 | All inactive physical lines are listening to all EAZs for incoming | |
288 | calls and are NOT assigned to a specific tty or network interface. | |
289 | When an incoming call is detected, the driver looks first for a network | |
290 | interface and then for an opened tty which: | |
291 | ||
292 | 1. is configured for the same EAZ. | |
293 | 2. has the same protocol settings for the B-channel. | |
294 | 3. (only for network interfaces if the security flag is set) | |
295 | contains the caller number in its access list. | |
296 | 4. Either the channel is not bound exclusively to another Net-interface, or | |
297 | it is bound AND the other checks apply to exactly this interface. | |
298 | (For usage of the bind-features, refer to the isdnctrl-man-page) | |
299 | ||
300 | Only when a matching interface or tty is found is the call accepted | |
301 | and the "connection" between the low-level-layer and the link-level-layer | |
302 | is established and kept until the end of the connection. | |
303 | In all other cases no connection is established. Isdn4linux can be | |
304 | configured to either do NOTHING in this case (which is useful, if | |
305 | other, external devices with the same EAZ/MSN are connected to the bus) | |
306 | or to reject the call actively. (isdnctrl busreject ...) | |
307 | ||
308 | For an outgoing call, the inactive physical lines are searched. | |
309 | The call is placed on the first physical line, which supports the | |
310 | requested protocols for the B-channel. If a net-interface, however | |
311 | is pre-bound to a channel, this channel is used directly. | |
312 | ||
313 | This makes it possible to configure several network interfaces and ttys | |
314 | for one EAZ, if the network interfaces are set to secure operation. | |
315 | If an incoming call matches one network interface, it gets connected to it. | |
316 | If another incoming call for the same EAZ arrives, which does not match | |
317 | a network interface, the first tty gets a "RING" and so on. | |
318 | ||
319 | 2 System prerequisites: | |
320 | ||
321 | ATTENTION! | |
322 | ||
323 | Always use the latest module utilities. The current version is | |
324 | named in Documentation/Changes. Some old versions of insmod | |
325 | are not capable of setting the driver-Ids correctly. | |
326 | ||
327 | 3. Lowlevel-driver configuration. | |
328 | ||
329 | Configuration depends on how the drivers are built. See the | |
330 | README.<yourDriver> for information on driver-specific setup. | |
331 | ||
332 | 4. Device-inodes | |
333 | ||
334 | The major and minor numbers and their names are described in | |
335 | Documentation/devices.txt. The major numbers are: | |
336 | ||
337 | 43 for the ISDN-tty's. | |
338 | 44 for the ISDN-callout-tty's. | |
339 | 45 for control/info/debug devices. | |
340 | ||
341 | 5. Application | |
342 | ||
343 | a) For some card-types, firmware has to be loaded into the cards, before | |
344 | proceeding with device-independent setup. See README.<yourDriver> | |
345 | for how to do that. | |
346 | ||
347 | b) If you only intend to use ttys, you are nearly ready now. | |
348 | ||
349 | c) If you want to have really permanent "Modem"-settings on disk, you | |
350 | can start the daemon iprofd. Give it a path to a file at the command- | |
351 | line. It will store the profile-settings in this file every time | |
352 | an AT&W0 is performed on any ISDN-tty. If the file already exists, | |
353 | all profiles are initialized from this file. If you want to unload | |
354 | any of the modules, kill iprofd first. | |
355 | ||
356 | d) For networking, continue: Create an interface: | |
357 | isdnctrl addif isdn0 | |
358 | ||
359 | e) Set the EAZ (or MSN for Euro-ISDN): | |
360 | isdnctrl eaz isdn0 2 | |
361 | ||
362 | (For 1TR6 a single digit is allowed, for Euro-ISDN the number is your | |
363 | real MSN e.g.: Phone-Number) | |
364 | ||
365 | f) Set the number for outgoing calls on the interface: | |
366 | isdnctrl addphone isdn0 out 1234567 | |
367 | ... (this can be executed more than once, all assigned numbers are | |
368 | tried in order) | |
369 | and the number(s) for incoming calls: | |
370 | isdnctrl addphone isdn0 in 1234567 | |
371 | ||
372 | g) Set the timeout for hang-up: | |
373 | isdnctrl huptimeout isdn0 <timeout_in_seconds> | |
374 | ||
375 | h) additionally you may activate charge-hang-up (= Hang up before | |
376 | next charge-info, this only works, if your isdn-provider transmits | |
377 | the charge-info during and after the connection): | |
378 | isdnctrl chargehup isdn0 on | |
379 | ||
380 | i) Set the dial mode of the interface: | |
381 | isdnctrl dialmode isdn0 auto | |
382 | "off" means that you (or the system) cannot make any connection | |
383 | (neither incoming or outgoing connections are possible). Use | |
384 | this if you want to be sure that no connections will be made. | |
385 | "auto" means that the interface is in auto-dial mode, and will | |
386 | attempt to make a connection whenever a network data packet needs | |
387 | the interface's link. Note that this can cause unexpected dialouts, | |
388 | and lead to a high phone bill! Some daemons or other pc's that use | |
389 | this interface can cause this. | |
390 | Incoming connections are also possible. | |
391 | "manual" is a dial mode created to prevent the unexpected dialouts. | |
392 | In this mode, the interface will never make any connections on its | |
393 | own. You must explicitly initiate a connection with "isdnctrl dial | |
394 | isdn0". However, after an idle time of no traffic as configured for | |
395 | the huptimeout value with isdnctrl, the connection _will_ be ended. | |
396 | If you don't want any automatic hangup, set the huptimeout value to 0. | |
397 | "manual" is the default. | |
398 | ||
399 | j) Setup the interface with ifconfig as usual, and set a route to it. | |
400 | ||
401 | k) (optional) If you run X11 and have Tcl/Tk-wish version 4.0, you can use | |
402 | the script tools/tcltk/isdnmon. You can add actions for line-status | |
403 | changes. See the comments at the beginning of the script for how to | |
404 | do that. There are other tty-based tools in the tools-subdirectory | |
be2a608b | 405 | contributed by Michael Knigge (imon), Volker Götz (imontty) and |
1da177e4 LT |
406 | Andreas Kool (isdnmon). |
407 | ||
408 | l) For initial testing, you can set the verbose-level to 2 (default: 0). | |
409 | Then all incoming calls are logged, even if they are not addressed | |
410 | to one of the configured net-interfaces: | |
411 | isdnctrl verbose 2 | |
412 | ||
413 | Now you are ready! A ping to the set address should now result in an | |
414 | automatic dial-out (look at syslog kernel-messages). | |
415 | The phone numbers and EAZs can be assigned at any time with isdnctrl. | |
416 | You can add as many interfaces as you like with addif following the | |
417 | directions above. Of course, there may be some limitations. But we have | |
418 | tested as many as 20 interfaces without any problem. However, if you | |
419 | don't give an interface name to addif, the kernel will assign a name | |
420 | which starts with "eth". The number of "eth"-interfaces is limited by | |
421 | the kernel. | |
422 | ||
423 | 5. Additional options for isdnctrl: | |
424 | ||
425 | "isdnctrl secure <InterfaceName> on" | |
426 | Only incoming calls, for which the caller-id is listed in the access | |
427 | list of the interface are accepted. You can add caller-id's With the | |
428 | command "isdnctrl addphone <InterfaceName> in <caller-id>" | |
429 | Euro-ISDN does not transmit the leading '0' of the caller-id for an | |
430 | incoming call, therefore you should configure it accordingly. | |
431 | If the real number for the dialout e.g. is "09311234567" the number | |
432 | to configure here is "9311234567". The pattern-match function | |
433 | works similar to the shell mechanism. | |
434 | ||
435 | ? one arbitrary digit | |
436 | * zero or arbitrary many digits | |
437 | [123] one of the digits in the list | |
438 | [1-5] one digit between '1' and '5' | |
439 | a '^' as the first character in a list inverts the list | |
440 | ||
441 | ||
442 | "isdnctrl secure <InterfaceName> off" | |
443 | Switch off secure operation (default). | |
444 | ||
445 | "isdnctrl ihup <InterfaceName> [on|off]" | |
446 | Switch the hang-up-timer for incoming calls on or off. | |
447 | ||
448 | "isdnctrl eaz <InterfaceName>" | |
449 | Returns the EAZ of an interface. | |
450 | ||
451 | "isdnctrl delphone <InterfaceName> in|out <number>" | |
452 | Deletes a number from one of the access-lists of the interface. | |
453 | ||
454 | "isdnctrl delif <InterfaceName>" | |
455 | Removes the interface (and possible slaves) from the kernel. | |
456 | (You have to unregister it with "ifconfig <InterfaceName> down" before). | |
457 | ||
458 | "isdnctrl callback <InterfaceName> [on|off]" | |
459 | Switches an interface to callback-mode. In this mode, an incoming call | |
460 | will be rejected and after this the remote-station will be called. If | |
461 | you test this feature by using ping, some routers will re-dial very | |
462 | quickly, so that the callback from isdn4linux may not be recognized. | |
463 | In this case use ping with the option -i <sec> to increase the interval | |
464 | between echo-packets. | |
465 | ||
466 | "isdnctrl cbdelay <InterfaceName> [seconds]" | |
467 | Sets the delay (default 5 sec) between an incoming call and start of | |
468 | dialing when callback is enabled. | |
469 | ||
470 | "isdnctrl cbhup <InterfaceName> [on|off]" | |
471 | This enables (default) or disables an active hangup (reject) when getting an | |
472 | incoming call for an interface which is configured for callback. | |
473 | ||
474 | "isdnctrl encap <InterfaceName> <EncapType>" | |
475 | Selects the type of packet-encapsulation. The encapsulation can be changed | |
476 | only while an interface is down. | |
477 | ||
478 | At the moment the following values are supported: | |
479 | ||
480 | rawip (Default) Selects raw-IP-encapsulation. This means, MAC-headers | |
481 | are stripped off. | |
482 | ip IP with type-field. Same as IP but the type-field of the MAC-header | |
483 | is preserved. | |
484 | x25iface X.25 interface encapsulation (first byte semantics as defined in | |
485 | ../networking/x25-iface.txt). Use this for running the linux | |
486 | X.25 network protocol stack (AF_X25 sockets) on top of isdn. | |
487 | cisco-h A special-mode for communicating with a Cisco, which is configured | |
488 | to do "hdlc" | |
489 | ethernet No stripping. Packets are sent with full MAC-header. | |
490 | The Ethernet-address of the interface is faked, from its | |
491 | IP-address: fc:fc:i1:i2:i3:i4, where i1-4 are the IP-addr.-values. | |
492 | syncppp Synchronous PPP | |
493 | ||
494 | uihdlc HDLC with UI-frame-header (for use with DOS ISPA, option -h1) | |
495 | ||
496 | ||
497 | NOTE: x25iface encapsulation is currently experimental. Please | |
498 | read README.x25 for further details | |
499 | ||
500 | ||
501 | Watching packets, using standard-tcpdump will fail for all encapsulations | |
502 | except ethernet because tcpdump does not know how to handle packets | |
503 | without MAC-header. A patch for tcpdump is included in the utility-package | |
504 | mentioned above. | |
505 | ||
506 | "isdnctrl l2_prot <InterfaceName> <L2-ProtocolName>" | |
507 | Selects a layer-2-protocol. | |
508 | (With the ICN-driver and the HiSax-driver, "x75i" and "hdlc" is available. | |
509 | With other drivers, "x75ui", "x75bui", "x25dte", "x25dce" may be | |
510 | possible too. See README.x25 for x25 related l2 protocols.) | |
511 | ||
512 | isdnctrl l3_prot <InterfaceName> <L3-ProtocolName> | |
513 | The same for layer-3. (At the moment only "trans" is allowed) | |
514 | ||
515 | "isdnctrl list <InterfaceName>" | |
516 | Shows all parameters of an interface and the charge-info. | |
517 | Try "all" as the interface name. | |
518 | ||
519 | "isdnctrl hangup <InterfaceName>" | |
520 | Forces hangup of an interface. | |
521 | ||
522 | "isdnctrl bind <InterfaceName> <DriverId>,<ChannelNumber> [exclusive]" | |
523 | If you are using more than one ISDN card, it is sometimes necessary to | |
524 | dial out using a specific card or even preserve a specific channel for | |
525 | dialout of a specific net-interface. This can be done with the above | |
526 | command. Replace <DriverId> by whatever you assigned while loading the | |
527 | module. The <ChannelNumber> is counted from zero. The upper limit | |
528 | depends on the card used. At the moment no card supports more than | |
529 | 2 channels, so the upper limit is one. | |
530 | ||
531 | "isdnctrl unbind <InterfaceName>" | |
532 | unbinds a previously bound interface. | |
533 | ||
534 | "isdnctrl busreject <DriverId> on|off" | |
535 | If switched on, isdn4linux replies a REJECT to incoming calls, it | |
536 | cannot match to any configured interface. | |
537 | If switched off, nothing happens in this case. | |
538 | You normally should NOT enable this feature, if the ISDN adapter is not | |
539 | the only device connected to the S0-bus. Otherwise it could happen that | |
540 | isdn4linux rejects an incoming call, which belongs to another device on | |
541 | the bus. | |
542 | ||
543 | "isdnctrl addslave <InterfaceName> <SlaveName> | |
544 | Creates a slave interface for channel-bundling. Slave interfaces are | |
545 | not seen by the kernel, but their ISDN-part can be configured with | |
546 | isdnctrl as usual. (Phone numbers, EAZ/MSN, timeouts etc.) If more | |
547 | than two channels are to be bundled, feel free to create as many as you | |
548 | want. InterfaceName must be a real interface, NOT a slave. Slave interfaces | |
549 | start dialing, if the master interface resp. the previous slave interface | |
550 | has a load of more than 7000 cps. They hangup if the load goes under 7000 | |
551 | cps, according to their "huptimeout"-parameter. | |
552 | ||
553 | "isdnctrl sdelay <InterfaceName> secs." | |
554 | This sets the minimum time an Interface has to be fully loaded, until | |
555 | it sends a dial-request to its slave. | |
556 | ||
557 | "isdnctrl dial <InterfaceName>" | |
558 | Forces an interface to start dialing even if no packets are to be | |
559 | transferred. | |
560 | ||
561 | "isdnctrl mapping <DriverId> MSN0,MSN1,MSN2,...MSN9" | |
562 | This installs a mapping table for EAZ<->MSN-mapping for a single line. | |
563 | Missing MSN's have to be given as "-" or can be omitted, if at the end | |
564 | of the commandline. | |
565 | With this command, it's now possible to have an interface listening to | |
566 | mixed 1TR6- and Euro-Type lines. In this case, the interface has to be | |
567 | configured to a 1TR6-type EAZ (one digit). The mapping is also valid | |
568 | for tty-emulation. Seen from the interface/tty-level the mapping | |
569 | CAN be used, however it's possible to use single tty's/interfaces with | |
570 | real MSN's (more digits) also, in which case the mapping will be ignored. | |
571 | Here is an example: | |
572 | ||
573 | You have a 1TR6-type line with base-nr. 1234567 and a Euro-line with | |
574 | MSN's 987654, 987655 and 987656. The DriverId for the Euro-line is "EURO". | |
575 | ||
576 | isdnctrl mapping EURO -,987654,987655,987656,-,987655 | |
577 | ... | |
578 | isdnctrl eaz isdn0 1 # listen on 12345671(1tr6) and 987654(euro) | |
579 | ... | |
580 | isdnctrl eaz isdn1 4 # listen on 12345674(1tr6) only. | |
581 | ... | |
582 | isdnctrl eaz isdn2 987654 # listen on 987654(euro) only. | |
583 | ||
584 | Same scheme is used with AT&E... at the tty's. | |
585 | ||
586 | 6. If you want to write a new low-level-driver, you are welcome. | |
587 | The interface to the link-level-module is described in the file INTERFACE. | |
588 | If the interface should be expanded for any reason, don't do it | |
589 | on your own, send me a mail containing the proposed changes and | |
590 | some reasoning about them. | |
591 | If other drivers will not be affected, I will include the changes | |
592 | in the next release. | |
593 | For developers only, there is a second mailing-list. Write to me | |
594 | ([email protected]), if you want to join that list. | |
595 | ||
596 | Have fun! | |
597 | ||
598 | -Fritz | |
599 |