Re: [suse-isdn] Netscape & dial on demand
René Oelke
01/21/00 01:15am >>> tach liste,
es geht einfach nicht!!! ich habe gestern sowohl in der /etc/rc.config als auch in /sbin/init.d/boot und /sbin/init.d/boot.local saemtlich einstellungen vorgenommen, die sinnvoll waren: IP_DYNIP auf "no", "yes", "1" und "2" gesetzt; die anweisung mit dem echo-befehl in boot bzw. boot.local eingetragen. FAZIT: in der datei /proc/sys/net/ipv4/ip_dynaddr steht dann auch mal nichts, eine 1, 2 oder 7. aber in all diesen faellen hat sich nichts geaendert an der misslichen situation.
dazu passt am besten folgendes:
Dieter Kluenter schrieb:
Zitat Angang: "Wenn Sie den früheren Zustand herstellen wollen, so löschen Sie bitte alle Einträge, die bewirken daß der dynamic Parameter aktiviert ist. Ich empfehle Ihnen jedoch in diesem Fall den Timeout für ISDN-Verbindungen auf mindestens 180 Sekunden zu legen. Das dummy0 Device sollten Sie ebenfalls deaktivieren. Tatsächlich ist das Problem, daß beim Einstellen der Verbindung zunächst die vorhandene Verbindung gelöscht wird, und vom Prozess eine zweite Verbindung angestoßen werden muß. Wenn dies nicht geschieht, kommt keine Verbindung zustande. Wenn Sie noch ein bischen experementieren möchten, dann vertauchen Sie im ip-up Skript noch die beiden Zeilen /sbin/ifconfig $INTERFACE dynamic /sbin/route add default gw $REMOTEIP dev $INTERFACE so daß als letztes der /sbin/ifconfig $INTERFACE dynamic steht. Sollte das immer noch Schwierigkeiten machen, dann können Sie auch ein sleep 3 zwischen den beiden Zeilen ausführen lassen.
Im Klartext, SuSE weiss auch nicht weiter und hat noch keine Loesung fuer unser Problem.
der letzte satz ist der, der alles auf den punkt bringt. und so ist es auch. SuSE tappt wohl im dunkeln. ich habe lange in der SDB gesucht und eine moegliche loesung gefunden: wen man nach dem Stichwort IP_DYNPATCH sucht kommt man irgendwann zu einem posting, indem genau diese situation beschrieben wird. und auch der grund ist klar und eindeutige dargestellt. nur keine eigene loesung! es wir statt dessen auf einen patch verwiesen, den ein anderer programmiert hat. leider war dessen www-seite zu dem zeitpunkt nicht erreichbar. am besten, ihr sucht auch danach.
ansonsten muss ich leider zugeben, dass ich am ende mit meinem latein bin. ich hoffe nur, dass es mit einem kernel behoben ist. vielleicht liegt es ja auch daran, das sich alles ueber den proxy laufen lasse (squid) und der damit nicht klar kommt. kann das jemand bestaetigen? haben alle, die dieses problem haben, die www-verbindung ueber den linux-proxy laufen? oder funktioniert es auch bei masquerading nicht?
also bei mir gibt´s genau dasselbe Problem auch mit masquerading! Dasselbe Szenario: mit 1,2 oder 7 - egal was ich mache, es klappt einfach nicht!!
Ok, für alle die genug Experimentierfreude haben. Hier kommt nochmal eine Beschreibung, wie es bei mir funktioniert: Problem: Bei automatischer Einwahl unter SuSE Linux 6.3 funktioniert die erste Verbindung nicht. (mögliche) Ursache: Unter SuSE Linux 6.3 wurde das ippp? Device auf dynamic umgestellt, um zu verhindern, daß nicht korrekt abgebaute Verbinungen beim Beenden des verursachenden Prozesses eine unnötige Verbindung aufbauen. Dies geschieht durch einfügen des Parameters "dynamic" in der entpsrechenden IFCONFIG Zeile in der Datei /etc/rc.config. Alle, die statische IP-Adressen verwenden sollten diesen Parameter prinzipiell löschen. Leider konnte eine entsprechende Checkbox im YaST aus Zeitgründen nicht eingefügt werden. Lösung: Bitte geht folgendermaßen vor: - Der Parameter "dynamic" in der IFCONFIG Zeile in /etc/rc.config sollte gelöscht werden. - Folgende Zeile sollte in der Datei /etc/ppp/ip-up nach dem Eintrag /sbin/route add default gw $REMOTEIP dev $INTERFACE hinzugefügt werden: /sbin/ifconfig $INTERFACE dynamic - nach der Zeile /sbin/ifconfig $INTERFACE $IFCONFIG ebenfalls in /etc/ppp/ip-up sollte folgende Zeile eingefügt werden: /sbin/ifconfig $INTERFACE -dynamic Dies soll bewirken, daß beim Verbindungsaufbau der dynamic Parameter erst dann bewirkt wird, wenn die Verbindung schon steht, und nach dem Verbindungsabbau wieder deaktiviert wird. Vor einem Test sollte überprüft werden, ob dynamic aktiviert ist. Man kann dies durch den Aufruf von ifconfig. UP POINTOPOINT RUNNING NOARP DYNAMIC MTU:1500 Metric:1 ^^^^^^^ Hier wäre der Parameter aktiviert. Dies ist vor dem Verbindungsaufbau falsch. Bitte kontrolliert auch mit cat /proc/sys/net/ipv4/ip_dynaddr ob der Wert ungleich 0 ist. Ansonsten ist der Dynamic IP-Patch nicht aktiviert, und die erste Verbindung wird bestimmt nicht funktionieren. Bitte schreibt mir entsprechende Rückmeldungen gerne auch an untenstehende Adresse. Berthold Gunreben (bg@suse.de) ---------------------------------------------------------------------------
Am Die, 25 Jan 2000 schrieb Berthold Gunreben: [..]
/sbin/ifconfig $INTERFACE dynamic
Wo ist denn dieser "dynamic"-Parameter dokumentiert und was bewirkt er? Habe nur gefunden, daß das Flag IFF_DYNAMIC gesetzt wird, aber nicht was es bewirkt. Danke. Mit freundlichen Grüßen W. Joost (postet and mailed)
On Tue, 25 Jan 2000, Wolfram Joost wrote:
Am Die, 25 Jan 2000 schrieb Berthold Gunreben:
[..]
/sbin/ifconfig $INTERFACE dynamic
Wo ist denn dieser "dynamic"-Parameter dokumentiert und was bewirkt er? Habe nur gefunden, daß das Flag IFF_DYNAMIC gesetzt wird, aber nicht was es bewirkt.
Sorry, aber ich habe auch nur gehört, daß ich den Source lesen soll.... Bewirken soll er, daß bei einem Wechsel der IP-Adresse des Interfaces alle vorhandenen Verbindungen dieses Devices beendet werden. Gemeint sind die, die man mit dem Befehl netstat --tcp sieht. Das ist auch ein Grund, warum man eth? Devices in ein anderes Netz legen sollte als das ippp? Device. Ansonsten werden sobald man eine ISDN Verbindung aufmacht auch gleich alle Ethernet Verbindungen gekappt. (Ist schon vereinzelt passiert). Berthold Gunreben (bg@suse.de) ---------------------------------------------------------------------------
Hallo,
Von: Berthold Gunreben
Ok, für alle die genug Experimentierfreude haben. Hier kommt nochmal eine Beschreibung, wie es bei mir funktioniert:
Experimentierfreude ist vorhanden bloß mit dem Erfolg hat es hisher nicht so hingehauen
Problem: Bei automatischer Einwahl unter SuSE Linux 6.3 funktioniert die erste Verbindung nicht.
(mögliche) Ursache: Unter SuSE Linux 6.3 wurde das ippp? Device auf dynamic umgestellt, um zu verhindern, daß nicht korrekt abgebaute Verbinungen beim Beenden des verursachenden Prozesses eine unnötige Verbindung aufbauen. Dies geschieht durch einfügen des Parameters "dynamic" in der entpsrechenden IFCONFIG Zeile in der Datei /etc/rc.config. Alle, die statische IP-Adressen verwenden sollten diesen Parameter prinzipiell löschen. Leider konnte eine entsprechende Checkbox im YaST aus Zeitgründen nicht eingefügt werden.
Lösung: Bitte geht folgendermaßen vor: - Der Parameter "dynamic" in der IFCONFIG Zeile in /etc/rc.config sollte gelöscht werden. - Folgende Zeile sollte in der Datei /etc/ppp/ip-up nach dem Eintrag /sbin/route add default gw $REMOTEIP dev $INTERFACE hinzugefügt werden: /sbin/ifconfig $INTERFACE dynamic - nach der Zeile /sbin/ifconfig $INTERFACE $IFCONFIG ebenfalls in /etc/ppp/ip-up sollte folgende Zeile eingefügt werden: /sbin/ifconfig $INTERFACE -dynamic
Dies soll bewirken, daß beim Verbindungsaufbau der dynamic Parameter erst dann bewirkt wird, wenn die Verbindung schon steht, und nach dem Verbindungsabbau wieder deaktiviert wird. Vor einem Test sollte überprüft werden, ob dynamic aktiviert ist. Man kann dies durch den Aufruf von ifconfig. UP POINTOPOINT RUNNING NOARP DYNAMIC MTU:1500 Metric:1 ^^^^^^^ Hier wäre der Parameter aktiviert. Dies ist vor dem Verbindungsaufbau falsch. Bitte kontrolliert auch mit cat /proc/sys/net/ipv4/ip_dynaddr ob der Wert ungleich 0 ist. Ansonsten ist der Dynamic IP-Patch nicht aktiviert, und die erste Verbindung wird bestimmt nicht funktionieren.
Bitte schreibt mir entsprechende Rückmeldungen gerne auch an untenstehende Adresse.
Also es wird hier die Vorgehensweise mit einer SuSE 6.3 beschrieben nun bin ich aber leider nur Besitzer einer SuSE 5.3 habe aber das gleiche Problem. Sind die Lösungswege auf meine Distribution übertragbar oder wäre das völlig falsch? Wenn sich jemand bereit erklärt mir zu helfen so könnte ich mal mein ip_up und einen Auszug aus /var/log/messages mit gesetzem debug flag posten mir gehen diese Verbindungsprobleme inzwischen ganz schön auf die Nerven. Wenn ich den Verbindungsaufbau mit einem ping erzwinge dann schlägt dieser zwischen 5 und 10mal fehl bis eine Antowort vom angepingten Rechner kommt. Ich hoffe jemand nimmt sich meiner an. Mit freundlichen Grüßen Frank ------------------------------------------------------------------------ -------------------- Frank Wagner Esters Elektronik GmbH Abt. Entwicklung 63110 Rodgau Tel.: 06106 / 3040 Fax: 06106 / 18192 Email: f.wagner@esters.de Web: http://www.esters.de ------------------------------------------------------------------------ --------------------
On Wed, 26 Jan 2000, Frank Wagner wrote:
Von: Berthold Gunreben
Ok, für alle die genug Experimentierfreude haben. Hier kommt nochmal eine Beschreibung, wie es bei mir funktioniert:
Experimentierfreude ist vorhanden bloß mit dem Erfolg hat es hisher nicht so hingehauen
Also es wird hier die Vorgehensweise mit einer SuSE 6.3 beschrieben nun bin ich aber leider nur Besitzer einer SuSE 5.3 habe aber das gleiche Problem.
Dies ist nicht einmal auf eine 6.2 übertragbar. Dieses Vorgehen bezieht sich ausschließlich auf eine 6.3. Berthold Gunreben (bg@suse.de) ---------------------------------------------------------------------------
Hallo, On 25-Jan-00 Berthold Gunreben wrote:
Ok, für alle die genug Experimentierfreude haben. Hier kommt nochmal eine Beschreibung, wie es bei mir funktioniert:
Problem: Bei automatischer Einwahl unter SuSE Linux 6.3 funktioniert die erste Verbindung nicht.
ich habe IFCONFIG und ip-up den Empfehlungen entsprechend geaendert,
trotzdem gehen die ersten ein bis drei Pakete bei einer automatischen
Einwahl verloren. Seltsamerweise werden die alten routes jetzt nicht
mehr zurueckgesetzt:
Jan 28 09:46:26 pink kernel: OPEN: 192.168.100.98 -> 130.133.1.4 ICMP
oder auch
Jan 28 12:19:51 pink kernel: OPEN: 192.168.100.98 -> 194.221.183.22
TCP, port: 2351 -> 110
das default gateway ist hier noch 192.168.0.2
Ich vermute mal mit meinem unfundierten Halbwissen, dass diese Adressen
aus named Anfragen resultieren, dannn eine Verbindung hergestellt wird,
dann das default gateway gaendert wird, der resolver aber noch die
ersten Pakete ueber das nicht mehr bestehende gateway versenden
moechte, anders formuliert, resolver ist schneller als route add, da
die Pakete nicht zurueckkommen, meldet resolver nun network unreachable,
mit den daraus resultierenden Konsequenzen.
folgende Kernel-Meldungen lassen darauf schliessen:
Jan 28 12:19:53 pink kernel: isdn_net: ippp0 connected
Jan 28 12:19:54 pink kernel: tcp_v4_rebuild_header(): shifting
sk->saddr from 192.168.100.98 to 212.79.35.44
Zwischen dem connect und dem shifting der Adresse vergeht ungefaehr
eine Sekunde; und in dieses Zeitloch fallen die ersten Pakete.
Eine Loesung habe ich auch nicht, ausser dieser das ich alle cronjob
gesteuerten Programme wie fetchmail, suck, wwwoffle -fetch usw nur mit
ping -c 5 starten kann.
Gruss
Dieter
--
E-Mail: Dieter Kluenter
On Fri, 28 Jan 2000, Dieter Kluenter wrote:
On 25-Jan-00 Berthold Gunreben wrote:
Ok, für alle die genug Experimentierfreude haben. Hier kommt nochmal eine Beschreibung, wie es bei mir funktioniert:
Problem: Bei automatischer Einwahl unter SuSE Linux 6.3 funktioniert die erste Verbindung nicht.
ich habe IFCONFIG und ip-up den Empfehlungen entsprechend geaendert, trotzdem gehen die ersten ein bis drei Pakete bei einer automatischen Einwahl verloren. Seltsamerweise werden die alten routes jetzt nicht mehr zurueckgesetzt:
Jan 28 09:46:26 pink kernel: OPEN: 192.168.100.98 -> 130.133.1.4 ICMP oder auch Jan 28 12:19:51 pink kernel: OPEN: 192.168.100.98 -> 194.221.183.22 TCP, port: 2351 -> 110 das default gateway ist hier noch 192.168.0.2
Ich vermute mal mit meinem unfundierten Halbwissen, dass diese Adressen aus named Anfragen resultieren, dannn eine Verbindung hergestellt wird, dann das default gateway gaendert wird, der resolver aber noch die ersten Pakete ueber das nicht mehr bestehende gateway versenden moechte, anders formuliert, resolver ist schneller als route add, da die Pakete nicht zurueckkommen, meldet resolver nun network unreachable, mit den daraus resultierenden Konsequenzen. folgende Kernel-Meldungen lassen darauf schliessen: Jan 28 12:19:53 pink kernel: isdn_net: ippp0 connected Jan 28 12:19:54 pink kernel: tcp_v4_rebuild_header(): shifting sk->saddr from 192.168.100.98 to 212.79.35.44
Zwischen dem connect und dem shifting der Adresse vergeht ungefaehr eine Sekunde; und in dieses Zeitloch fallen die ersten Pakete.
Wenn hier Pakete verloren gehen, dann bedeutet das, daß der dynamic IP-Patch nicht aktiv ist. Kontrolliere doch mal mit cat /proc/sys/net/ipv4/ip_dynaddr ob da ein Wert ungleich 0 herauskommt. Wenn hier 0 steht, dann gehen alle Pakete bis zur stehenden Verbindung verloren. Beim dynamic Parameter ist nur wichtig, daß er aktiv ist wenn die Verbindung abgebaut wird, damit nicht irgendwelche Verbindungen bestehen bleiben, die aufgrund dynamischer IP-Adressen nicht mehr aufgebaut werden können. Berthold Gunreben (bg@suse.de) ---------------------------------------------------------------------------
Berthold Gunreben schrieb:
Wenn hier Pakete verloren gehen, dann bedeutet das, daß der dynamic IP-Patch nicht aktiv ist. Kontrolliere doch mal mit ^^^^^^^^^^^^^^^^ cat /proc/sys/net/ipv4/ip_dynaddr ob da ein Wert ungleich 0 herauskommt. Wenn hier 0 steht, dann gehen alle Pakete bis zur stehenden Verbindung verloren. Beim dynamic Parameter ist nur wichtig, daß er aktiv ist wenn die ^^^^^^^^^^^^^^^^^ Verbindung abgebaut wird, damit nicht irgendwelche Verbindungen bestehen bleiben, die aufgrund dynamischer IP-Adressen nicht mehr aufgebaut werden können.
Hallo Berthold, jetzt noch mal langsam und zum mitschreiben: Sehe ich das richtig, daß es einen dynamic-IP-Patch und einen dynamic-Parameter gibt? Das sind zwei getrennte Eigenschaften, die nichts (nicht viel) miteinander zu tun haben? Der dynamic-IP-Patch ist eine Eigenschaft des gesamten i4l-Mechanismus' und wird über /proc/sys/net/ipv4/ip_dynaddr umgeschaltet (bzw. den Wert IP_DYNIP in rc.config) und sollte generell auf 7 (?) stehen, wenn man überhaupt beabsichtigt Verbindungen mit dynamischem IP zu fahren. Er sorgt dafür, daß beim Verbindungsaufbau über eine Platzhalter-IP (dynamische IP) die Header in den Paketen, die bis zum Stehen der Verbindung geschickt wurden, auf die neue IP-Adresse korrigiert werden. Ohne ihn geht das erste Paket (evtl. auch mehrere) jeder neu aufgebauten dynamischen Verbindung verloren. Der dynamic-Parameter ist eine Eigenschaft der jeweiligen aufgebauten IP-Verbindung. Er wird - am besten im ip-up - per ifconfig (Parameter: dynamic) für diese Verbindung gesetzt, und sorgt dafür, daß beim Abbau der _physikalischen_ Verbindung auch alle noch bestehenden IP-Connections, die über diese Verbindung laufen, gesperrt werden, da ein Wiederaufbau der Verbindung mit den gleichen IP-Adressen unwahrscheinlich ist. Dieser dynamic-Parameter ist erst seit SuSE 6.3 (Kernel 2.2.13) verfügbar. Ohne ihn kann es nach dem Abbau der _logischen_ Verbindung zu einem unbeabsichtigten (weil unnützen) Wiederaufbau der Verbindung kommen. Vor Version 2.2.13 mußte man sich hier mit wilden zeitweiligen Sperren über ipchains/ipfwadm helfen. Ist das so korrekt? mfg Volker -- Volker Böhm Tel.: 040/25 15 37-118 Alpha Leasing GmbH Fax: 040/25 15 37-190 Grevenweg 72 e-Mail: boehm@alpha-leasing.de 20537 Hamburg vboehm@t-online.de
Wenn man nicht alles fünfmal Korrektur ließt: Volker Böhm schrieb:
Der dynamic-Parameter ist eine Eigenschaft der jeweiligen aufgebauten IP-Verbindung. Er wird - am besten im ip-up - per ifconfig (Parameter: dynamic) für diese Verbindung gesetzt, und sorgt dafür, daß beim Abbau der _physikalischen_ Verbindung auch alle noch bestehenden IP-Connections, die über diese Verbindung laufen, gesperrt werden, da ^^^^^^^^^^^^^^ hier sind logische Verbindungen gemeint ein Wiederaufbau der Verbindung mit den gleichen IP-Adressen unwahrscheinlich ist. Dieser dynamic-Parameter ist erst seit SuSE 6.3 (Kernel 2.2.13) verfügbar. Ohne ihn kann es nach dem Abbau der _logischen_ Verbindung zu einem unbeabsichtigten (weil unnützen) ^^^^^^^^^^^ das muß natürlich physikalisch heißen. Wiederaufbau der Verbindung kommen. Vor Version 2.2.13 mußte man sich hier mit wilden zeitweiligen Sperren über ipchains/ipfwadm helfen.
mfg Volker -- Volker Böhm Tel.: 040/25 15 37-118 Alpha Leasing GmbH Fax: 040/25 15 37-190 Grevenweg 72 e-Mail: boehm@alpha-leasing.de 20537 Hamburg vboehm@t-online.de
On Fri, 28 Jan 2000, Volker Böhm wrote:
Wenn man nicht alles fünfmal Korrektur ließt: Volker Böhm schrieb:
Der dynamic-Parameter ist eine Eigenschaft der jeweiligen aufgebauten IP-Verbindung. Er wird - am besten im ip-up - per ifconfig (Parameter: dynamic) für diese Verbindung gesetzt, und sorgt dafür, daß beim Abbau der _physikalischen_ Verbindung auch alle noch bestehenden IP-Connections, die über diese Verbindung laufen, gesperrt werden, da ^^^^^^^^^^^^^^ hier sind logische Verbindungen gemeint ein Wiederaufbau der Verbindung mit den gleichen IP-Adressen unwahrscheinlich ist. Dieser dynamic-Parameter ist erst seit SuSE 6.3 (Kernel 2.2.13) verfügbar. Ohne ihn kann es nach dem Abbau der _logischen_ Verbindung zu einem unbeabsichtigten (weil unnützen) ^^^^^^^^^^^ das muß natürlich physikalisch heißen. Wiederaufbau der Verbindung kommen. Vor Version 2.2.13 mußte man sich hier mit wilden zeitweiligen Sperren über ipchains/ipfwadm helfen.
Hallo Volker, Du hast das ziemlich gut ausgedrückt. Worauf ich jedoch noch hinweisen möchte ist, daß eine Firewall natürlich noch viel mehr machen kann als dieser dynamic Parameter. Der dynamic Parameter hat nur die Aufgabe, alle bestehenden logischen Verbindungen nach dem Abbau der physikalischen Verbindung ebenfalls zu löschen. Berthold Gunreben (bg@suse.de) ---------------------------------------------------------------------------
participants (6)
-
Berthold Gunreben
-
Dieter Kluenter
-
Frank Wagner
-
Thomas Ebenbichler
-
Volker Böhm
-
Wolfram Joost