Hardware
Installation
Konfiguration
IP-Adressen
LAN-Anbindung
Einrichtung ISDN
IP-Masquerading
NetBIOS Protokoll
Firewall
Mailsystem
USENET News
Novell-Emulation
Fax-Empfang
X-Window System
Modem-Einwahl
Web-Server
Web-Proxy
Systemwartung
ungewollter Verbindungsaufbau

Offene Sockets (ungewollter Verbindungsaufbau)

Wenn die ISDN Verbindung beendet wird, kann es sein, daß noch Sockets (Verbindungen) nach außen geöffnet sind. Spätestens wenn das Linux versucht diesen offenen Socket zu schließen, wird ein Paket über diesen Socket gesendet. Dieses Datenpaket bewirkt, daß eine neue Online Verbindung geöffnet wird. Das Problem ist aber, daß jetzt unsere dynamische IP-Adresse nicht mehr mit der des alten offenen Sockets übereinstimmt und dieser offene Socket somit nicht geschlossen werden kann, was weitere Online Verbindungen zur Folge hat, da Linux in einem bestimmten Intevall versucht diesen Socket zu schließen.

Abhilfe schafft ein Patch von Michael Mueller http://www-users.rwth-aachen.de/Michael.Mueller4/dynip22.html indem die Pakete, die die ungewollte Verbindung auslösen wollen, per Firewall (IP-Chains) abgeblockt werden.

In der Datei /etc/ipchains.rules müssen folgende Einträge hinzugefügt werden:

:dynout -
-A output -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -i ippp0 -j dynout
-A dynout -s 192.168.0.99/255.255.255.255 -d 0.0.0.0/0.0.0.0 -i ippp0 -j RETURN
-A dynout -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -j DENY

In der Datei /etc/ppp/ip-up muß folgender Eintrag ergänzt werden:

    ip-up)

       /sbin/route add default gw $REMOTEIP dev $INTERFACE
     
        #DYNOUT Patch
        /sbin/ipchains -R dynout 1 -j RETURN -s "${4}/32" -i $1


und im ip-down Teil:

        # set routes from /etc/route.conf
        test -z "$DEST"    || /sbin/route add -host $DEST dev $INTERFACE
        test -z "$DEFAULT" || /sbin/route add default gw $DEFAULT

        #DYNOUT Patch
       /sbin/ipchains -R dynout 1 -j RETURN -s 192.168.0.99 -i $1

Jetzt müssen die neuen IP-Chain Regeln per Hand geladen werden (beim nächsten Systemstart werden diese automatisch über den Packetfilter geladen:

ipchains -N dynout
ipchains -A dynout -j RETURN -s 192.168.0.99/32 -i ippp0
ipchains -A dynout -j DENY -s 0/0 -d 0/0
ipchains -I output 1 -j dynout -i ippp0

Zum Testen geht man Online und logt sich per Telnet auf einen Internet Rechner ein. Jetzt wartet man so lange, bis die Verbindung durch den Timeout wieder beendet wird. Nachdem das geschehen ist, versucht man im noch offenen Telnet Fenster irgendwelche Befehle einzugeben. Es dürfte jetzt keine neue Online Verbindung hergestellt werden. Das Telnet muß dann per kill oder ähnliches beendet werden.

Ohne diese IP-Chains Einträge würde ständig eine neue Online Verbindung aufgebaut werden, da der Rechner versucht, Daten zu dem Internet Host zu senden, auf dem wir scheinbar noch eingeloggt sind. Diese Daten würden aber nie ankommen, da wir immer eine neue IP-Adresse zugewiesen bekommen.