Next Previous Contents

11. dialout: Konfiguration des Hinauswählens

11.1 dialout_config: Wie richte ich das Hinauswählen richtig ein?

Zuerst musst Du entscheiden wie Du hinauswählen willst. Du wirst Dich da nach Deinem Verbindungspartner richten müssen. Dies sind die hauptsächlichen Möglichkeiten:

Im Abschnitt dod liest Du wie dial on demand eingerichtet wird - und welche Gefahren es birgt.

Mehr über erweiterte Eigenheiten des Hinauswählens findest Du bei der Frage dialout_advanced.

Du solltest Dir auch den Abschnitt remote ansehen, wenn Du eine Verbindung mit einem speziellen entfernten ISDN-Gerät aufbauen willst.

11.2 dialout_dialmode: Wenn ein IP-Paket über die Verbindung geschickt werden soll (was normalerweise ein Wählen auslöst), bekomme ich im Log nur die Meldung 'dial rejected: interface not in dialmode auto' zu sehen?

Die neuen ISDN-Treiber in 2.0.36 sind auf den manuellen Wählmodus eingestellt, nicht auf die automatische Anwahl. Das wurde gemacht, um unerwartete (und unbemerkte) Wählvorgänge zu verhindern. (Lies den umfangreichen Abschnitt über diese Wähl-vorgänge und ihre Gefahren: dod). Um autodial für ein bestimmtes Interface (z.B. ippp0) einzurichten, nimmst Du den Befehl


isdnctrl dialmode ippp0
auto

Die Bedeutung der Werte für dialmode ist:

off

bewirkt, daß Du (oder das System) keine Verbindung aufbauen kannst (weder eingehende noch ausgehende Verbindungen sind möglich). Benutze diese Option um sicherzustellen, daß keine Verbindungen aufgebaut werden.

auto

bewirkt, daß sich das Interface im automatischen Wählmodus befindet und jedesmal, wenn ein Datenpaket des Netzwerkes den Verbindungsweg des Interfaces benutzen will, eine Verbindung aufbauen wird. Du solltest beachten, daß das unerwartete Wählvorgänge auslösen und zu einer hohen Telefonrechnung führen kann! Das kann durch einige demons oder andere PCs, die auf das Interface zugreifen, ausgelöst werden. Eingehende Anrufe sind ebenfalls möglich.

manual

(VOREINSTELLUNG) ist ein Wählmodus, der dazu geschaffen wurde, die unerwarteten Verbindungsaufbauten zu verhindern. In diesem Modus wird das Interface nie eine Verbindung von selbst aufbauen. Du musst die Verbindung explizit mit:


isdnctrl dial ippp0

aufbauen. Zum Beenden der Verbindung schreibst Du:
isdnctrl hangup ippp0

. Beachte bitte, daß huptimeout die Verbindung trotzdem automatisch beendet! Du musst dies mit:
isdnctrl huptimeout ippp0 0

abstellen, um sicherzustellen, daß die Verbindung nur durch manuelles Auflegen beendet wird.

Wie Du einem normalen Benutzer das Hinauswählen gestattest, erfährst Du bei der Frage dialout_permission.

11.3 dialout_advanced: Welche speziellen Leistungsmerkmale des Hinauswählens gibt es?

Sieh Dir diese speziellen Leistungsmerkmale an:

11.4 dialout_permission: Wie gestatte ich einem normalen Nutzer, Verbindungen aufzubauen?

Der Gebrauch von ISDN hängt ab von den Benutzerrechten an den Devices /dev/ttyI* und /dev/cui*. Du hast mehrere Möglichkeiten, um gezielt Nutzern ISDN Verbindungen zu erlauben.

  1. Du kannst die Gruppe 'isdn' in /etc/group erstellen und dann:
    chgrp isdn /dev/ttyI* /dev/cui*
    chmod o-rw /dev/ttyI* /dev/cui*
    

    eingeben. Es wird berichtet, daß Du ebenfalls bei den Programmen ipppd und isdnctrl die Gruppe und die Benutzerrechte auf "isdn" setzen musst. Dann haben alle Nutzer, die nicht in der Gruppe "isdn" sind, keine Schreib- oder Leserechte für die ISDN ttys. Diejenigen, die ISDN benutzen dürfen, müssen explizit in die Gruppe 'isdn' aufgenommen werden.
  2. Du kannst festlegen, daß nur root hinauswählen darf, jedoch Ausnahmen für andere Nutzer mit su1 schaffen (siehe man su1). Editiere als root /etc/su1.priv. Füge diese Zeilen hinzu, wenn sie (oder ähnliche) nicht schon vorhanden sind, und erlaube damit den Nutzern XXXX und YYYY das Wählen und Auflegen:
    # log all dialouts in syslog
    syslog all
    define PPPUSER XXXX YYYY
    alias dial /sbin/isdnctrl dial ippp0
    alias hangup /sbin/isdnctrl hangup ippp0
    ask never
    allow PPPUSER prefix dial
    allow PPPUSER prefix hangup
    

    Dann erstelle zwei Links für dial und hangup:
    ln -s /usr/bin/su1 /usr/local/bin/dial
    ln -s /usr/bin/su1 /usr/local/bin/hangup
    

    Nun können die Nutzer XXXX und YYYY mit der Eingabe von dial hinauswählen und mit hangup auflegen.
  3. Wenn Du nur einen User für die ISDN-Aktionen benutzt, kannst Du ihn zum Eigentümer des ISDN-Interfaces machen.

11.5 dialout_manycards: Wie konfiguriere ich die Hinauswahl mit mehr als einer ISDN-Karte?

Es gibt mehrere Möglichkeiten, die Hinauswahl einzurichten.

11.6 dialout_fixedchannel: Wie erreiche ich, daß HiSax immer auf einem bestimmten B-Kanal hinauswählt?

HiSax besitzt dafür eine undokumentierte Eigenschaft. Setze 'P1' vor die zu wählende Telefonnummer für den ersten und 'P2' für den zweiten B-Kanal; ungefähr so:


isdnctrl addphone <device> out P1<your_out_number>

Bedenke, daß in diesem Fall ein Hinauswählen mißlingt, wenn ein anderes Gerät (Telefon, Fax) bereits den entsprechenden Kanal belegt.

11.7 dialout_dynip: Wie finde ich bei dynamischer IP-Vergabe heraus, welche IP zur Hinauswahl benutzt wird?

Erstelle ein Script mit Namen ip-up. Das wird (mit den entsprechenden Parametern) bei jedem Verbindungsaufbau vom ipppd aufgerufen. Die IP-Adresse steht dort als vierter Parameter ($4).

11.8 dialout_bind: Wegen einer DNS-Anfrage wählt bind hinaus. Warum benötigt die Antwort bis zu einer Minute? Gibt es dafür ein Workaround?

Du benutzt vermutlich den Name-Server im 'forward' Modus und Dein ISP arbeitet mit dynamischen IPs. Die erste UDP-Anfrage geht verloren, da sie die falsche IP-Adresse besitzt. Leider wartet bind eine volle Minute bevor es die Anfrage wiederholt.

Als Workaround kannst Du 4 mal die gleiche Adresse in named.conf eintragen und erreichst so, daß eine kürzere Wiederholungszeit (im 'forward' Modus wiederholt bind seine Anfragen nach folgendem Zeitschema: 60 Sekunden geteilt durch die Anzahl der Nameserver in der Sektion "forwarders" der named.conf).


forwarders { 10.0.0.40; 10.0.0.40; 10.0.0.40; 10.0.0.40; }

Bind wird dann die Anfrage alle 15 Sekunden wiederholen (in diesem Fall an 10.0.0.40). Das gleiche Prinzip gilt für zwei oder mehr Adressen. Weitere Möglichkeiten sind die Programme ip_resend und ip_resend_wakeup die Du bei http://www.baty.hanse.de/ip_resend/ findest.


Next Previous Contents