Weiter Zurück Inhalt

3. ADSL

Dieses Kapitel wurde von Bernhard Roessmann<roessmann@gmx.net> zusammengetragen.

Inode Kunden finden hier eine wunderbare Anleitung zur Installation von ADSL unter Linux.

Weiters gibt es von Friedrich Lobenstock <fl@fl.priv.at> ein ADSL rpm, daß Sie von hier abholen können.

3.1 ADSL Grundwissen

Wie funktioniert ADSL unter Linux?

Gar nicht. Warum? Es gibt kein "ADSL", sondern viel mehr gibt es ADSL-Lösungen verschiedener Hersteller mit unterschiedlichen Protokollen. Wer also eine deutsche Beschreibung liest wird damit im österreichischen Netz von wenig anfangen. Deshalb dieses HOWTO: ADSL & Linux.

Was sind PPTP und PPoE?

Sowohl in Österreich wie auch in Deutschland wird für ADSL-Verbindungen "PPP" (Point-to-Point-Protocol) verwendet. Dieses Protokoll ist der Standard für Modemverbindungen. PPtP und PPoE tunneln eine PPP-Verbindung über ein lokales LAN welches im einfachsten Fall nur aus dem ADSL-Modem und dem Arbeitsplatzrechner besteht:

PPoE

PPoE ist das ältere Protokoll ( RFC 2516) und wurde von UUNET/RedBack/RouterWare entwickelt. Es setzt die PPP-Verbindung direkt auf Ethernet, die Verbindung zwischen zwei Ethernet-Ports wird durch die Ethernet-Adressen und einer Session-ID identifiziert. Der größte Nachteil dieses Protokolls ist, daß durch den zusätzlichen Rahmen die maximale Länge der IP-Pakete reduziert wird (geringere MTU).

PPtP

PPtP ist ein in Redmond entwickeltes Protokoll ( RFC 2637) zur Tunnelung einer PPP-Verbindung innerhalb einer IP-Verbindung. Obwohl typischerweise ebenfalls auf einem Ethernet eingesetzt, ist eine PPTP-Verbindung genauso wie jede andere IP-Verbindung nicht an ein bestimmtes Transportmedium gebunden. Der Preis für diese Flexibilität ist allerdings ein erhöhter Overhead. Diese Protokoll wird von den ANTs im österreichischen Netz zur Zeit benutzt. R4 Verschlüsselung wird von den ANTs nicht unterstützt, und damit entfällt auch die Lösung diverser mit dieser Verschlüsselung zusammenhängender Probleme.

Wie ist das österreichische ADSL aufgebaut?

Der Arbeitsplatzrechner wird über ein Twistet-Pair-Kabel mit  RJ-45 Steckern  (1:1) mit der ANT verbunden. Anfangs wurde das A1000, in der Zwischenzeit das Nachfolgemodell Speed Touch(tm) Home verwendet. Dieses Modem setzt PPTP auf PPoA ( RFC 2364) - Point-to-Point-over-ATM um. Dh. die PPP-Verbinung wird am österreichischen Netz über ATM getunnelt. Die ATM-Strecke wird bis zum Internet-Provider geführt, bei diesem endet die PPP-Verbindung.

Wie funktioniert PPTP?

Für den Verbindungsaufbau genügt es den Hostnamen (bzw. die IP-Adresse) der Gegenstelle zu kennen (Default: 10.0.0.138). Innerhalb dieser Verbindung wird nun eine PPP-Verbindung aufgebaut. Patches für bestimmte Hardware-Versionen waren nur beim A1000-Modem notwendig. In Windows-Umgebung wird der Treiber für dieses (und andere) Protokolle als "VPN-Modem" bezeichnet. Für den - eher unwahrscheinlichen Fall - das sich zwischen ADSL-Modem und Rechner auf dem der PPTP-Client läuft, noch eine Firewall befindet, ist zu beachten, daß PPTP neben einer TCP-Verbindung auf Port 1723 auch eine IP-Verbindung mit der Protokoll-ID 47 (GRE) eröffnet; normalerweise befindet sich jedoch ohnehin die Firwall hinter dem PPTP-Clientrechner.

Was ist bei der PPP-Verbindung zu beachten?

Der pppd wird vom pptp-Client automatisch gestartet. Es gibt hier eigentlich nur einen wesentlichen Fallstrick - die Authentifizierung. Das ADSL Netz verwendet hier MS-CHAP (ident MD5-CHAP). Es handelt sich dabei um eine von MS abgewandelte Form des CHAP. Für Linux-Benutzer wesentlich: Es ist eine aktuelle Version von PPP erforderlich, oder ein Patch bei einer älteren Version. Die "debug" Option ist am Anfang sehr nützlich, damit kann man den Fortschritt beim Verbindungsaufbau im syslog (tail -f /var/log/messages) beobachten. Für die MTU ist kein eigener Parameter erforderlich.

Was muß ich als ADSL Kunde besonders beachten?

Da manche ADSL Kunden in den Genuß eines (z. B. 1 GB) Download-Limits gekommen sind, sollten Sie bei allen Einstellungen von sendmail, fetchmail, fetchnews, etc. darüber nachdenken wieviel trafic durch ständiges Abholen von z. B. 50 Newsgroups verursacht wird. Die Kapitel weiter oben (z. B. leafnode, etc.) sind zwar für ADSL User prinzipiell gültig, aber nicht darauf abgestimmt möglichst wenig download-traffic zu verursachen.

Daher alle Einstellungen z. B. in der crontab möglichst restriktiv einstellen, oder gleich aus der crontab aushängen und bei Bedarf von Hand starten. Das ist zwar dann alles nicht besonders elegant, aber es betrifft ja auch nur ADSL Kunden die einen Provider mit Download-Limit gewählt haben.

Sonstiges

Die ANT besitzt über die eigentliche Modemfunktion hinausgehend einige interessante Fähigkeiten - etwa ein einfacher DHCP und DNS-Server mit dem man dem eigenen LAN Adressen und Namen zuweisen kann. Es beherrscht darüber hinaus "Bridging" wie auch mehrere parallele PPP-Verbindungen, beides wird jedoch im ADSL Netz nicht unterstützt, genaueres ist dazu in der dem Modem beiliegenden Beschreibung zu finden.

3.2 Ausgangsannahmen

Der Zustand bevor Sie mit der Installation beginnen sollte folgendermaßen aussehen:

3.3 Ethernet konfigurieren

Entsprechend der Anleitung der eingesetzten Distribution die Netzwerkkarte konfigurieren (SuSE: mit Yast; sonst: ifconfig).

     IP-Adresse: 10.0.0.140
     Subnetmask: 255.255.255.0
     Rechnername: <rechnername>
   

(statt <rechnername> gewünschten Namen verwenden)

In /etc/hosts einen Hostnamen für den Ant vergeben:

     10.0.0.138 alcatel 
   

10.0.0.138 ist übrigens die IP, auf die der ANT werksseitig eingestellt ist. Wem das nicht gefaellt, kann ja mal mit seinem WWW-Browser http://10.0.0.138 probieren :-)

In /etc/resolv.conf die Nameserveradressen eintragen, z.B. für den Provider INODE (Wien):

      nameserver 195.58.160.2
      nameserver 195.58.161.3
   

Oder für den Provider AON:

      nameserver 195.3.96.67
      nameserver 195.3.96.68
   

ACHTUNG!! Bei SuSE stattdessen folgendes in /etc/rc.config eintragen und danach SuSEconfig starten (resolv.conf wird automatisch erzeugt):

INODE (Wien):

     SEARCHLIST="inode.at"
     NAMESERVER="195.58.160.2 195.58.161.3"
   

AON:

     SEARCHLIST="aon.at"
     NAMESERVER="195.3.96.67 195.3.96.68"
   

Neu boooten ;-) (es reicht auch beenden und neustarten aller Netzmodule z. B.: /sbin/init.d/network restart )

Netzwerk testen mit "ping <rechnername>", es sollte in etwa folgende Ausgabe erscheinen:

    64 bytes from 10.0.0.140: icmp_seq=0 ttl=255 time=0.128 ms
    64 bytes from 10.0.0.140: icmp_seq=1 ttl=255 time=0.207 ms
   

ANT testen mit "ping alcatel":

    64 bytes from 10.0.0.138: icmp_seq=0 ttl=15 time=1.464 ms
    64 bytes from 10.0.0.138: icmp_seq=1 ttl=15 time=1.496 ms
   

Der Ping zum Point-to-Point Partner sollte ca. 20 ms dauern (am Abend gelegentlich auch 200ms).

TODO: Die Installation eines eigenen Caching-Name-Servers macht Sinn (eine DNS-Auflösung dauert ansonsten jedes Mal ca. 100ms, liegt das Record im Cache nur ca. 1ms)

3.4 ppp konfigurieren

/etc/ppp/options

In /etc/ppp/options sollte folgendes eingetragen sein:

     noipdefault
     name "<username>"
     noauth
     defaultroute
     replacedefaultroute
   

Anmerkung1: "<username>" ist der Name der einem vom Provider zugeteilt wurde in Anführungsstrichen (z. B. die Teilnehmerkennung bei AON Kunden bzw. Benutzername@provider.at bei allen anderen österreichischen Providern).

Anmerkung2: Im File /etc/ppp/options sollten die folgenden beiden Zeilen eingetragen werden:

    lcp-echo-failure 10
    lcp-echo-interval 10
   
Ein ppp options file das für PPTP / ADSL ANT gedacht ist, findet sich hier :
# /etc/ppp/options
#
# Not every option is listed here, see man pppd for more details.  This file
# is read by the pppd, it is an error when it is not present.
#
# Use the following command to see the active options:
# grep -v ^# /etc/ppp/options | grep -v ^$
#

# The name of this server. Often, the FQDN is used here.
#name <host>

# Enforce the use of the hostname as the name of the local system for
# authentication purposes (overrides the name option).
#usehostname

# If no local IP address is given, pppd will use the first IP address
# that belongs to the local hostname. If "noipdefault" is given, this
# is disabled and the peer will have to supply an IP address.
noipdefault

# With this option, pppd will accept the peer's idea of our local IP
# address, even if the local IP address was specified in an option.
#ipcp-accept-local

# With this option, pppd will accept the peer's idea of its (remote) IP
# address, even if the remote IP address was specified in an option.
#ipcp-accept-remote

# Run the executable or shell command specified after pppd has terminated
# the link.  This script could, for example, issue commands to the modem
# to cause it to hang up if hardware modem control signals were not
# available.
# If mgetty is running, it will reset the modem anyway. So there is no need
# to do it here.
#disconnect "chat -- \d+++\d\c OK ath0 OK"

# Increase debugging level (same as -d). The debug output is written
# to syslog LOG_LOCAL2.
#debug

# Enable debugging code in the kernel-level PPP driver.  The argument n
# is a number which is the sum of the following values: 1 to enable
# general debug messages, 2 to request that the contents of received
# packets be printed, and 4 to request that the contents of transmitted
# packets be printed.
#kdebug n

# noauth means do not require the peer to authenticate itself, this must
# be set if you want to use pppd to connect to the internet. In this case
# *you* must authenicate yourself to the peer(internet provider), so do
# not disable this setting unless you are the dial-in server which where
# the peer has to autenticate to.
noauth

# Use hardware flow control (i.e. RTS/CTS) to control the flow of data
# on the serial port.
crtscts

# Specifies that pppd should use a UUCP-style lock on the serial device
# to ensure exclusive access to the device.
lock

# Use the modem control lines.(is default)
modem
# The opposite: local
#
# Description:
# Don't use the modem control lines.  With this option, pppd will ignore the
# state of the CD (Carrier Detect) signal from the modem and will not change
# the state of the DTR (Data Terminal Ready) signal.
#
# You need to disable modem and enable local if you want to connect to anoter
# system without using a modem:
#local

# async character map -- 32-bit hex; each bit is a character
# that needs to be escaped for pppd to receive it.  0x00000001
# represents '\x01', and 0x80000000 represents '\x1f'.
# To allow pppd to work over a rlogin/telnet connection, ou should escape
# XON (^Q), XOFF  (^S) and ^]: (The peer should use "escape ff".)
#asyncmap  200a0000
asyncmap 0

# needed for some ISDN Terminaladaters, namely ELSA, those seem to have
# problems with asyncmap negotiation, so you can turn off this procedure
# in case your ISDN box has trouble with it, by enabling this option.
# You have to disable the asyncmap <x> option to be sure to have it
# active. If you use wvdial, set the ISDN parameter in /etc/wvdial.conf
# instead.
#default-asyncmap

# Set the MRU [Maximum Receive Unit] value to <n> for negotiation.  pppd
# will ask the peer to send packets of no more than <n> bytes. The
# minimum MRU value is 128.  The default MRU value is 1500.  A value of
# 296 is recommended for slow links (40 bytes for TCP/IP header + 256
# bytes of data). The value 1492 is for DSL connections (PPP Default -
# PPPoE Header: 1500 - 8 = 1492)
# mru 1492

# Set the MTU [Maximum Transmit Unit] value to <n>. Unless the peer
# requests a smaller value via MRU negotiation, pppd will request that
# the kernel networking code send data packets of no more than n bytes
# through the PPP network interface. The value 1492 is for DSL connections
# (PPP Default - PPPoE Header: 1500 - 8 = 1492)
# mtu 1492

# Set the interface netmask to <n>, a 32 bit netmask in "decimal dot"
# notation (e.g. 255.255.255.0).
#netmask 255.255.255.0

# Don't fork to become a background process (otherwise pppd will do so
# if a serial device is specified).
nodetach

# If this option is given, pppd will send an LCP echo-request frame to
# the peer every n seconds. Under Linux, the echo-request is sent when
# no packets have been received from the peer for n seconds. Normally
# the peer should respond to the echo-request by sending an echo-reply.
# This option can be used with the lcp-echo-failure option to detect
# that the peer is no longer connected.
lcp-echo-interval 30

# If this option is given, pppd will presume the peer to be dead if n
# LCP echo-requests are sent without receiving a valid LCP echo-reply.
# If this happens, pppd will terminate the connection.  Use of this
# option requires a non-zero value for the lcp-echo-interval parameter.
# This option can be used to enable pppd to terminate after the physical
# connection has been broken (e.g., the modem has hung up) in
# situations where no hardware modem control lines are available.
lcp-echo-failure 4

# Send up to 60 LCP configure-request during negotiation. With a value
# of 2 for lcp-restart below, this might take up to 2 minutes.
lcp-max-configure 60

# Resend unanswered LCP requests after 2 seconds.
lcp-restart 2

# Specifies that pppd should disconnect if the link is idle for n seconds.
idle 600

# Specifies the maximal number of attempts to connect to the server. This
# is useful for dial on demand. Default value is 10.
#maxfail 3

# Disable the IPXCP and IPX protocols.
noipx

# In the file /etc/ppp/filters are some active-filter rules. See man pppd
# and man tcpdump for more informations.
file /etc/ppp/filters

#-------------------------------------------------------------------------
# The next two options are only interesting for you if you are admin of
# a system with other users that use ppp, and those users are normally
# never allowed to add default route, or you do not want users to
# replace the default route.
#-------------------------------------------------------------------------

# enable this to prevent users from attempting to add a default route.
# Use this option with caution: If the user needs to use a program like
# wvdial, he will not be able to connect because wvdial forces defaulroute
# but this is rejected by this option and the user will not be able to
# connect to the internet.
#nodefaultroute

# enable this to prevent users from replacing an existing default route.
#noreplacedefaultroute

#-------------------------------------------------------------------------
# All options below only make sense if you configure pppd to be a dial-in
# server, so don't touch these if you want dial into your provider with
# PPP!
#-------------------------------------------------------------------------

# Set the assumed name of the remote system for authentication purposes
# to <n>.
#remotename <n>

# Add an entry to this system's ARP [Address Resolution Protocol]
# table with the IP address of the peer and the Ethernet address of this
# system. {proxyarp,noproxyarp}
#proxyarp

# Use the system password database for authenticating the peer using
# PAP. Note: mgetty already provides this option. If this is specified
# then dialin from users using a script under Linux to fire up ppp wont work.
#login

# Specify which DNS Servers the incoming Win95 or WinNT Connection should use
# Two Servers can be remotely configured
#ms-dns 192.168.1.1
#ms-dns 192.168.1.2

# Specify which WINS Servers the incoming connection Win95 or WinNT should use
#ms-wins 192.168.1.50
#ms-wins 192.168.1.51
   

/etc/ppp/pap-secrets

In /etc/ppp/pap-secrets sollte folgendes eingetragen sein:

    <username> * <password> *
   

Damit auch bei CHAP-Authentifizierung alles klappt, tippen Sie:

       cp /etc/ppp/pap-secrets /etc/ppp/chap-secrets
   

Damit wird dann sowohl für PAP, als auch für CHAP ein korrekter Eintrag mit Ihren Providerdaten gefunden. Achten Sie darauf, daß Sie danach Änderungen immer in beiden Files führen, damit Sie keine bösen Überraschungen erleben, wenn dann doch das Anmeldeverfahren durch Ihren Provider gewechselt wird.

Ihr chap-secrets und pap-secrets könnte dann so aussehen :

# Secrets for authentication using CHAP
# client    server    secret            IP addresses
"yourlogin@YOURPROVIDER"    *    "yourpassword"    *
   

Anmerkung1: <username> ist der Name der einem vom Provider zugeteilt wurde (z. B. die Teilnehmerkennung bei AON Kunden bzw. Benutzername@provider.at bei allen anderen österreichischen Providern) ohne Anführungsszeichen und <password> ist das Zugangspaßwort das Ihnen vom Provider zugeteilt wurde.

Anmerkung2: Nextra und Netway Anmerkung: August Hörandl mußte für seinen Nextra-Zugang in pap-secrets die Zeile

    * * <password> *
   
eintragen, um eine Verbindung zustande zu bekommen. Sollten Sie bei der Anmeldung Probleme haben, könnte das eventuell helfen. Speziel z. B. NAK nach einem AuthReq, sollte durch diese Änderung behoben werden können.

Anmerkung3: Zimmermann Thomas <t.zimmermann@tz-com.at> berichtete am 13.8. :

UTA hat vor ca. 1 Woche alle User von PAP auf CHAP umgestellt. D.H. es
geht nur mehr mit der chap-secrets. Die pap-secrets sollte man loeschen.

Folgendes Problem tritt auf:
Kunde wird bei UTA fuer die Einwahl gesperrt (wenn mit PAP authentifiziert)
Nach Anruf des Kunden wird dieser wieder freigeschaltet, muss sich dann
aber das 1. mal richtig authentifizieren, sonst wird er wieder gesperrt!
Danach sind wieder 20 Fehlversuche moeglich.
   

3.5 Hintergrund warum es Unterschiede zwischen AON und z. B. inode gibt:

Bei alle Providern (außer AON) ist es wichtig, daß der Name vollständig eingegeben wird, und zwar inkl. dem Teil hinter "@", da die Authentifizierung zuerst über einen Radius - Proxy bei der TA läuft, der erst mit dieser Angabe den richtigen Tunnel zum jeweiligen Provider öffnet.

Bei Inode wäre das also: username@inode.at

Besten Dank an Alois Martin Hopfer <louis@graz.inode.at> einen der Sysadmins von http://www.inode.at für die Überarbeitung und den Test dieses Kapitels.

3.6 pptp installieren

Den aktuellen pptp client finden Sie unter http://pptpclient.sourceforge.net/ (MPPE benötigen Sie für ADSL nicht.)

pptp ausführbar machen

Sollten Sie Probleme mit pptp haben, bitte überprüfen Sie ob die Datei pptp ausführbar ist (eXecute Rechte auf dem File gesetzt). Kontrollieren Sie mit

      ls -al /usr/sbin/pptp
     
ob das x in den Rechten für alle owner,group,others gesetzt ist. Sollte das nicht der Fall sein, oder sollten Sie daran zweifeln, dann geben Sie folgendes Kommando ein:
      chmod a+x /usr/sbin/pptp
     
Bedenken Sie, daß die Kommandos nur dann funktionieren, wenn Sie Ihren pptp in das Directory /usr/sbin kopiert haben.

Dieses Kapitel wurde spendiert von Aljosha <Aljosha.judmayer@aon.at>

pptp und BSD

Von Martin Großhauser <csad2635@uibk.ac.at> stammt der Hinweis, daß der BSD-user zum betrieb von pptp den kernel neu kompilieren muss, und die option "pseudo-device GRE" abschuschalten ist.

3.7 Verbindung testen

Testen des Verbindungsaufbau:

     pptp alcatel
   
Verbindung wieder abbauen
     killall pppd
     killall pptp
   

Wenn die Verbindung steht, sollte ifconfig etwa folgendes ausgeben:

     ppp0      Link encap:Point-to-Point Protocol  
               inet addr:10.66.8.39  P-t-P:172.19.90.132  Mask:255.255.255.255
               UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
               RX packets:346 errors:0 dropped:0 overruns:0 frame:0
               TX packets:352 errors:0 dropped:0 overruns:0 carrier:0
               collisions:0 txqueuelen:10 
   

3.8 Automatisches Login/Logout

Nach erfolgreicher Ausführung der nun folgenden Schritte loggt sich das System in Zukunft immer selbständig beim Hochfahren beim Provider ein (bei erreichen des runlevel 3). ALLE Benutzer haben ab dann Zugriff auf das Internet, auch wenn sie keine root-Rechte haben. Beim Niederfahren des Systems (runlevel <3) wird automatisch ausgeloggt. Die Angaben beziehen sich auf SuSE!

Folgende Zeile ins File /etc/rc.config eintragen:

    ADSL="yes"
   

Nun das SuSE-Konfigurationsskript aufrufen (Schreibweise beachten!):

    SuSEconfig
   

Folgendes Skript unter dem Namen adsl nach /sbin/init.d (oder wo immer in Ihrer Distribution die Startscripts liegen (SUSE < 7.1 /sbin/initd, SUSE >= 7.1 /etc/init.d, RedHat /etc/rc.d, usw.) kopieren. Das File mit chmod a+x adsl ausführbar machen.

Nach /sbin/init.d/rc3.d wechseln und 2 symbolische Links erzeugen

     ln --symbolic ../adsl K18adsl
     ln --symbolic ../adsl S23adsl
   
Anmerkung 1: Das HOWTO wurde zum Großteil unter SUSE 6.x geschrieben. Sollten die Links K18 oder S23 schon vergeben sein, dann suchen sie bitte nach der nächsten freien K(kill) oder S(tart) Nummer im Directory /sbin/init.d/rc3.d . Sollte die Start/Kill-Nummer schon vergeben sein, dann suchen Sie eine freie und passen die obigen ln -s Kommandos entsprechend an. Hier die ls Kommandos:
     ls -alp /sbin/init.d/rc3.d/K18*
     ls -alp /sbin/init.d/rc3.d/S23*
   
Anmerkung 2: Für Redhat User sei hier noch angemerkt, daß die Startscripts bei Redhat in /etc/rc.d und nicht unter /sbin/init.d liegen.

So nun sollten wir mit dem auto-login-logout fertig sein. Mit root-Rechten kann man das adsl-Skript auch händisch aufrufen. Folgene Parameter sind möglich:

Fedora

Von hans-peter.lackner@netstruct.at (Hans-Peter Lackner) stammt die neue Version des adsl-Skripts, dass auch unter Fedora funktioniert (getestet mit Version Fedora Core 2 final)

#! /bin/sh
#
# chkconfig: 2345 26 74
# description: for starting adsl
#
# Author: B.R. Jan 07 2000
# modified by StM - Mar 27 2003
#
# /sbin/init.d/adsl
#


. /etc/rc.d/init.d/functions

base=${0##*/}
link=${base#*[SK][0-9][0-9]}

test $link = $base && ADSL=yes
test "$ADSL" = yes || exit 0

test -x /usr/sbin/pptp || exit 0

return=$rc_done
case "$1" in
    start)
        echo -n "Login ADSL..."
        touch /var/run/adsl_up
        daemon /usr/sbin/pptp alcatel || return=$rc_failed
        echo -e "$return"
        ;;
    stop)
        echo -n "Logout ADSL..."
        rm -rf /var/run/adsl_up
        status /usr/sbin/pppd || return=$rc_failed
        killproc /usr/sbin/pptp || return=$rc_failed
        echo -e "$return"
        ;;
    restart)
        $0 stop && $0 start || return=$rc_failed
        ;;
    reload)
        ;;
    status)
        echo -n "Checking for connection to ADSL... "
        status /usr/sbin/pptp && echo "online" || echo "offline"
        ;;
    probe)
        ;;
    *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac

test "$return" = "$rc_done" || exit 1
exit 0
   

3.9 Speed Touch(tm) USB

Mit freundlicher Erlaubnis von tuxx@tuxx-home.at (Alexander Griesser) dürfen wir hier das AT-Speedtouch-HOWTO zur Verfügung stellen.

Die Beschreibung von Harald Müller (Gonzo)<gweb@aon.at> erklärt einfach und übersichtlich den Setup eines SpeedTouch USB unter Linux.

Die folgenden Links bringen sie zu den Treibern für das Speed Touch(tm) USB-Modem : http://www.alcatel.com/consumer/dsl/dvrreg_lx.htm

Eine Anleitung zu Configuring the Speedtouch USB ADSL Modem . Hier wird erklärt was alles zu tun ist um das Speedtouch USB unter Linux zum Laufen zu bringen.

Linux Driver page for SpeedTouch USB ADSL Modem

Inode USB Modem Zyxel Prestige Internetverbindung

Von Filip Ljubas <f.ljubas@inode.at> wurde uns dieses Kapitel zur Verfügung gestellt. Es beschreibt die Installation eines USB Modems Zyxel Prestige 630-41 mit Inode xDSL@home

http://eciadsl.flashtux.org/

Unter http://eciadsl.flashtux.org/ ist beschrieben wie man das Modem installiert.

Wichtige Punkte sind:

Bei weiteren Problemen/Fragen könnt ihr das Forum der Seite verwenden und auch der IRC Channel (alles auf http://eciadsl.flashtux.org/ angeführt)!

Nachdem ihr dass Modem installiert habt und es sich auch richtig synchronisiert (beide Lämpchen leuchten und sonst keine Fehlermeldungen), könnt ihr versuchen eine Verbindung aufzubauen. Doch bevor ihr dass könnt, müsst ihr Punkt 2 erledigen:

http://www6.inode.at/support/internetzugang/xdsl_student/konfiguration_ethernet_linux.html

Vom Link http://www6.inode.at/support/internetzugang/xdsl_student/konfiguration_ethernet_linux.html das tar.gz Packet herunteladen und installieren. Eine Beschreibung befindet sich ebenfalls auf dieser Inode-Seite. Dabei geht man genau so vor, wie wenn man ein Ethernet Modem hätte. Bei der Netzwerkkarte gebt ihr aber an: tap0

tap0 ist die Schnittstelle eures USB Modems (Es ist möglich, dass euere USB Schnittstelle anders lautet).

Der Rest ist gleich, wie beim Ethernet Modem. Auch die Verbindung stellt ihr her, wie von Inode beschrieben.

Verwendete Distribution:

3.10 xDSL (von inode)

Von Bernhard Roessmann <roessmann@gmx.net> stammt diese Anleitung für ein inode@student xDSL login/logout script. Der "normale" inode-Zugang ist bei inode wunderbar beschrieben und erklärt.

Es gelten für dieses Kapitel folgende Anmerkungen:

Das Skript (siehe am Ende dieses Kapitels) kennt 3 Aufrufmoeglichkeiten:

Weiters habe ich einen cronjob (in /etc/crontab) installiert, der jede Minute nachschaut, ob die Verbindung steht (ohne dass Traffic produziert wird!) und gegebenenfalls das Skript aufruft.

* * * * *   root    /sbin/start-stop-daemon --start --quiet --test --exec /usr/sbin/pptp && /etc/init.d/xdsl start
   

xDSL Script von Bernhard Roessmann

Hier nun das Script von Bernhard Roessmann:

#!/bin/sh
# xdsl login/logout
# Bernhard Roessmann 2002-12-29

MYSELF="$0"
CMD="$1"
ANT="10.0.0.138"

test -f /usr/sbin/pptp || exit 1
if test ! -s /var/lib/dhcp/dhclient.leases
then
 echo "no dhcp lease available"
 logger $MYSELF": no dhcp lease available"
 exit 1
fi

case $CMD in
start)  if ! start-stop-daemon --start --quiet --test --exec /usr/sbin/pptp >>/dev/nul
        then
            echo "already online"
            exit 1
        fi

        echo -n "logging in"
        logger $MYSELF" login..."

        #Man nehme die grobe Kelle ;-) fuer die Gateway-IP
        set $(grep "option routers" /var/lib/dhcp/dhclient.leases | tail -1 | cut -f5 -d' ' | tr -d ";")
        ROUTER="$1"
        if route -n | grep $ANT >>/dev/nul
        then
            /sbin/route del $ANT
        fi
        /sbin/route add $ANT gw $ROUTER

        start-stop-daemon --start --quiet --exec /usr/sbin/pptp $ANT >>/dev/nul &
        for foo in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
        do
            echo -n .
            sleep 1
            if ifconfig | grep ppp0 >>/dev/nul
            then
                #Nochmal die grobe Kelle ;-) fuer die richtige default-Route
                set $(ifconfig ppp0 | grep P-t-P | tr -s [:blank:] | cut -f4 -d' ' | cut -b7-)
                GATEWAY="$1"
                /sbin/route del default
                /sbin/route add default gw $GATEWAY
                echo "successful"
                logger $MYSELF" login: successful"
                exit 0
            fi
        done
        echo "failed"
        logger $MYSELF" login: failed"
        start-stop-daemon --stop --quiet --exec /usr/sbin/pptp >>/dev/nul
        route del $ANT
        exit 1
        ;;
stop)   if start-stop-daemon --start --quiet --test --exec /usr/sbin/pptp >>/dev/nul
        then
            echo "already offline"
            exit 1
        fi

        echo -n "logging out"
        logger $MYSELF" logout..."

        start-stop-daemon --stop --quiet --exec /usr/sbin/pptp >>/dev/nul
        for foo in 1 2 3 4 5
        do
            echo -n .
            sleep 1
            if ifconfig | grep ppp0 >>/dev/nul
            then
                continue
            else
                echo "successful"
                logger $MYSELF" logout: successful"
                route del $ANT
                exit 0
            fi
        done
        echo "failed"
        logger $MYSELF" logout: failed"
        exit 1
        ;;
status) if ifconfig | grep ppp0 >>/dev/nul
        then
            echo "online"
        else
            echo "offline"
        fi
        exit 0
        ;;
reload|force-reload)
        ;;
*)      echo "Usage: $MYSELF start|stop|status"
        exit 1
        ;;
esac
   

xDSL Script von Wolfgang Hackl

Wolfgang Hackl <wolf.hackl@gmx.at> hat festgestell:

Das von Inode zur Verfügung gestellte Script hat leider ein paar Macken (dürfte auf einer älteren Distribution entwickelt worden sein?). Wesentlich war allerdings, daß die Routen nicht richtig gesetzt wurden, d. h. es wurde eine Verbindung aufgebaut, über die nichts geschickt wurde. Ich habe das Script abgeändert und mittlerweile ist es auch auf mehreren Distributionen im Einsatz, weil ich auf Debian Woody umgestellt habe. Ein Kollege hat das Script auch auf RedHat in Verwendung, weil er mit der Inode-Anleitung auch nicht zurechtgekommen ist.

Und hier nun das Script von Wolfgang Hackl <wolf.hackl@gmx.at>

#!/bin/sh
# /etc/init.d/xdsl
base=${0##*/}
link=${base#*[SK][0-9][0-9]}
test $link = $base && XDSL=yes
test "$XDSL" = yes || exit 0
test -x /usr/sbin/pptp || exit 0

GATEWAY="`/sbin/route -n|/bin/grep "^0.0.0.0"|/usr/bin/cut -c17-32`"

case "$1" in
start)
        echo -n "Connecting to XDSL@inode"
        route del default eth1
        route add -host 10.0.0.138 eth1
        /usr/sbin/pptp inode defaultroute
        cp /etc/resolv.conf.bak /etc/resolv.conf
        echo -e "$return"
;;
stop)
        echo -n "Disconnecting from XDSL@inode"
        killall -9 /usr/sbin/pppd
        killall -9 /usr/sbin/pptp
        /sbin/route del -host 10.0.0.138
        echo -e "$return"
;;
restart)
        $0 stop && $0 start
;;
reload)
;;
status)
        echo -n "Checking for XDSL connection: "
        STATE=`ps aux|grep pptpd|grep -v grep`
        if [ X$STATE = "X1" ]
        then
                echo "online"
        else
                echo "offline"
        fi
;;
*)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac
exit 0
   

xDSL Script von Wolfgang Hackl für Einwahl über PPPoE

Wolfgang Hackl <wolf.hackl@gmx.at> hat das folgende Script zur Verfügung gestellt, mit dem man bei Inode XDSL über PPPoE einwählen kann. Der Zugang wurde mit pppoeconf eingerichtet.

 #!/bin/sh
export PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin

case "$1" in
start)
        echo -n "Connecting to XDSL@inode"
        route del default eth1
        /usr/bin/pon dsl-provider defaultroute
;;
stop)
        echo -n "Disconnecting from XDSL@inode"
        /usr/bin/poff dsl-provider
        killall -9 pppd
;;
restart)
        $0 stop && $0 start
;;
status)
        echo -n "Checking for XDSL connection: "
        ifconfig ppp0 2>&1 > /dev/null
        STATE=`echo $?`
        if [ X$STATE = "X0" ]
        then
                echo "online"
        else
                echo "offline"
        fi
;;
*)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac
   

xDSL Einwahl bei Inode

Von Jacob Rief <jacob.rief(at)gmx.at> stammt dieses Kapitel

Sicherstellen, dass die RPM-Pakete dhclient, ppp und pptp installiert sind. pptp ist nicht in der Standard-Distribution vorhanden, man muss es also gegebenenfalls nachinstallieren, z.B. von http://pptpclient.sourceforge.net/

Die Netzwerkeinstellungen müssen auf DHCP eingestellt sein, die Datei /etc/sysconfig/network-scripts/ifcfg-eth0 sollte wie folgt aussehen

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
   
Nach einem Netzwerk neustart
# /etc/init.d/network restart 
   
sollten das Ethernet-Interface eine IP-Adresse zugewiesen bekommen.

Dies kann man wie folgt überprüfen.

# /sbin/ifconfig
eth0      Protokoll:Ethernet  Hardware Adresse 00:11:22:33:44:55
          inet Adresse:10.89.0.250  Bcast:10.89.255.255  Maske:255.255.0.0
          inet6 Adresse: fe80::230:1bff:feb6:4426/64 Gültigkeitsbereich:Verbindung
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:12545 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9365 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:1000
          RX bytes:6011628 (5.7 MiB)  TX bytes:1168102 (1.1 MiB)
          Interrupt:10 Speicher:e8020000-0

lo        Protokoll:Lokale Schleife
          inet Adresse:127.0.0.1  Maske:255.0.0.0
          inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1698 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1698 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:0
          RX bytes:2312190 (2.2 MiB)  TX bytes:2312190 (2.2 MiB)
   
Nun muss dhclient noch dazu gebracht werden, dass auch der ppp-Tunnel mittels pptp aufgebaut wird. Hierzu muss die Datei /etc/dhclient-exit-hooks erstellt werden:
MODIP="10.0.0.138"
if [ x$reason = xBOUND ] || [ x$reason = xRENEW ] || \
  [ x$reason = xREBIND ] || [ x$reason = xREBOOT ]; then
  route del default 2>/dev/null
  route del -host $MODIP 2>/dev/null
  for route in $new_routers; do
    route add -host $MODIP gw $route
  done
  pptp $MODIP
  return 0
fi
   

Jetzt muss nur noch der ppp-Daemon konfiguriert werden. In der Datei /etc/ppp/options

lock
name loginame@home
defaultroute
noipdefault
noauth
asyncmap 0
   
ersetzt man loginname@home mit dem Inode-Loginnamen.

In diesen beide Dateien trägt man den Loginnamen und dass Inode-Passwort ein: /etc/ppp/chap-secrets und /etc/ppp/pap-secrets

"loginname@home" * "password"
   

Nach einem weiteren Netzwerk neustart, sollte mittels pptp ein ppp-Tunnel zum Inode Server aufgebaut werden. Dies kann mittels ifconfig überprüft werden.

# /sbin/ifconfig
<...snip...>
ppp0      Protokoll:Punkt-zu-Punkt Verbindung
          inet Adresse:83.64.19.245  P-z-P:62.99.171.103  Maske:255.255.255.255
          UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:6977 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6599 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:3
          RX bytes:5376573 (5.1 MiB)  TX bytes:614146 (599.7 KiB)
   
Für Fragen und Anregungen bin ich unter Jacob Rief <jacob.rief(at)gmx.at> erreichbar.

3.11 Anmerkungen

3.12 ADSL Wiedereinwahl Script

Variante adsl.sh

Von Roland Seuhs <roland@wertkarten.net> (Hier gibts Rolands Homepage) stammt das folgende Script adsl.sh. Dieses Script verwendet Roland um sich erneut einzuwählen, sollte die Verbindung abbrechen.

Im Script sind die IP-Adressen eventuell zu korrigieren, da diese von Provider zu Provider unterschiedlich sein können.

(Und natürlich das chmod a+x adsl.sh nicht vergessen, damit das Script auch ausführbar ist).

#!/bin/sh

LOGFILE=/var/log/adsl.log

Firewall()
{
IPCHAINS=/sbin/ipchains

#INET_DEV=$3
#INET_IP=$2
INET=0.0.0.0/0

#LNET_DEV=eth0
#LNET_IP=192.168.0.4
#LNET=192.168.0.0/24
LNET_DEV=$2
LNET=$3
LNET_IP=$4

INET_DEV=$5
INET_IP=$6

INET_DEV2=eth0
INET_IP2=10.0.0.140


#***********************************

case "$1" in
    start)
#        route add default $INET_DEV

        echo Inet-Dev: {INET_DEV} Inet-IP: {INET_IP}

# flush all rules
#       $IPCHAINS -F
        $IPCHAINS -F input
        $IPCHAINS -F output
# set default policies
        $IPCHAINS -P input      DENY
        $IPCHAINS -P output     DENY
#       $IPCHAINS -P forward    DENY

        # INPUT-chain
        # full access for LAN
        #       $IPCHAINS -A input -i ${LNET_DEV}       -s ${LNET}              -d ${INET} -j ACCEPT
        # no IP spoofers wanted (log that)
        $IPCHAINS -A input -i ${INET_DEV}       -s ${LNET}              -d ${INET} -j DENY -l
        #       $IPCHAINS -A input -i ${INET_DEV2}      -s ${LNET}              -d ${INET} -j DENY -l
        # turn on ports from 1023+
        # ACHTUNG! ssh funktioniert nur noch mit der Option -P !!!
        echo 1023+
        $IPCHAINS -A input -i ${INET_DEV} -p tcp -s ${INET}   -d ${INET_IP}/32 1023:65535  -j ACCEPT
        $IPCHAINS -A input -i ${INET_DEV} -p udp -s ${INET}   -d ${INET_IP}/32 1023:65535  -j ACCEPT
        # turn on ssh
        echo turn on ssh
        $IPCHAINS -A input -i ${INET_DEV} -p tcp -s ${INET}    -d ${INET_IP}/32 22 -j ACCEPT
#        $IPCHAINS -A input -i ${INET_DEV} -p tcp -s ${INET}             -d ${INET_IP}/32 80 -j ACCEPT

#       $IPCHAINS -A input -i ${INET_DEV2} -p tcp -s ${INET}            -d ${INET_IP2}/32 22 -j ACCEPT


        # ICMP answers allowed
        $IPCHAINS -A input -i ${INET_DEV} -p icmp -s ${INET}            -d ${INET_IP}/32        -l -j ACCEPT
        # local interface OK
        $IPCHAINS -A input -i lo        -j ACCEPT
        $IPCHAINS -A input -l

        $IPCHAINS -A input -i ${LNET_DEV} -j ACCEPT

#       $IPCHAINS -A input -i ${INET_DEV} -j ACCEPT
        $IPCHAINS -A input -i ${INET_DEV2} -j ACCEPT


# OUTPUT-chain
        $IPCHAINS -A output -i ${LNET_DEV}      -s ${INET}      -d ${LNET} -j ACCEPT
# LAN via ppp reachable??
        $IPCHAINS -A output -i ${INET_DEV}      -s ${INET}      -d ${LNET} -j DENY -l
# trash unmasked packets
        $IPCHAINS -A output -i ${INET_DEV}      -s ${LNET}      -d ${INET} -j DENY
# trash SMB/NBD packets.
#       $IPCHAINS -A output -i ${INET_DEV} -p tcp -s ${INET} 137:139    -d ${INET} -j DENY -l
#       $IPCHAINS -A output -i ${INET_DEV} -p udp -s ${INET} 137:139    -d ${INET} -j DENY -l
# masqd, INET is dest -> ok
        $IPCHAINS -A output -i ${INET_DEV}      -s ${INET_IP}/32        -d ${INET}      -j ACCEPT
        $IPCHAINS -A output -i ${INET_DEV2}     -s ${INET_IP2}/32       -d ${INET}      -j ACCEPT
# local interface ok
        $IPCHAINS -A output -i lo       -j ACCEPT
#log anything else
        $IPCHAINS -A output -l

        $IPCHAINS -A output -i ${LNET_DEV} -j ACCEPT

#       $IPCHAINS -A output -i ${INET_DEV} -j ACCEPT
        $IPCHAINS -A output -i ${INET_DEV2} -j ACCEPT

        # FORWARD-chain
        # masquerade ip-addr. local -> inet
        #       $IPCHAINS -A forward -i ${INET_DEV} -s ${LNET} -d ${INET} -j MASQ
        #       $IPCHAINS -A forward -l
                ;;
    stop)
#        route del default
#        $IPCHAINS -F
        $IPCHAINS -P input   ACCEPT
        $IPCHAINS -F input
#       $IPCHAINS -P forward ACCEPT
        $IPCHAINS -P output  ACCEPT
        $IPCHAINS -F output
                ;;
    *)
    echo "Usage: $0 {start|stop} <LAN device> <LANet> <LAN IP> <Internet device> <Internet IP>"
    return 1
esac

return 0
}

verbinden()
{
        echo Verbindung aufbauen
        killall -w pptp
        rm -rf /var/run/pptp/*
        pptp 10.0.0.138 10.0.0.140: >> /tmp/adsl.output &
        sleep 40

        IPNummer=`/sbin/ifconfig | grep -2 ppp | grep addr | cut -f2 -d: | \
                 tr " " : | cut -f1 -d:`
        if ping -c 1 $IPNummer
        then
                # Alles OK
                echo
                echo alles OK, Verbindung steht!
                echo `date` Verbindung steht: $IPNummer >> $LOGFILE
                # Achtung! Firewall argumente vorher überprüfen!
                Firewall start eth1 192.168.0.0 192.168.0.1 `/sbin/ifconfig | \
                         grep ppp | tr " " : | cut -f1 -d:` $IPNummer
        else
                sleep 10
                echo
                echo `date` Einwahl fehlgeschlagen, versuche es nochmal
                echo `date` Einwahl fehlgeschlagen, versuche es nochmal >>  $LOGFILE
                killall pptp
        fi
}


echo "Skript für österreichische ADSL Provider Anbindung"
echo " (c) Roland Seuhs 2000"
echo "Dieses Skript versucht eine ständige Internetverbindung aufrecht zu erhalten."
echo "Wenn alles OK ist, schreibt es Punkte an die Standardausgabe"
while true
do
        if /bin/ping -c 1 dns1 > /dev/null 2> /dev/null
        then
                echo -n .
        else
                if /bin/ping -c 1 dns2 > /dev/null 2> /dev/null
                then
                        echo -n .
                else
                        echo
                        echo baue Verbindung auf
                        #date >> /root/Verbindung.log
                        verbinden
                        sleep 80 # Das kann dauern, bis die Verbindung steht ;-)
                fi
        fi
        sleep 30
done 
   

Sollte obiges Script nicht funktionieren, sei noch angemerkt neuerdings heißt es:

   pptp 10.0.0.138 --localbind 10.0.0.140
   
anstatt wie bisher
   pptp 10.0.0.138 10.0.0.140:
   

Variante ip-down

Von Dieter WERNER <d_werner@gmx.net> stammt die folgende Variante das Wiedereinwahlproblem zu lösen.

Um nicht ständig PINGs mit dem Provider austauschen zu müssen scheint am einfachsten die Verwendung von /etc/ppp/ip-down (bei SuSE), das sowieso ausgeführt wird wenn die PPP Verbindung abbricht. Mit dem Script adsl im Kapitel Automatisches Login/Logout. läßt sich das schön realisieren:

Einfach im "start" Zweig die Zeile

    touch /var/run/adsl_up
   

einfügen und im "stop" Zweig ein

    rm -f /var/run/adsl_up
   
einfügen.

Dann noch in /etc/ppp/ip-down (oder bei SuSE /etc/ppp/ip-down.local) im "...down" Zweig die Zeile

    test -f /var/run/adsl_up && adsl restart
   

Die entsprechende Zeile sieht so aus (die "sleep" sollen sicherstellen, dass die alte Verbindung komplett abgebaut ist):

    test -f /var/run/adsl_up && (/usr/bin/killall pppd;sleep 5;/usr/bin/killall pptp;sleep 15;/sbin/startproc /usr/local/sbin/pptp alcatel)
   

Gegenüber der ping Lösung hat diese Lösung den Vorteil, dass man sich "Netzwerklast" und einen Prozeß spart und vor allem dass der neue Verbindungsaufbau direkt durch den Verbindungsabbau getriggert wird.

Variante direkt in der cron-tab

Von Martin Großhauser <csad2635@uibk.ac.at> stammt die Idee, das Erkennen der ausgefallenen Leitung direkt in der crontab zu erkennen und dort direkt zu beheben. Hierzu fügen Sie in der Datei /etc/crontab die nachfolgende Zeile ein. Die Zeile teilt dem cron-dämon mit, jede Minute einen ping auf die angegebene Adresse auszuführen. Im Falle das dieser Ping mit Fehler endet, wird das Script adsl mit dem Parameter reconnect aufgerufen.

    0-59 * * * * root ping -c 1 ip.ad.res.se || adsl reconnect
   
Nachteil: sollte der gepingte Rechner nicht erreichbar sein, dann wird jede Minute die adsl-Verbindung frisch aufgebaut. Gegenmaßnahme: suchen Sie einen Server von dem Sie sicher sind, daß wenn der nicht da ist, sie höchst wahrscheinlich nicht mehr weiterarbeiten möchten und Ihnen dieser "Nebeneffekt" damit egal ist.

Dieses Kapitel wurde eingefügt, da lt. Martin Großhauser die anderen Varianten seit Suse 7.x nicht mehr funktionieren. Dafür funktioniert diese Variante auch unter netbsd1.6.1

3.13 Script zum Rücksetzen der ANT

Von Manfred Larcher <m1.larcher@tirol.com> stammt dieses Kapitel

Das Modem kann sich ja immer wieder mal so ganz ohne weiteres Zutun aufhängen und wenn man dann nicht immer selbst oder jemanden anderen hinschicken will zum Ein- und Ausschalten, dann kann man folgendes Script verwenden um einen Reset und damit eine neue Leitungsyncronisation zu erzwingen!

     ###############
     #!/bin/sh 
     ( echo -n -e '\r'
       sleep 2
       echo -n -e root'\r'
       sleep 2
       echo -n -e system'\r'
       sleep 2 
       echo -n -e reboot'\r'
       sleep 2 ) | telnet alcatel

     rm /var/run/pptp/10.0.0.138

     sleep 60
     pptp alcatel &
     
     ###############
   
Zur Erkärung, es wird einfach eine Telnet Verbindung aufgebaut und die nötigen Befehle für einen Reset geschickt. Danach noch das Verbindungs-File in /var/run/pptp löschen und nach weiteren 60 Sekunden (Leitungssynchronisation) starten wir den pptp wieder. (alcatel sollte natürlich in der /etc/hosts eingetragen sein)

Idealerweise baut man das ganze dann noch in das Script ein welches via Ping die Verbindung überwacht und man wird so schnell keine Probleme mehr haben!

Anmerkung von Heimo

Hat jemand Lust das Script auf expect umzustellen? Dieses hardcoded sleeps gefallen mir nicht wirklich und ich habe selber leider kein ADSL.

ACHTUNG A1000 User!!!

Marco Kammerer <m.kammerer@gmx.at> hat herausgefunden, das dieses RESET Script leider nur bei der One-Touch Version(tm) funktioniert.

Das A1000 (ISDN) benötigt ein Paßwort für den telnet-Zugang.

Eine Variante des Rücksetz-Scripts auf Basis von Expect

Erich Birngruber <ebirn@gmx.at> schickt uns das folgende Script. Das Script setzt die ANT zurück. Es basiert auf der Verwendung von expect und sollte sich daher leicht in übergeordnete Scripts integrieren lassen.

#!/usr/bin/expect

# Benutzername, Passwort und Hostname fuer ANT
set USERNAME "antuser"
set PASSWORD "strenggeheim"
set ANT "alcatel"

# Langsamere Zeichenuebergabe war bei mir
# notwendig, damit der ANT die Befehle
# annimmt

set send_slow {1 .1}

# Telnet Verbindung herstellen
spawn telnet $ANT

# am ANT anmelden
expect "User : "
send "$USERNAME\r"

expect "Password : "
send "$PASSWORD\r"

# ins Menue "system" wechseln und neustarten
expect -e "=>"
send -s "system\r"

expect -e "[system]=>"
send -s "reboot\r"

exit
   

3.14 ADSL vs. Security?

Anfang April 2001 kam die Sicherheit der ANT ins Gerede. Für alle die sich mal mit dem Expert-Mode Ihrer ANT spielen wollen, gibt es hier die Möglichkeit sich das Paßwort für den Expert-Mode zu holen. Sie müssen nur die MAC-Adresse Ihrer ANT in das Eingabefenster eingeben und erhalten das Paßwort zurück. Die Texteingabe muß lauten (ohne Hochkomma) :

"SpeedTouch (MAC-adresse)"

Der Link : http://security.sdsc.edu/self-help/alcatel/challenge.cgi

Hier noch ein paar Links zum Thema (ohne Wertung und Gewichtung):

3.15 Auswertung des Syslog

Dieter WERNER <d_werner@gmx.net> hat dieses Kapitel und die drei Scripts downlamount, logsurf und logsr spendiert.

Bei bestehender ADSL Verbindung sind zwei Arten von Einträgen in /var/log/messages besonders interessant: Meldungen der Firewall über verdächtige Pakete und die Meldungen des pppd über die empfangene Datenmenge als Kontrolle über das Downloadlimit.

Mit einfachen Scripts kann man diese Information extrahieren und aufbereiten. Hier drei Beispiele, die Lokalisierung der Dateien entspricht SuSE.

Firewallauswertung mit logsurf und logsr

logsurf ist ein Script das aus /var/log/messages Meldungen mit REJECT/DENY/ACCEPT für einen bestimmten Tag extrahiert. Dieser Tag ist entweder das aktuelle Datum (aus der letzten Zeile in /var/log/messages) oder ein Datum das in der Shellvariable TAG übergeben wird. Dabei muss auf die korrekte Notation geachtet werden (6 Zeichen, davon 3 Zeichen Monat, 1 oder 2 Leerzeichen, 2 oder 1 stellig Tag des Monats - die Angabe wird direkt für ein grep verwendet). ZB:

    $ export TAG="Jun 17" ; logsurf
    $ export TAG="Jun  7" ; logsurf
   
logsr verwendet logsurf und reduziert die Ausgabe weiter. Bestimmte Einträge werden verworfen (die ICMP Pakete von AON) und die Ausgabe gekürzt. zB aktuelles Datum:
    $ unset TAG ; logsr
   
Der Inhalt der Variable TAG wird etwas plausibilisiert, allerdings kann man ohne weiteres einen 39. Februar eingeben und erhält dann natürlich keine Ausgabe.

Downloadvolumenauswertung mit downlamount

Beim Beenden einer PPP Verbindung schreibt der pppd die Anzahl der empfangenen und gesendeten Bytes in /var/log/messages. Das bietet sich an um die Downloadmenge zu kontrollieren.

Das Script downlamount durchsucht /var/log/messages nach diesen Meldungen für ppp0 (falls man mehrere PPP Verbindungen hat kann man die gewünschte also auswählen, es sollte nur immer die selbe sein) und summiert die einzelnen Verbindungen für ein Monat auf. Es nimmt entweder das aktuelle Monat (aus dem letzten Eintrag in /var/log/messages) oder ein gewähltes Monat aus der Variable MONAT (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec). Bei fehlerhafter Monatsangabe wird das aktuelle Monat verwendet. Anmerkungen:

Falls /var/log/messages (eventuell bei bestimmter Größe automatisch) komprimiert wird sollte man rechtzeitig zuvor die bis dahin angefallenen Werte notieren.

Falls der pppd zu unsanft beendet wird (zB beim Shutdown oder kill -9) kommt er nicht mehr dazu diese Meldungen zu schreiben.

Da /var/log/messages nur von root gelesen werden können verwende ich "sudo" und "alias":

    alias log='sudo /usr/local/sbin/logsr'
    alias dla='sudo /usr/local/sbin/downlamount'
   
zum Beispiel:
    $ log
    $ dla
    $ export MONAT=Mai ; dla
    $ export TAG="Jun  1" ; log
   

3.16 zwei Netzwerkkarten und ADSL

In der at.linux schreibt Philipp Schmid <schmidp@o000o.org> folgenden Tip, den ich Ihnen nicht vorenthalten möchte:

Zitat:

Da ich zwei Netzwerkkarten habe muß ich immer angeben über welche ich die ppp Verbindung aufbauen will. Bei mir geht das mit

    pptp 10.0.0.138 10.0.0.140:
   
Wobei 10.0.0.140 die ip meiner netzwerkkarte ist und 10.0.0.138 die vom ant. (Den doppelpunkt hinter der zweiten ip nicht vergessen).

Sollte der pptp nicht funktionieren, sei noch angemerkt neuerdings heißt es:

   pptp 10.0.0.138 --localbind 10.0.0.140
   
anstatt wie bisher
   pptp 10.0.0.138 10.0.0.140:
   

3.17 SuSE

SuSE 8.1

Dieter Höfler <dieter.hoefler@gmx.at> hat uns folgenden Beitrag spendiert und schrieb:

Ich habe gerade eine ADSL Verbindung unter SuSE 8.1 mit Hilfe Ihres ADSL HOWTOs eingerichtet. Dabei haben sich einige Änderungen zur bisherigen Vorgehensweise ergeben:

Die größten Änderungen betreffen die automatische Einwahl:

Das System der rc.config wurde aufgegeben und durch ein anderes System ersetzt. Dies macht Änderungen am ADSL Skript notwendig (Skript liegt bei). Dieses wird nach /etc/rc.d/ kopiert und mit chmod +x adsl lauffähig gemacht. (wie bisher)

Um nun das Skript in die entsprechenden Runlevels einzubinden muß der Runlevel Editor in YAST-System gestartet werden. dort wird dann der entsprechende Runlevel (meist 3 und 5) makiert und beim Button Anwenden/Zurücksetzen auf Dienst aktivieren gesetzt.

Das Skript kann in der Konsole mit rcadsl start (stop, restart, oder status) manuell bedient werden. Weitere Details zu den Optionen des Scripts, finden Sie im Script selbst. Das Script bekommen Sie hier (download eventuell mit SHIFT und linke Maustaste.) Nach dem download muß das Script renamed werden auf adsl:

       mv adsl-8.1 adsl
       chmod a+x adsl
    

SuSE 8.2

An dieser Stelle sein noch darauf hingewiesen, daß Daniel Imrich <newsgroups@danielimrich.net> mit dieser Anleitung <http://howto.htlw16.ac.at/at-highspeed-howto-2.html#ss2.9> sehr gute Erfolge bei SuSE 8.2 hatte.

Als VPI/VCI-Nummern muß man für Österreich 8.48 eintragen. Bei Daniel Imrich <newsgroups@danielimrich.net> hat das auf Anhieb geklappt.

Suse-Firewall und ADSL

Dieses Kapitel zeigt die Verwendung und Konfiguration der SuSE Firewall (Pakete "ipchains" und "firewals") für ADSL. Für dieses Kapitel bedanken wir uns bei Dieter WERNER <d_werner@gmx.net>

Nach der Entscheidung für einen ADSL Zugang und nach Meldungen, daß auch zunehmend Linux Systeme Ziele von Angriffen sind, (Anm.d.Red.: Linux Systeme weisen zwar eine der Konstruktion des Betriebssystems anhaftende natürliche Festigkeit gegenüber Angriffen von außen auf, aber entschuldigt deshalb noch lange nicht das Fehlen einer Firewall. Vorallem bei älteren Linux Installationen sollten die Server und Dämonen regelmäßig aktualisiert werden um bekannte Löcher zu stopfen). habe ich mich zur Installation einer Firewall entschlossen. Zu diesem Zeitpunkt hatte ich einen Modem-Dialup Zugang, d.h. eine bestehende ppp Konfiguration unter SuSE 7.0 mit wvdial. Mit dem Umstieg auf eine quasi-Standleitung über ADSL wurde dann eine Firewall notwendig.

Als Firewall Laie habe ich einfach die SuSE Pakete "ipchains" und "firewals" aus der Serie "sec1" installiert. Voraussetzung ist auch, daß man einen Kernel verwendet bei dessen Erstellung die Parameter

    CONFIG_FIREWALL=y
    CONFIG_IP_FIREWALL=y
   
gesetzt waren (bei den SuSE Kerneln ist das der Fall).

Zusätzlich braucht man nur in der Datei /etc/ppp/ip-up das Kommentarzeichen vor den Zeilen

    test "$START_FW" = yes && /sbin/SuSEfirewall
   
(für den case "ppp" "ip-up" und "ip-down") zu entfernen und am besten mit YaST die Variablen START_FW=yes und FW_DEV_WORLD=ppp0 zu setzen.

/sbin/SuSEfirewall setzt bei Aktivierung des ppp-Interfaces mittels ipchains die Firewall Regeln in Abhängigkeit von weiteren Variablen. Die Defaultkonfiguration dieser weiteren Variablen (sie beginnen alle mit "FW_") war für meinen Einsatzzweck bereits ausreichend.

SuSEconfig erzeugt mit den FW_ Variablen die Datei /etc/rc.config.d/firewall.rc.config in der die gesetzten Variablen enthalten und ausführlich kommentiert sind. Z.B. kann man mit FW_ALLOW_PING_FW=yes/no konfigurieren, ob die Firewall einen ankommenden ping beantwortet oder nicht.

Die Firewall wird jetzt bereits beim Eintritt in runlevel 2/3 initialisiert. Zu diesem Zeitpunkt existiert das ppp Interface noch nicht was zu einer Warnung führt die ignoriert werden kann. Sobald daß ppp Interface aktiv wird werden die ipchains Regeln via /etc/ppp/ip-up und /sbin/SuSEfirewall gesetzt und beim Abbruch der Verbindung durch /etc/ppp/ip-down und /sbin/SuSEfirewall wieder gelöscht.

Die Firwall loggt in "/var/log/messages" oder "/var/log/firwall" verworfene (DENY) und verdächtige angenommene (ACCEPT) Pakete mit. Das logging level läßt sich ebenfalls konfigurieren.

Für die Benutzung von ADSL bzw. generell für die Benutzung weiterer Netzwerkinterfaces muß man nun folgendes berücksichtigen: die Firewall kann angeschloßene Netze in drei Kategorien teilen

(siehe dazu die links weiter oben) für die man jeweils eigene Regeln setzen kann. Im Falle von ADSL erfolgt die Anbindung an das Internet via ppp, daher stimmt weiterhin FW_DEV_WORLD=ppp0. Allerdings hat man die Verbindung zum ANT via Ethernet Karte. Damit diese Verbindung nicht durch die Firewall geblockt wird muß man FW_DEV_INT="eth0" setzen (vorausgesetzt eth0 stellt die Verbindung zum ANT dar). Falls man mehrere Netzwerkkarten hat kann man mittels "ifconfig" feststellen, welche Interfaces (eth0, eth1,...) womit verbunden sind und diese dann ebenfalls bei FW_DEV_INT (oder FW_DEV_WORLD oder FW_DEV_DMZ) angeben.

Mit FW_PROTECT_FROM_INTERNAL="no" gewährleistet man nun, daß alle Daten des internen Interfaces (das zum ANT) ungefiltert die Firewall passieren. Für einen EinzelPC oder einfaches Heim-LAN ist das eine ausreichende Konfiguration.

Da diese Konfiguration wirklich einfach ist und sie doch einiges an Sicherheit bringt sollte man sich wirklich die Zeit nehmen dies durchzuführen und nicht ohne Firewall ans Netz zu gehen. Schließlich wollen wir doch alle, daß die Anzahl gehackter Linux Systeme deutlich unter der einer bestimmten anderen Betriebssystem Familie liegt. Von der Sicherheit der eigenen Daten ganz zu schweigen.

3.18 Debian

Von Klaus Triendl <triendl.kj@aon.at> stammt dieses Kapitel für Debian-User.

Mit den folgenden Schritten, loggt sich das System automatisch beim Provider ein (beim Erreichen des Runlevel 2+) bzw. beim Herunterfahren (oder Neustarten) automatisch wieder aus. Außerdem wählt sich pppd bei einem Verbindungsabbruch automatisch wieder ein.

Das unten stehende Skript nach /etc/init.d/adsl kopieren und mit chmod a+x adsl ausführbar machen. Dann folgende Zeile auf der Konsole eingeben (mit root-rechten):

     update-rc.d adsl defaults 21 18 
    

Damit wird bei den runlevels 2-5 das adsl-Skript mit Startnummer 21 eingefügt und bei den runlevels 1+6 mit Killnummer 18. Sollten die Nummern schon vergeben sein, einfach nach freien Nummern suchen oder die alphabetische Ordnung gelten lassen. ALLE Benutzer haben ab dann Zugriff auf das Internet, auch wenn sie keine root-Rechte haben.

Beachten Sie, daß eine allfällige Firewall dementsprechend eingerichtet ist, bevor eine adsl-verbindung hergestellt wird, sonst bleibt das skript schon beim start hängen. Wenn Sie noch keine Firewall haben, aber eine benötigen, werfen Sie einen Blick auf http://fireflier.sourceforge.net (als Debianpakete fireflier-server und fireflier-client-(gtk|qt) verfügbar).

Mit root-Rechten kann man das Skript auch händisch aufrufen. Folgende Parameter sind möglich:

Hier nun das ADSL-Script:

#!/bin/sh

# (C) 2003 by triendl.kj
# dieses skript dient zur herstellung einer adsl-verbindung in Österreich;
# Voraussetzugn ist, daß sie grundsätzlich eine erfolgreiche verbindung 
# herstellen können.
# genauere Informationen dazu finden sie im österreichischen adsl-howto
# http://howto.htlw16.ac.at/at-highspeed-howto.html


PATH=/bin:/usr/bin:/sbin/:usr/sbin
DAEMON=/usr/sbin/pptp
PPPD=/usr/sbin/pppd
# verwenden sie für die pid-datei den namen des Interface über das die 
# adsl-verbindung läuft;
# wenn das interface z.b. ppp1 ist, dann ist das /var/run/ppp1.pid
PIDFILE=/var/run/ppp0.pid

MODEM="10.0.0.138"              # ip-adresse des adsl-modems, standard: 10.0.0.138
OPTS="persist maxfail 0"        # automatische wiedereinwahl ohne ende
ARGS="$MODEM $OPTS"


test -x $DAEMON || exit 0
test -x $PPPD || exit 0


case "$1" in
    start)
        echo -n "Starting adsl"
                if start-stop-daemon --quiet --stop --signal 0 --pidfile $PIDFILE --name pppd; then
                        echo ": already running."
                        exit 0
                fi
                if start-stop-daemon --start --quiet --exec $DAEMON -- $ARGS; then
                        echo "."
                else
                        echo ": not started"
                fi
    ;;

    stop)
                echo -n "Stopping adsl"
                if start-stop-daemon --quiet --stop --signal 0 --pidfile $PIDFILE --name pppd; then
                        # nach spätestens drei sekunden aufgeben
                        if start-stop-daemon --stop --retry 3 --quiet --pidfile $PIDFILE --exec $PPPD --name pppd; then
                                sleep 3
                                echo "."
                        else
                                echo ": not stopped."
                                exit 1
                        fi
                else
                        echo ": not running.";
                fi
    ;;

    reload)
                #SIGHUP senden, siehe pppd-manual
        if [ ! -z "`echo persist | grep -i persist`" ]; then
                echo -n "trying to reestablish adsl-connection: "
                        # wenn nach spätestens 7 sekunden pppd nicht beendet ist, 
                        # dann war wiedereinwahl erfolgreich
                        if ! start-stop-daemon --quiet --stop --retry -1/7 --exec $PPPD --name pppd; then
                                echo "connection reestablished."
                        else
                                echo "connection terminated."
                        fi
                else
                        echo "reestablishing adsl-connection is only possible if $PPPD was started with the "persist"-option."
                fi
    ;;

    force-reload|restart)
                $0 stop && $0 start
    ;;

    *)
        echo "usage: adsl start|stop|restart|reload|force-reload"
        exit 1
    ;;
esac

exit 0
    

3.19 ADSL & Debian - Stand 2007

Von David Wührer <def@gmx.at> stammt dieses Kapitel für Debian-User.

Ich selbst verwende Debian testing, und bin beim Klagenfurter Provider Linea7.com. Bevor ich das Howto fand, versuchte ich, mit Hilfe der Anleitung für Windows und lesen der relevanten man-Pages, ADSL zum Laufen zu bringen. Deshalb ist meine Lösung etwas anders als eure.

Ich weiss nicht, ob sie besser ist, aber für den Fall, dass sie hilfreich sein könnte, schicke ich sie euch jedenfalls. (Anm.d.Red: und wir veröffentlichen das auch ;-)

Bei mir startet nicht pptp den pppd, sondern umgekehrt. Die Datei /etc/ppp/peers/provider sieht bei mir so aus:

 
user dwuehrer@linea7.com
pty "/usr/sbin/pptp 10.0.0.138 --nolaunchpppd"
noipdefault
#usepeerdns
defaultroute
replacedefaultroute
hide-password
lcp-echo-interval 10
lcp-echo-failure 10
connect /bin/true
noauth
persist
noaccomp
default-asyncmap
    

Das Modem weist meinem Rechner über DHCP eine IP-Adresse zu, würde dabei aber die nameserver des Providers aus /etc/resolv.conf löschen, deshalb ist usepeerdns auskommentiert. Zusätzlich, vielleicht redundant, habe ich das Paket resolvconf installiert, damit die nameserver in jedem Fall eingetragen bleiben. (Die nameserver von Linea7 sind übrigens 195.16.224.2 und 195.16.224.3, falls es von Interesse ist.)

Die Werte für die lpc-echo-Einträge habe ich aus eurem Howto übernommen.

Statt eines init.d-Skripts habe ich im Verzeichnis /etc/network/if-up.d eine ausfürbare Datei, die so aussieht:

 
#!/bin/sh
/usr/sbin/pppd call provider
    

Damit wird beim Systemstart ADSL gestartet. Wenn man das nicht will, kann man stattdessen die Befehle pon und poff verwenden, die mit Debian mitgeliefert werden.

Entsprechend habe ich in /etc/network/if-down.d das Gegenstück:

 
#!/bin/sh
/usr/bin/killall pppd
    

(Ein anderer Befehl wäre vielleicht eleganter, und bestimmt notwendig, wenn man mehr als eine PPP-Verbindung hat. Aber für eine Verbindung ist das recht zuverlässig.)

Entsprechend euren Empfehlungen habe ich auch einen DNS-Cache (totd) und einen Web-Cache (polipo) installiert.

Wie gesagt, meine Lösung ist anders als eure, und ich weiss nicht, ob mein Beitrag irgendetwas bringt. In jedem Fall will ich mich für das Howto bedanken. Es ist die beste Übersicht über ADSL und wie man es verwenden kann, die ich kenne.

3.20 Weitere ADSL Informationen

Tip

Eine sehr umfangreiche und deutsprachige Sammlung mit Informationen rund um ADSL hat Michael Simon <mi.si@gmx.net> in seinem österreichischen ADSL Forum zusammengetragen. Im Archiv des Diskussionsforum finden sich die Antworten zu den meisten Fragen die einem bei ADSL einfallen. ADSL User sollten dort einmal vorbeigesurft sein.

Variante persist Option

Von Klaus Triendl <triendl.kj@aon.at> stammt die Variante, die "persist"-Option für pppd zu nutzen, um ständig online zu bleiben.

aus dem pppd-Manual:

  persist

      versucht, eine Verbindung nach Abbruch wieder zu öffnen; die 
      "maxfail"-Option regelt die Anzahl der Versuche.
      Do not exit after a connection is terminated; instead try 
      to reopen the connection. The maxfail option still has an 
      effect on persistent connections.

  maxfail n

      Abbruch nach n aufeinanderfolgenden Fehlversuchen. Der 
      Wert 0 bedeutet unbegrenzt. Standardwert ist 10.
      Terminate after n consecutive failed connection attempts.
      A value of 0 means no limit.  The default value is 10.
   

Alle Optionen, die pptp nicht verarbeiten kann, leitet es an pppd weiter. Somit kann pptp mit folgenden Parametern aufgerufen werden:

    pptp 10.0.0.138 persist maxfail 0 
   

bzw. können Sie die beiden Optionen auch in /etc/ppp/options eintragen.

Damit erübrigen sich alle bisher vorgestellten Varianten zur automatischen Wiedereinwahl, weshalb diese Variante sicher die am einfachsten zu handhabende ist. Ein vollständiges Skript finden Sie im Abschnitt ADSL & Debian .

3.21 Probleme mit ADSL und deren Lösung

PPTP-Verbindung bricht ab:

Möglichkeit 1: Problem bei der "eigenen" Hardware, event. ANT defekt.

Möglichkeit 2: Im Netzwerkkarten SETUP (DOS-Programm das zumeist auf Floppy mit der Netzwerkkarte mitgeliefert wird ;-) haben Sie Full-Duplex aktiviert. Probieren Sie das auszuschalten und checken Sie ob es dann besser funktioniert. (Der Hinweis stammt von Peter Chiocchetti <girbal@tacheles.de> )

PPP-Verbindung bricht ab:

ADSL bzw. ATM-Verbindung unterbrochen. Bricht die eigenen Verbindung immer wieder ab, während andere Speed-Teilnehmer in der Umgebung keine Probleme haben, dann handelt es sich meist um Störungen auf der eigenen "last mile". Sind von der Störung mehrere Teilnehmer betroffen, dann ist das ATM-Netz gestört. Tritt dieses Problem dauernd auf, so hilft auch ein Wechsel des Providers nichts.

PPP-Verbindung steht, aber es werden keine Daten übertragen:

Test ob ein ping zum Point-to-Point-Partner funktioniert. Wenn ja, weiterer Test, ob ein Traceroute ins Internet (zB. www.orf.at) funktioniert. Funktioniert der Ping, Traceroute bricht aber irgendwo am Weg zum Ziel ab, so ist eine IP-Verbindung unterbrochen bzw. ein Router defekt. Von einem solchen Problem sind viele Teilnehmer des selben Providers  gleichzeitig betroffen, in dem Fall kann man nur warten.

Verfügbarkeit der Verbindung:

Michael Prochaska schrieb:

Das sich das modem hin und wieder aufhängen kann wissen wir ja, bei mir hat sich dieses problem allerdings erledigt, seit dem ich eine teure 3com netzwerkkarte verwende (seit ca. 2 jahren kein einziger hänger, ich schwöre *g*, davor alle 2-3 stunden)

ANT Varianten:

Wenn ADSL keinesfalls zum Laufen zu bringen ist, dann könnte dieser Beitrag von Roland Lezuo <roland.lezuo@chello.at> noch einen Versuch wert sein:

Hallo Heimo,

erst mal Dank für das tolle ADSL howto, war sehr hilfreich.

Allerdings habe ich viele Stunden damit verbracht ADSL auf meiner LinuxBox 
zum laufen zu bringen, schuld war das Modem, und bevor andere verzweifeln, 
vielleicht kannst Du ja folgende Info in das HowTo aufnehmen:

Symptom : pptp stellt verbindung zu modem her
          pppd wählt sich ein, Auth klappt
          IP Adressen, Gateway, DNS-Server werden eingetragen
          es geht kein ping auf den ptp partner und auch auf sonst nix

Lösung:   Das "Speed touch home" Modem hat zwar als                                 
          Versionsnummer bcaa aufgedruckt läuft aber nur mit der pptp
          Version für das bbaa Modem

Arg, bis ich das versucht habe hat es wriklich lange gedauert!

Ach ja, noch etwas, wenn man in der /etc/ppp/options zusätzlich noch die 
Zeile "usepeerdns" einträgt (bin mir jetzt nicht ganz sicher, hab das man auf 
diesem Rechner nicht installiert) dann werden die DNS Server automatisch in 
die /etc/resolv.conf eingetragen, und beim Abbruch der Verbindung wieder mit 
den alten Einstellungen der /etc/resolv.conf überschrieben

mfg
Roland Lezuo
-- 
Trennt sich das Ross von seinem Reiter, geht das Rennen nicht mehr weiter.
ICQ: 98409354
   

Zusammenfassung:

Bei den wenigsten dieser Probleme kann eine Hotline weiterhelfen. Kein Wunder - Linux wird offiziell nicht unterstützt und Leute welche Kentnisse auf diesem Niveau besitzen, sind in Betrieb und Wartung besser aufgehoben. Schließlich betreffen über 90% der Hotline-Anrufe einfache Konfigurationsprobleme. Hilfe bieten hier die news-Diskussionsforen at.linux bzw. local.*, letztere nur am Provider-Server.

Diverses

Aus der at.linux:

Andreas Ender wrote:
> So ca. einmal im Monat erhalte ich folgede Meldung:
> 
> warn[open_unixsock:pptp_callmgr.c:308]: Call manager for 10.0.0.138 is
> already running.
> fatal[callmgr_main:pptp_callmgr.c:124]: Could not open unix socket for
> 10.0.0.138
> fatal[launch_callmgr:pptp.c:213]: Call manager exited with error 256
> startproc:  exit status of /usr/sbin/pptp: 1

==> rm -fR /var/run/pptp/


MfG / Regards
Friedrich Lobenstock
   

Anmerkungen:

Anmerkung von Manfred Larcher <m1.larcher@tirol.com> :

Wenn das Modem ständig LCP Requests sendet und nach ca. 9 Versuchen hängen bleibt ohne jemals eine Antwort auf den Request bekommen zu haben (Ping geht aber), dann hat sich das Modem ganz einfach "verabschiedet".

Die Lösung:

Einfach das Modem (min. 1 Minute) abschalten und wieder einschalten, dann synchronisiert es sich wieder und alles klappt wieder wie am Schnürchen.

Anmerkung der Redaktion: Offenbar kein Linux in der ANT !? ;-)


Weiter Zurück Inhalt