PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ip-up | ip-down für permanente verbindung....



Seiten : [1] 2

YoZ
29.05.03, 00:08
wie kann ich erreichen dass sich die box bei einer trennung der verbindung sich wiedereinwählt? Ich habe etwas von /etc/ppp/ip-up bzw. ip-down gelesen ... kann mir jemand da weiter helfen und sdagen was ich in den ip-up | ip-down scripten eingeben muss um das zu erreichen?

Gruß, yoz

bluesky666
29.05.03, 01:03
Hi, es kommt drauf an wie Du dich einwählst.
DSL, ISDN oder Modem?
Dial on Demand oder manuell?

Gruß Helge

YoZ
29.05.03, 01:07
Ich habe adsl (speed touch usb) und wähle mich beim booten schon ein, dennoch möchte ich, dass die verbindung wieder aufgebaut wird wenn ich zwangsgetrennt werde... dazu müsste ich wissen was ich für einen befehl in der konsole eingeben muss um adsl zu starten, denn ich klicke entweder auf das kinternet-symbol oder lass die box schon beim booten einwählen!

gruß, yoz

YoZ
29.05.03, 01:26
Noch mal kurz beschrieben...

Ich möchte eine permanente adsl-verbindung... würde mich auch mit dial-on-demand zufrieden geben, besser wäre überhaupt.. auto-reconnect!
Ich habe dial-on-demand mit YaST aktiviert... das funzt auch alles, wenn die verbindung jedoch vom provider getrennt wird... verschwindet die grüne Kugel von kinternet und nur ein stecker bleibt über... die box kann nicht reconnecten. Nun muss ich auf den einen stecker klicken, dann erscheint die grüne kugel wieder und sobald daten abgerufen werden (mail-client) verbindet er automatisch.
Wie kann ich mein problem lösen? Es gibt bei de eigenschaften von kinternet eine option auto-reconnect die ist auf no gesetzt und ich kann nirgends finden, wo man diese aktivieren kann.

INFO:
SuSE 8,0
ADSL, speed touch usb modem (ppp0 über atm)
kde 3.0

Bitte helft mir..
Gruß, yoz

Slurm
29.05.03, 09:08
Hallo YoZ!


Hast du dir mal die Anleitung bei Inode angeschaut?

http://www6.inode.at/support/internetzugang/adsl/konfiguration_linux.html


----
LG,
Markus

YoZ
29.05.03, 12:39
diesem artikel nach... müsste ich meinen ganzen adsl-zugang neu machen, was ja nicht nötig ist... ich müsste nur die auto-reconnect funktion aktivieren...
_____
utomatischer Wiederaufbau der Verbindung:

Um die Verbindung nach einen Timeout automatisch wieder aufzubauen reicht folgender Eintrag in der /etc/crontab:
"crontab -e".
Sollte bei Ihnen die /etc/crontab fehlen, verwenden Sie den Befehl "crontab -e" um den cronjob einzurichten.

0,30 * * * * root ping -c 1 195.58.160.2> /dev/null || [/B]/etc/init.d/adsl restart[/B]

das wäre der punkt den ich benötige, nur funzt bei mir [/B]/etc/init.d/adsl restart[/B] da das ganze einen anderen namen hat...
in /etc/init.d habe ich nur smpppd unddas reciht nicht wenn smpppd gestartet wird, denn die verbindung wird noch lange nicht aufgebaut durch den befehl rcsmpppd start.
Ich müsste erfahren wie sich die verbindung aus der konsole aufbauen lässt denn bei passiert das über das kinternet-symbol

Gruß, yoz

Slurm
29.05.03, 12:49
Ich bin mir jetzt nicht sicher, ob das auch auf die USB-Variante zutrifft, aber generell wird ADSL mit

pptp 10.0.0.138 &

gestartet.

Sehr viel mehr macht die /etc/init.d/adsl Datei auch nicht, ausser dass sie eventuell nicht korrekt beendete Verbindungen killt.

Slurm
29.05.03, 13:12
Folgende Lösung für automatischen Reconnect bei ADSL hätte ich noch anzubieten:

Dateien /etc/ppp/pap-secrets, chap-secrets, options entsprechend konfigurieren (wenn du schon verbinden kannst, sollten diese Dateien schon passen)

Folgende Dateien noch ändern:

/etc/network/interfaces:
auto ppp0
iface ppp0 inet ppp
provider mein_provider

/etc/ppp/peers/mein_provider:
user "xxx@mein_provider"
noauth
noipdefault
defaultroute
persist
pty "/usr/sbin/pptp 10.0.0.138 --nolaunchpppd"

Das wars auch schon, jetzt sollte die Internetverbindung bei einem Disconnect wieder automatisch aufgenommen werden.

YoZ
29.05.03, 15:02
ok ich habe in /etc/ppp/peers/pppoatm folgende optionen einegfügt:

user "xxx@mein_provider"
noauth
noipdefault
defaultroute
persist
pty "/usr/sbin/pptp 10.0.0.138 --nolaunchpppd"

ich müsset jetzt noch
auto ppp0
iface ppp0 inet ppp
provider mein_provider

in /etc/network/interfaces einfügen die existiert bei mir jedoch nicht...
das müsste auch die lösung sein auto ppp0 nur wohin damit..?

Gruß, yoz

Slurm
29.05.03, 15:27
Hallo YoZ!


Mein Vorschlag hat sich auf Debian bezogen, bei Suse sollten die entsprechenden Dateien irgendwo in /etc/sysconfig/network liegen (bin leider kein Suse-Nutzer). Prinzipiell gehört die ppp0 Definition dorthin, wo auch die anderen Netzwerkverbindungen(eth0, ...) sind.

YoZ
29.05.03, 15:34
ich habe folgende dateien in/etc/sysconfig/network :
config dhcp ifcfg-dsl0 ifcfg-lo ifcfg.template providers scripts wireless

in ifcfg-dsl0 habe ich folgendes drinen...
PPPMODE="pppoatm"
PROVIDER="dsl-provider0"
STARTMODE="onboot"
VPIVCI="8.48"

muss ich hier nun

auto ppp0
iface ppp0 inet ppp einfügen?

Slurm
29.05.03, 16:02
Also, ich glaube, die ifcfg-dsl0 ist schon die richtige Datei und ich würde sie jetzt auch nicht ändern.

Schau mal in deinen /etc/ppp/peers Ordner. Gibts dort eine Datei dsl-provider0? Wenn ja, dann trag dort das ein, was in pppoatm steht.

Ich hoffe, dass das weiterhilft.

YoZ
29.05.03, 16:09
in /etc/ppp/peers habe ich nur folgendes drinen..

demand isdn kppp pppoatm pppoe pppoe-rp wvdial

pppoatm:

#
# PPP over ATM options
#
plugin pppoatm.so
#
# Plugin passwordfd enables us to pipe the password to pppd, thus we
# don't have to put it into pap-secrets and chap-secrets.
#
plugin passwordfd.so
#
noauth
_______

wvdial:

# WvDial options
#
# Plugin passwordfd enables us to pipe the password to pppd, thus we
# don't have to put it into pap-secrets and chap-secrets.
#
plugin passwordfd.so
#
noauth
name wvdial
___

das mal die 2 wichtigsten...

naja ich verstehe eines nicht... bei den eiugenschaften von kinternet habe ich die option auto-reconnect no wo müsste nun dieser script sein wo man das auf ja ändern könnte? in /etc/sysconfig/network/ifcfg-dsl0 oder config habe ich genau die optionen die bei den eigenschaften von kinternet dabei sind (vpi vci, PPPMODE etc... nur nicht auto-reconnect) schon langsam bin ich am verzweifeln!

gruß, yoz

YoZ
30.05.03, 12:12
Meine FRAGE: wo muss ich den script eingeben um bei einer trennung zu verbinden?

Habe folgendes in /etc/ppp

auth-up connect-errors ip-down ip-down.local options peers resolv.conf
auth-down chap-secrets ioptions ip-down.d ip-up pap-secrets poll.tcpip

Script:

#!/bin/bash
killall pppd
cinternet --start

das wäre der script, nur wohin damit? ip-down ? und muss ich hier chmode +x ip-down auch machen? Vielleicht kann hier jemand helfen.

Gruß, yoz

Slurm
30.05.03, 16:40
In den Ordner ip-down.d.

Alles was da drinnen steht wird bei einer Verbindungstrennung abgearbeitet.

YoZ
30.05.03, 17:03
ich probiers mal..

danke dir Markus!
Übrigens das mit der manuellen verbindung habe ich geschafft cinternet --status stop start etc. :)

c ya, yoz

YoZ
30.05.03, 17:30
habe jetzt folgendes gemacht...

in /etc/ppp/ip-down.d habe ich folgendes drinen:

#!/bin/bash
cinternet --start

und habe auch chmode +x ip-down.d eigegeben. Wenn ich nun mit kill -1 pid den hangup simuliere, verbindet er nicht mehr...

hat jemand noch vorschläge?
die adsl-configuration sieht folgender massen aus:

x-code:/etc/ppp # cinternet --conf
connection-type = dsl
username = 3733805000
password = <hidden>
ask-password = no
defaultroute = yes
demand = yes
idle-seconds = 90
auto-dns = yes
dns1 = 195.3.96.67
dns2 = 195.3.96.6
auto-reconnect = no
auto-reconnect-delay = 15
auto-reconnect-exits = 8
run-poll-tcpip = yes
ppp-mode = pppoatm
vpivci = 8.48
pppd-options =
mtu = 1500
mru = 1500

Wo könnte man blos, auto-reconnect = no auf jetzt setzen?

gruß, yoz

Zaphod-B
31.05.03, 08:36
Moin,
ich hab kein SuSE, aber ich versuche mal zu helfen.
Bei SuSE gibt es mehrere Dateien, wo du diesen Eintrag finden könntest:

/etc/sysconfig/network/ifcfg-dsl0
/etc/sysconfig/network/provider/dsl-provider0
/etc/init.d/smpppd
/etc/smpppd-c.conf
/etc/smpppd.conf

Ich könnte mir vorstellen, dass du in einen von den oben genannten Dateien den entsprechenden Eintrag findest. Dann könntest du die Datei mit einen Editor deiner Wahl editieren, und kommst vielleicht zum erhofften Ergebnis.

Viel Glück


Greetings Zaphod-B

P.S.: Ich wiess wirklich nicht wie SuSEs c/kinternet arbeitet, ich hab hier devinitiv in's Blaue geraten.

YoZ
02.06.03, 20:33
habe nun alle diese dateien die oben aufgelistet waren durchgesehen.. habe es shon vorher mal gemacht und kein ergebnis erzielt! hier die Inhalte...

/etc/sysconfig/network/ifcfg-dsl0

PPPMODE="pppoatm"
PROVIDER="dsl-provider0"
STARTMODE="onboot"
VPIVCI="8.48"
__________________________________
/etc/sysconfig/network/provider/dsl-provider0

PROVIDER="DSL provider"
DSLSUPPORTED="yes"
MODEMSUPPORTED="no"
ISDNSUPPORTED="no"
USERNAME="3733805000"
PASSWORD="*******"
IDLETIME="90"
DEMAND="yes"
DNS1="195.3.96.67"
DNS2="195.3.96.6"
_____________________________________
/etc/init.d/smpppd

#! /bin/sh
# Copyright (c) 1995-2002 SuSE Linux AG Nuernberg, Germany.
#
# Author: Arvin Schnell <arvin@suse.de>
#
# /etc/init.d/smpppd
#
# System startup script for the SuSE Meta PPP Daemon
#
### BEGIN INIT INFO
# Provides: smpppd
# Required-Start: isdn $remote_fs $network wwwoffle $syslog $named
# Required-Stop: isdn $remote_fs $network wwwoffle $syslog $named
# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: Start the smpppd for internet dial-up connections.
### END INIT INFO

SMPPPD_BIN=/usr/sbin/smpppd
test -x $SMPPPD_BIN || exit 5

# Shell functions sourced from /etc/rc.status:
# rc_check check and set local and overall rc status
# rc_status check and set local and overall rc status
# rc_status -v ditto but be verbose in local rc status
# rc_status -v -r ditto and clear the local rc status
# rc_failed set local and overall rc status to failed
# rc_failed <num> set local and overall rc status to <num><num>
# rc_reset clear local rc status (overall remains)
# rc_exit exit appropriate to overall rc status
. /etc/rc.status

# First reset status of this service
rc_reset

# Return values acc. to LSB for all commands but status:
# 0 - success
# 1 - generic or unspecified error
# 2 - invalid or excess argument(s)
# 3 - unimplemented feature (e.g. "reload")
# 4 - insufficient privilege
# 5 - program is not installed
# 6 - program is not configured
# 7 - program is not running
#
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signalling is not supported) are
# considered a success.

case "$1" in
start)
echo -n "Starting SMPPPD"
## Start daemon with startproc(8). If this fails
## the echo return value is set appropriate.

# NOTE: startproc return 0, even if service is
# already running to match LSB spec.
startproc $SMPPPD_BIN

# Remember status and be verbose
rc_status -v
;;
stop)
echo -n "Shutting down SMPPPD"
## Stop daemon with killproc(8) and if this fails
## set echo the echo return value.

killproc -TERM $SMPPPD_BIN

# Remember status and be verbose
rc_status -v
;;
try-restart)
## Stop the service and if this succeeds (i.e. the
## service was running before), start it again.
## Note: try-restart is not (yet) part of LSB (as of 0.7.5)
$0 status >/dev/null && $0 restart

# Remember status and be quiet
rc_status
;;
restart)
## Stop the service and regardless of whether it was
## running or not, start it again.
$0 stop
$0 start

# Remember status and be quiet
rc_status
;;
force-reload)
## Signal the daemon to reload its config. Most daemons
## do this on signal 1 (SIGHUP).
## If it does not support it, restart.

echo -n "Reload service SMPPPD"
killproc -HUP $SMPPPD_BIN
rc_status -v
;;
reload)
## Like force-reload, but if daemon does not support
## signalling, do nothing (!)

# If it supports signalling:
echo -n "Reload service SMPPPD"
killproc -HUP $SMPPPD_BIN
rc_status -v
;;
status)
echo -n "Checking for SMPPPD: "
## Check status with checkproc(8), if process is running
## checkproc will return with exit status 0.

# Status has a slightly different for the status command:
# 0 - service running
# 1 - service dead, but /var/run/ pid file exists
# 2 - service dead, but /var/lock/ lock file exists
# 3 - service not running

# NOTE: checkproc returns LSB compliant status values.
checkproc $SMPPPD_BIN
rc_status -v
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload}"
exit 1
;;
esac
rc_exit
___________________________________________
/etc/init.d/smpppd

# see "man smpppd-c.conf" for more information
____________________________________________
/etc/smpppd.conf

# see "man smpppd" and "man smpppd.conf" for more information

# note: values in /var/lib/smpppd/smpppd.var.conf have higher priority

wwwoffle-use = no
wwwoffle-fetch = no

stop-on-disconnect = notdemand

open-inet-socket = no

number-of-loglines = 250
_____________________________________________

die einzige option die ich gefunden habe ist stop-on-disconnect = notdemand in /etc/smpppd.conf! Hat jemand eine idee was hier zu ändern wäre um auto-reconnect zu aktivieren? Ich würde mich über vorschläge freuen!

Gruß, yoz

Gast_99
04.06.03, 18:07
Ich weiss nicht genau was du mit dem Ordner ip-down.d willst. Hier auf jeden Fall 3 Schritte zum einfachen Neuverbinden bei Verbindungsabruch:

1. touch /etc/ppp/ip-down.local

2. chmod 755 /etc/ppp/ip-down.local

3. Folgendes in ip-down.local eintragen:


#!/bin/bash
killall pppd
cinternet -i dsl0 --start

Teste es mit kill -1 pid, wirst sehen es läuft perfekt... :D
Viel Spass!

YoZ
04.06.03, 19:35
das habe ich gebraucht.. denn bei mir wurde cinternet nur von root ausgeführt deswegen konnte die verbindung als normaler user gar nicht gestartet werden...

Naja, kann mich nur bedanken!

Gruß, yoz

YoZ
04.06.03, 20:05
bin jetzt folgender massen vorgegangen:

x-code:/etc/ppp # touch /etc/ppp/ip-down.local
x-code:/etc/ppp # chmod 755 /etc/ppp/ip-down.local
x-code:/etc/ppp #
x-code:/etc/ppp # chmod 755 /etc/ppp/ip-down.local
x-code:/etc/ppp # pico ip-down.local
habe in /etc/ppp/ip-down.local

#!/bin/bash
killall pppd
cinternet -i dsl0 --start

eingefügt und mit kill -1 pid pppd gekillt, doch es hat sich nichts getan also habe ich /etc/ppp/ip-down.local manuell ausgeführt und habe folgende meldung bekommen: cinternet: option `-i' is ambiguous. Also habe ich den script in cinternet --start geändert und bei manueller eingabe wird auch verbunden... kille ich jedoch den pid mit kill -1 pid .. tut sich wieder nichts.

:/ Ich bin schon am verzweifeln.

Gruß, yoz

Gast_99
06.06.03, 08:43
Hmmm du hast recht... habe das grad bei mir ausprobiert und es funktioniert nur manchmal mit dem neuverbinden. Da muss ich mir was überlegen. Melde mich gleich nochmal :D

Was mich wundert ist die Meldung mit dem "-i" is amibious... bei mir (SuSE 8.2) definiere ich damit die Device. Was hast du fürn SuSE? Und hast du deine dsl0 Device eingerichtet oder machst dus anders?


Original geschrieben von YoZ

:/ Ich bin schon am verzweifeln.

Gruß, yoz

Und nicht verzweifeln, wir bekommen das schon hin *g*

YoZ
06.06.03, 11:55
also.. ich habe SuSE 8,0... und da läufts nur mit cinternet --start ... die schittstelle ist bei mir genauso dsl0 ... naja würde mich freuen wenn du mir da helfen könntest... bedanke mich schon mal...

Gruß, yoz

Gast_99
06.06.03, 18:01
Hmmmm so wie ich das wollte hat es nicht funktioniert. Deshalb benutze ich im Moment folgendes Work-Around:

1. Idle Time habe ich auf 24*60*60 Sekunden gestellt (24h)
2. Alle 24h wird per cronjob ein Script (restartdsl) ausgeführt, was die Verbindung neustartet.
3. Falls die Verbindung doch mal abbricht, wird per cronjob alle 10min geprüft, ob die Verbindung noch läuft und gegebenenfalls neugestartet. (checkdsl)


Hier die Scripts:

restartdsl


#!/bin/bash
#
# Script zum Neustarten der Internet-Verbindung
#
# Autor: dschulien
# Datum: 6.Juni 2003
# Version: v0.1
#
cinternet -i dsl0 --stop
cinternet -i dsl0 --start


checkdsl


#!/bin/bash
#
# Script zur Überprüfung der Internet-Verbindung
#
# Autor: dschulien
# Datum: 6.Juni 2003
# Version: v0.1
#

# PID vom pppd speichern:
PPPD_ID=$(pidof pppd)

# Test der Verbindung + gegebenenfalls Neuverbinden:
[ -n "$PPPD_ID" ] || cinternet -i dsl0 --start


Danke an den Gestreiften für den Tip mit "pidof"!


Wie gesagt, dass ist nur ein Work-Around, stellt aber sicher, dass die Verbindung spätestens nach 10min wieder steht. Wenn ich ne bessere Lösung hab meld ich mich nochmal...

Timbo
06.06.03, 19:17
Hi,

ich muss bei mir(Suse8.0)

cinternet -interface-name dsl0 --start

eingeben dann funzt es.


Timbo

YoZ
06.06.03, 21:13
@Timbo

naja dann sollte es auf diese art bei mir auch funktionieren.

@Dschulien

Wo muss ich die scripts einfügen? Muss ich zwei neue dateien erstellen.. restartdsl und checkdsl und wohin damit? Außerdem wäre es gut wenn bei mir das ganze alle 8 stunden passieren würde... denn bei mir wird alle 8 stunden disconnectet. Was ich noch nicht verstehe ist das mit der idle time...
Idle Time habe ich auf 24*60*60 Sekunden ??? du kannst ja im YaST nur eine einheit eingeben in sekunden...

Gruß, yoz

Gast_99
10.06.03, 08:48
Also, du erstellst dir 2 neue Dateien, z Bsp. in /usr/local/bin :

1. cd /usr/local/bin

2. touch restartdsl
touch checkdsl

3. chmod 755 restartdsl
chmod 755 checkdsl

4. Befehle in Scripte einfügen (s.o.)

Sooo... jetzt zur Idle-Time. Ich meinte ja dass du 24*60*60 ausrechnest, und das dann in IdleTime einträgst. Das sind dann 24h in Sekunden :D

Jetzt musst du dich nur noch drum kümmern, dass deine Scripte regelmässig ausgeführt werden.

Dazu an die /etc/crontab anhängen:

00 6 * * * root /usr/local/bin/restartdsl
10,20,30,40,50,00* * * * root /usr/local/bin/checkdsl

Die erste Zeile startet immer morgens um 6:00 Uhr die Verbindung neu.
Die zweite Zeile prüft alle 10min ob die Verbindung noch steht, wenn nicht startet sie sie wieder

Die Zeiten kannst du ja nach belieben abändern. Erste Zahl sind die Minuten, 2. die Stunden.

YoZ
10.06.03, 11:51
das sollte dann wohl im moment reichen... hoffe nur dass wir das ganze auch mit dem reconnect hinbekommen... würde mich freuen wenn du dich meldest, fall du eine idee..

Möchte mich nun für deine hilfe bedanken und werde mich noch melden falls etwas nicht klappt.

Gruß, yoz

Gast_99
10.06.03, 13:18
Immerhin ist der PC mit diesem Workaround MAXIMAL 10min offline, wenn die Verbindung abbricht.
Aber ich suche noch nach der finalen Lösung :D

Und melde mich dann...

greetz
J.