====== Einführung ====== Wählverbindungen benutzen analoge Modems, um digitale Signale über traditionelle Kupfer-Telefonleitungen zu übertragen. Für derartige Verbindungen wird ausser dem Telefonnetz keine weitere Infrastruktur benötigt. * Wählverbindungen sind die einzige Möglichkeit in ländlichen oder abgeschiedenen Gegenden, wo kein Breitbandnetz zur Verfügung steht. * In dem Fall, dass das Breitbandnetz oder die Stromversorgung ausfällt oder wenn Regierungen Internetzugang und Mobilfunknetze abschalten (was in verschiedenen Ländern bereits geschehen ist), sind Wählverbindungen wieder eine Möglichkeit zur Datenkommunikation. * Wo immer ein Telefonnetz verfügbar ist, bleiben Wählverbindungen eine Option für Reisende. ===== Modem-Auswahl ======= ==== Software-Modem ==== Jedes Modem eines Klapprechners ist höchstwahrscheinlich ein **Software-Modem** und benötigt einen bestimmten Treiber. Das größte Problem bei Modems in Klapprechnern ist, dass oft keine geeigneten Treiber verfügbar sind. Dieses Problem ist nicht auf Linux beschränkt: seit dem Erscheinen von Win98/XP sind viele Hersteller verschwunden und es sind für diese alten Modems keine Treiber entwickelt worden, die ab Windows Vista funktionieren, schon gar keine 64bit-Treiber. In diese Kategorie fallen die meisten Diamond-Modems (den Hersteller gibt es nicht mehr), die meisten PCTel-Modems, viele Smartlink-Modems, viele Motorola-Modems, einige USR-Modems sowie einige Modems, die auf Chipsätzen von Conexant und Agere basieren. Linux bietet möglicherweise Treiber für Software-Modems an, aber das ist auf wenige Software-Modems beschränkt und die Treiber sind meist nicht-freie Software. Installation oder Paketierung ist alles andere als einfach. ==== Hardware-Modem ===== Komplette **Hardware-Modems** funktionieren normalerweise problemlos mit Linux, auch Slitaz-GNU/Linux. Slitaz GNU/Linux enthält bereits Treiber für derartige Modems, so dass nichts installiert werden muss. Hardware-Modems können interne Geräte sein (PCI-Einschub), einsteckbar (PCMCIA-Karte, ExpressCard) oder externe Geräte an einem seriellen oder USB-Anschluss. ==== Intern kontra Extern ==== Obwohl die Gleichspannung einer Telefonleitung keine unmittelbare Gefahr für einen Benutzer darstellt, kann das Wechselstrom-Klingelsignal (70-120V) dennoch schmerzhaft sein. Auch sind Telefonleitungen diversen Umgebungseinflüssen ausgesetzt (Blitzeinschäge in der Nähe, Unterschiede im Erdungspotential in Gebäuden, Interferenzen aus Stromkabeln), die mitunter zu Spannungsspitzen in der Telefonleitung führen können, die ein Modem beschädigen können. Es ist einfacher und billiger, ein externes Modem auszutauschen als die Hauptplatine eines Rechners. ===== Modem-Installation ===== ==== Software-Modem ==== Software-Modems funktionieren unter Linux nur, wenn ein passender Treiber installiert wurde. Slitaz bietet einige Pakete mit Treibern: * linmodem-agrsm : Agere Modem-Treiber für 11c11040-Chipsätze * linmodem-intel-536ep : Intel Modem-Treiber für 536EP-Chipsätze * linmodem-intel-537 : Intel Modem-Treiber für 537-Chipsätze * linmodem-slmodem : Treiber für Smartlink-winmodems Wenn Sie den Chipsatz Ihres Modems bestimmt haben, können Sie einen Treiber auswählen, der zu Ihrem Software-Modem passt. Wertvolle Hilfe finden Sie bei: * [[http://www.tldp.org/HOWTO/Modem-HOWTO.html]] * [[http://linmodems.technion.ac.il/Linmodem-howto.html]] * [[http://linmodems.org/]] ==== PCMCIA-Modem ==== Wenn ein PCMCIA-Modem verwendet werden soll, muss ein Treiber für serielle PCMCIA-Geräte installiert werden: # tazpkg get-install linux-dialup Wenn das PCMCIA-Modem eingesteckt wird, wird der Treiber versuchen, das erste freie serielle Gerät zuzuweisen. Mit den folgenden Kommandos kann man feststellen, welches Gerät zugewiesen wurde: # dmesg | tail $ dmesg | tail -3 pcmcia 0.1: pcmcia: registering new device pcmcia0.1 (IRQ: 3) serial_cs 0.1: trying to set up [0x0101:0x0556] (pfc: 0, multi: 1, quirk: (null)) serial8250: ttyS0 at I/O 0x3f8 (irq = 3) is a 16550A ==== Konfiguration des seriellen Ports ==== Alle Modems, Hardware- oder Software-Modems mit einem geeigneten Treiber, werden über einen seriellen Port angesprochen. Der serielle Port ist entweder ein normaler Port an dem Rechner oder Bestandteil einer internen Modem-Baugruppe. In jedem Fall kommuniziert Slitaz-GNU/Linux nur über den seriellen Port mit dem Modem. Einzelplatzrechner akzeptieren bis zu 4 reguläre serielle Ports: \\ ^Num ^ Gerät ^ Port ^ Irq ^ | 1 | /dev/ttyS0 | 0x03f8 | 4 | | 2 | /dev/ttyS1 | 0x02f8 | 3 | | 3 | /dev/ttyS2 | 0x03e8 | 4 | | 4 | /dev/ttyS3 | 0x02e8 | 3 | \\ Software-Modems erzeugen möglicherweise exotische Geräte, wie /dev/ttyAGS3, /dev/536ep, /dev/ttySL0... Um das Modem zu testen, muss zunächst das serielle Gerät konfiguriert werden. Dazu wird //setserial// installiert: # tazpkg get-install setserial Und dann: # setserial /dev/ irq port <0xzz> autoconfig auto_irq mit den richtigen Werten für , irq und port. Dann wird das Paket //minicom// installiert: # tazpkg get-install minicom und minicom gestartet: # minicom -c on /dev/ -o Wenn minicom läuft, AT eingeben. Das Modem sollte mit OK antworten. {{:en:handbook:image:minicom.png|}} Wenn das Modem nicht antwortet, kann ein anderes Gerät versucht werden (es kann aber auch sein, dass das seriellle Gerät schlecht konfiguriert ist). Hilfe findet man bei: * [[http://www.tldp.org/HOWTO/html_single/Serial-HOWTO]] * [[http://www.tldp.org/HOWTO/html_single/Modem-HOWTO]] Wenn die Verbindung mit dem Modem erfolgreich getestet wurde, erleichtert es die künftige Nutzung des Modems, wenn eine symbolische Verknüpfung mit dem seriellen Gerät mit /dev/modem erstellt wird: # ln -s /dev/ttyS0 /dev/modem ===== Modem mit der Telefonleitung verbinden ====== ==== Mit der Telefondose verbinden ==== Das Modem muss mit einer analogen Telefonleitung verbunden sein. In einigen Ländern wird ein landesspezifisches Modemkabel benötigt. Stecker digitaler Telefonanlagen können analogen Telefonsteckern ähnlich sehen, sind aber nicht kompatibel mit dem Modem. Beachten Sie den Unterschied zwischen analogen Telefonanschlüssen und ISDN. Ein analoges Modem kann nicht an eine ISDN-Dose angeschlossen werden und umgekehrt. Durch Anschluss an eine falsche Dose kann das Modem zerstört werden! Achten Sie darauf, das Modemkabel in die richtige Dose zu stecken, wenn Ihr Rechner ein internes Modem und einen Ethernet-Anschluss hat. Sonst könnten Ihre Geräte Schaden nehmen. ==== Standards verschiedener Länder ==== Telefon-Signale (Wählton, Besetztzeichen, usw.) und Gleichspannungswerte sind in jedem Land unterschiedlich. Damit ein Modem richtig darauf reagieren kann, muss es diese erkennen. Damit ein Telefon funktioniert, wird auf der Leitung ein Gleichstrom von 25 bis 35 mA benötigt. In einigen Ländern wird der Gleichstrom zentral in der Vermittlungsstelle reguliert, in anderen dagegen im Telefon, so dass bei falscher Landeseinstellung des Modems zu hoher oder zu niedriger Gleichstrom an das Modem kommt. In beiden Fällen kommt keine zuverlässige Verbindung zustande und bei zu hoher Spannung kann das Modem zerstört werden. Wenn Sie ein Hardware-Modem in dem Land benutzen, in dem Sie es erworben haben, können Sie davon ausgehen, dass es den landesspezifischen Anforderungen genügt. Alte Hardware-Modems erfüllen meist nur die Anforderungen eines bestimmten Landes. Wenn Sie ein Software-Modem benutzen oder in andere Länder reisen, müssen Sie Ihr Modem den landesspezifischen Anforderungen gemäß einrichten. Die meisten gebräuchlichen Modems können so programmiert werden, dass sie in allen möglichen Telefonnetzen benutzt werden können. Kommandos zum Anzeigen oder Einstellen von Ländereinstellungen sind bei jedem Modem oder Hersteller verschieden, so dass Sie im Handbuch Ihres Modems nachsehen müssen. Bei [[de:handbook:pstn:countries|Ländereinstellungen]] können Sie die richtigen Einstellungen finden. ===== Wählverbindung konfigurieren und benutzen ===== Über das Menü Systemwerkzeuge oder mit dem Kommando $ subox netbox kann netbox gestartet werden. ==== Datei ppp-on ==== Dann den Reiter ppp wählen und die Schaltfläche Tune klicken. Am Ende der Datei, /dev/ttyS0 in /dev/modem ändern und die Geschwindigkeit auf 115200 bds setzen. Normalerweise funktionieren diese Einstellungen, es können aber andere Werte erforderlich sein, abhängig von den Modemeinstellungen. # exec /usr/sbin/pppd debug lock modem crtscts /dev/modem 115200 \ asyncmap 20A0000 escape FF kdebug 0 $LOCAL_IP:$REMOTE_IP \ noipdefault netmask $NETMASK defaultroute connect $DIALER_SCRIPT ==== DNS ==== Wenn Sie die Option **usepeerdns** einfügen, werden Sie nach bis zu zwei Adressen von DNS-Servern gefragt. Die vom Partner gelieferten Adressen (wenn vorhanden) werden von der Kommandoprozedur ///etc/ppp/ip-up// verarbeitet und die Datei ///etc/resolv.conf// wird mit den Adresse(n) aktualisiert. Ansonsten kann auch einfach die Adresse eines wohlbekannten DNS-Servers (wie OpenDNS) in ///etc/resolv.conf// eingetragen werden: nameserver 208.67.222.222 nameserver 208.67.220.220 ==== chat-Datei ==== Wenn vor dem Start von ppp eine spezifische Initialisierungsoption an das Modem gesendet werden muss, kann die Datei ///etc/ppp/scripts/ppp-on-dialer// modifiziert werden. Vor OK ATDT$TELEPHONE kann der neue Text eingefügt werden: exec chat -v \ TIMEOUT 3 \ ABORT '\nBUSY\r' \ ABORT '\nNO ANSWER\r' \ ABORT '\nRINGING\r\n\r\nRINGING\r' \ '' \rAT \ 'OK-+++\c-OK' ATH0 \ TIMEOUT 30 \ OK ATL1+GCI=20 \ OK ATDT$TELEPHONE \ CONNECT '' \ ogin:--ogin: $ACCOUNT \ assword: $PASSWORD Diese Datei enthält ein „chat“-Program zur Verbindung mit einem standard UNIX-artigen getty/login. Um den Netzdienstanbieter über einen Wählrechner anzuwählen, müssen meistens die letzten beiden Zeilen entfernt werden: exec chat -v \ TIMEOUT 3 \ ABORT '\nBUSY\r' \ ABORT '\nNO ANSWER\r' \ ABORT '\nRINGING\r\n\r\nRINGING\r' \ '' \rAT \ 'OK-+++\c-OK' ATH0 \ TIMEOUT 30 \ OK ATDT$TELEPHONE \ CONNECT \c Datei speichern! ==== Verbindung aufbauen ==== Geben Sie Ihren Benutzernamen, Ihr Kennwort und die Telefonnummer Ihres Netzdienstanbieters in den entsprechenden Feldern ein und wählen Sie die Schaltfläche Start. Das Modem sollte dann Ihren Netzdienstanbieter anwählen. ==== Testhilfe ==== Da pppd mit der Option //debug// gestartet wurde, werden Diagnosemeldungen ausgegeben. Diese können angesehen werden mit: $ tail -f /var/log/messages Beispielausgabe: $ tail -f /var/log/messages Mar 23 11:25:29 (none) daemon.notice pppd[6240]: pppd 2.4.5 started by root, uid 0 Mar 23 11:25:30 (none) local2.info chat[6242]: timeout set to 3 seconds Mar 23 11:25:30 (none) local2.info chat[6242]: abort on (\nBUSY\r) Mar 23 11:25:30 (none) local2.info chat[6242]: abort on (\nNO ANSWER\r) Mar 23 11:25:30 (none) local2.info chat[6242]: abort on (\nRINGING\r\n\r\nRINGING\r) Mar 23 11:25:30 (none) local2.info chat[6242]: send (rAT^M) Mar 23 11:25:30 (none) local2.info chat[6242]: expect (OK) Mar 23 11:25:31 (none) local2.info chat[6242]: rAT^M^M Mar 23 11:25:31 (none) local2.info chat[6242]: OK Mar 23 11:25:31 (none) local2.info chat[6242]: -- got it Mar 23 11:25:31 (none) local2.info chat[6242]: send (ATH0^M) Mar 23 11:25:31 (none) local2.info chat[6242]: timeout set to 30 seconds Mar 23 11:25:31 (none) local2.info chat[6242]: expect (OK) Mar 23 11:25:31 (none) local2.info chat[6242]: ^M Mar 23 11:25:31 (none) local2.info chat[6242]: ATH0^M^M Mar 23 11:25:31 (none) local2.info chat[6242]: OK Mar 23 11:25:31 (none) local2.info chat[6242]: -- got it Mar 23 11:25:31 (none) local2.info chat[6242]: send (ATZ^M) Mar 23 11:25:31 (none) local2.info chat[6242]: expect (OK) Mar 23 11:25:31 (none) local2.info chat[6242]: ^M Mar 23 11:25:31 (none) local2.info chat[6242]: ATZ^M^M Mar 23 11:25:31 (none) local2.info chat[6242]: OK Mar 23 11:25:31 (none) local2.info chat[6242]: -- got it Mar 23 11:25:31 (none) local2.info chat[6242]: send (ATDT0860922000^M) Mar 23 11:25:31 (none) local2.info chat[6242]: expect (CONNECT) Mar 23 11:25:31 (none) local2.info chat[6242]: ^M Mar 23 11:25:56 (none) local2.info chat[6242]: ATDTxxxxxxx^M^M Mar 23 11:25:56 (none) local2.info chat[6242]: CONNECT