Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.
Problem mit Linux als DSL-Router
Moderator: Moderatoren
- hypermario
- Newbie
- Beiträge: 44
- Registriert: 9. Dez 2004, 16:28
Problem mit Linux als DSL-Router
Hi,
ich benutze einen alten PC als Linux-Router, klappt eigentlich auch alles ganz gut, nur ein Problem hab ich noch: Da ich eine Flatrate hab, bleibt das Internet immer an. T-Online bricht die Verbindung allerdings nach 24 Stunden ab und dann geht an den Client-PC`s gar nichts mehr. Bei Windows kann man das so einstellen, dass er sich nach Abruch wiedereinwählt, doch habe ich die Funktion bei Linux noch nicht gefunden. Dial-On-Demand funktioniert auch nich, bzw. nur wenn ich von dem Router direkt ins Internet geh. Erst wenn ich den Computer neugestartet habe, geht das Internet wieder. Da muss es aber doch ne andere Möglichkeit geben, oder?
MFG Mario Maas
ich benutze einen alten PC als Linux-Router, klappt eigentlich auch alles ganz gut, nur ein Problem hab ich noch: Da ich eine Flatrate hab, bleibt das Internet immer an. T-Online bricht die Verbindung allerdings nach 24 Stunden ab und dann geht an den Client-PC`s gar nichts mehr. Bei Windows kann man das so einstellen, dass er sich nach Abruch wiedereinwählt, doch habe ich die Funktion bei Linux noch nicht gefunden. Dial-On-Demand funktioniert auch nich, bzw. nur wenn ich von dem Router direkt ins Internet geh. Erst wenn ich den Computer neugestartet habe, geht das Internet wieder. Da muss es aber doch ne andere Möglichkeit geben, oder?
MFG Mario Maas
-
- Hacker
- Beiträge: 271
- Registriert: 24. Dez 2004, 12:03
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem mit Linux als DSL-Router
ich habe mir http://www.dynds.org ein kostenlosen dynmaischen Account besorgt und von deren homepage unter dynamischen Clients rundns runtergezogen, nach der beinhaltete Anweisung installiert. Seit dem keine Probleme und zusätzlich komme ich - wenn ich den Router dafür freischalte - auch von aussen auf meinen Apache-Server, dito natürlich auch für z.B. ftp.hypermario hat geschrieben: Da muss es aber doch ne andere Möglichkeit geben, oder?
Ich war früher unter Windows bei selfhost.de die bieten auch was kostenloses an und funktioniert genauso. Fand die adresse xxx.homelinux.net interessanter

- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
@hypermario
Schau Dir mal in der Console den Befehl "cinternet" an.
Ich selber pinge mit einem einzigen Ping alle 5min (cronjob) t-online an und wenn der Ping negativ ausfällt wird ein Script mit dem Befehl "cinternet" und entsprechenden Parametern gestartet. Erst dsl0 aus (kann ja doch sein das ich online bin) und dann wieder einwählen.
Jeden Morgen um 7h schmeiße ich mich selber raus damit ich IMMER zur selben Zeit meinen Reconnect habe, falls mal der PRovider meint mich rauszuschmeißen....
Schau Dir mal in der Console den Befehl "cinternet" an.
Ich selber pinge mit einem einzigen Ping alle 5min (cronjob) t-online an und wenn der Ping negativ ausfällt wird ein Script mit dem Befehl "cinternet" und entsprechenden Parametern gestartet. Erst dsl0 aus (kann ja doch sein das ich online bin) und dann wieder einwählen.
Jeden Morgen um 7h schmeiße ich mich selber raus damit ich IMMER zur selben Zeit meinen Reconnect habe, falls mal der PRovider meint mich rauszuschmeißen....
- hypermario
- Newbie
- Beiträge: 44
- Registriert: 9. Dez 2004, 16:28
- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
Gut das ich gerade sowieso an den Scripten rumfuckele...
Das wird morgens um 7h ausgeführt: "hangup"
Das wird alle 5Minuten ausgeführt: "online.sh"
Im crontab sieht das so aus:
*/5 * * * * root /root/bin/online.sh > /dev/null 2>&1
0 7 * * * root /root/bin/hangup > /dev/null 2>&1
Das wird morgens um 7h ausgeführt: "hangup"
Code: Alles auswählen
#!/bin/sh
datei=/home/bomber/log/internetstatus.log
cinternet -i dsl0 -H
cinternet -i dsl0 -O
echo `date -R` Aufgelegt >> $datei
chown bomber $datei
chgrp users $datei
Code: Alles auswählen
#!/bin/sh
#######################################################
# VARIABLEN
#######################################################
datei=/home/bomber/log/internetstatus.log
logdat=/home/bomber/log/on.log
host=www.t-online.de
count=3
#######################################################
# Wieder online pingen
#######################################################
ping -c $count $host | grep ttl > $logdat
if [ -s $logdat ]; then
echo "Wir sind online"
else
echo `date -R` Neueinwahl >> $datei
cinternet -i dsl0 -H
cinternet -i dsl0 -O
sleep 30
cinternet -i dsl0 -A
cinternet -i dsl0 -D
cinternet -i dsl0 -s
cinternet -i dsl0 -l
echo `date -R` Eingewählt >> $datei
fi
chown bomber $datei
chgrp users $datei
rm $logdat
exit
*/5 * * * * root /root/bin/online.sh > /dev/null 2>&1
0 7 * * * root /root/bin/hangup > /dev/null 2>&1
- hypermario
- Newbie
- Beiträge: 44
- Registriert: 9. Dez 2004, 16:28
- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
oder hier schauen:
Nützliche Links: http://www.linux-club.de/viewtopic.php?t=12706
Nützliche Links: http://www.linux-club.de/viewtopic.php?t=12706
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User
PackMan
LinWiki : Das Wiki für Linux User
@Bomber8475:
Vor einigen Tagen hast Du mich an diesen Treat verwiesen.
Ich habe mir jetzt das ganze mit weiterer Information reingezogen.
P.S. Was haben die Zugriffsrechte mit dieser Ausführung zu tun?
P.S.2 Crontab ist eine Ausführungstabelle des Cronjobs
P.S.3 KCron starten über System > Dienstkonfiguration
Das oben aufgeführte Script ist auch verständlich. Das ist soweit ich das erkenne nur ein Auflegescript. Du startetest wenn ich das rechtverstehe den Internetzugang durch einen Ping neu. könnte man das nicht vereinfachen. Um das für uns "Absolute Beginner" verständlich zu halten, eine Einwahl um 7:5machen, ohne den Ping?
Jetzt beginnt aber die schon oben angeführt Frage, wo muss das Script als Datei eingetragen und editiert werden.
Wo die Datei liegt ist ja egal, da man ja den Pfad im Cronjob eintragen kann.
Wenn ich das aus meinen zusammengetragenen Recherchen richtig folger, wird das Script wie ein Programm über den Cronjob gestartet.
Das erste Crontab wäre um 7:00Uhr und führt das Script aus, welches unsern PC vom Internet trennt, dass wir von der Aussenwelt, wie von der Nabelschnur abgetrennt sind.
Wir legen ein zweites Script an, dieses wird um 7:05 über ein weiteres Crowntab gestartet, und verbindet uns wieder mit der Welt, dass wir wieder ungehindert in den Linux-Club können.
Jetzt mal noch 'ne Fragezeigt dann Kinternet die beiden Stecker auch noch an um zu zeigen, dass man Online ist?
Vor einigen Tagen hast Du mich an diesen Treat verwiesen.
Ich habe mir jetzt das ganze mit weiterer Information reingezogen.
Zuhypermario hat geschrieben: P.S. Welches "chmod" macht die dateien ausführbar?
P.S.2 Was ist Crontab?
P.S.3 Wie mach ich das, dass die dateien immer zu der bestimmten zeit ausgeführt werden?
P.S. Was haben die Zugriffsrechte mit dieser Ausführung zu tun?
P.S.2 Crontab ist eine Ausführungstabelle des Cronjobs
P.S.3 KCron starten über System > Dienstkonfiguration
Das oben aufgeführte Script ist auch verständlich. Das ist soweit ich das erkenne nur ein Auflegescript. Du startetest wenn ich das rechtverstehe den Internetzugang durch einen Ping neu. könnte man das nicht vereinfachen. Um das für uns "Absolute Beginner" verständlich zu halten, eine Einwahl um 7:5machen, ohne den Ping?
Jetzt beginnt aber die schon oben angeführt Frage, wo muss das Script als Datei eingetragen und editiert werden.
Wo die Datei liegt ist ja egal, da man ja den Pfad im Cronjob eintragen kann.
Wenn ich das aus meinen zusammengetragenen Recherchen richtig folger, wird das Script wie ein Programm über den Cronjob gestartet.
Das erste Crontab wäre um 7:00Uhr und führt das Script aus, welches unsern PC vom Internet trennt, dass wir von der Aussenwelt, wie von der Nabelschnur abgetrennt sind.
Wir legen ein zweites Script an, dieses wird um 7:05 über ein weiteres Crowntab gestartet, und verbindet uns wieder mit der Welt, dass wir wieder ungehindert in den Linux-Club können.
Jetzt mal noch 'ne Fragezeigt dann Kinternet die beiden Stecker auch noch an um zu zeigen, dass man Online ist?
- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
Garnichts, wenn man aber mal schaut welcher User sich einwählt und in welchen Ordner das LOG geschrieben wird sollte einem schon klar werden warum die Dateiberechtigungen geändert werden. Vielleicht möchte ich sie ja als User wieder löschen dürfen???Yehudi hat geschrieben:Zuhypermario hat geschrieben: P.S. Welches "chmod" macht die dateien ausführbar?
P.S. Was haben die Zugriffsrechte mit dieser Ausführung zu tun?
Bei mir ist die Voraussetzung das ich 24/8 online bin, was passiert aber wenn man mal unverhofft vom ISP rausgeworfen wird? Man wählt sich selbstständig erst wieder um 7.05h ein. Und das will ich ja nicht.Yehudi hat geschrieben:...verständlich zu halten, eine Einwahl um 7:5machen, ohne den Ping?
Damit hast Du Dir die Frage schon selbst beantwortetYehudi hat geschrieben:Jetzt beginnt aber die schon oben angeführt Frage, wo muss das Script als Datei eingetragen und editiert werden.
Wo die Datei liegt ist ja egal, da man ja den Pfad im Cronjob eintragen kann.

Man erstellt einfach eine neue und gibt den Pfad im Cron an.






RichtigYehudi hat geschrieben:erste Crontab wäre um 7:00Uhr und führt das Script aus
Das ist nicht richtig, dieser 2. Cronjob wird alle 5Minuten ausgeführt, da einem der ISP ja auch mal unverhofft rauswerfen kann.Yehudi hat geschrieben:ein zweites Script an, dieses wird um 7:05 über ein weiteres Crowntab gestartet
Kene Ahnung, ich nutze den Suse PC ausschließlich als Router und sitze nicht "interaktiv" davor, also hab ich auch kein KDE installiert.Yehudi hat geschrieben:Jetzt mal noch 'ne Fragezeigt dann Kinternet die beiden Stecker auch noch an um zu zeigen, dass man Online ist?
@Bomber8475:
Wahrscheinlich steht mir jetzt mein Wissen als Apple User wieder selber im Weg. Beim Mac habe ich ein Scripteditor, in dem ich das Script eintrage. Dieses Script liegt an einem beliebigen Ort, und kann durch anklicken gestartet werden.
Ich verstehe das jetzt so, dass der Cronjob ein Script aufruft, welches gestartetet wird und den dort eingetragenen Befehl ausführt.
Cron ist nur für die Ausführung einer bestimmten Zeit verantwortlich.
Theoretisch müsste das Script ja diese Ausführung machen, wenn ich es aufrufe. Ich verstehe das so, als würde dort eine Datei liegen.
Oder trage ich den Inhalt des Scriptes in den CronJob ein?
Wahrscheinlich steht mir jetzt mein Wissen als Apple User wieder selber im Weg. Beim Mac habe ich ein Scripteditor, in dem ich das Script eintrage. Dieses Script liegt an einem beliebigen Ort, und kann durch anklicken gestartet werden.
Ich verstehe das jetzt so, dass der Cronjob ein Script aufruft, welches gestartetet wird und den dort eingetragenen Befehl ausführt.
Cron ist nur für die Ausführung einer bestimmten Zeit verantwortlich.
Theoretisch müsste das Script ja diese Ausführung machen, wenn ich es aufrufe. Ich verstehe das so, als würde dort eine Datei liegen.
Oder trage ich den Inhalt des Scriptes in den CronJob ein?
- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
Argl.. ICh glaub Du stehst Dir wirklich selber im Weg..
Du hast es Dir selbst 2x erklärt wie das mit den Cron und Scripten funzt...
Schau Dir doch mal die datei /etc/crontab an.
---------------
Und es hat einen ganz einfachen Grund mit dem 7h rauswerfen:
Ich will IMMER um 7h morgens die Neueinwahl haben. Auch wenn mich mein Provider mal 30min oder 6h vorher rausgeworfen haben sollte. Was bei meinen letzten beiden Providern so gut wie nie passiert ist.
Die Scripte erfüllen mir meine Vorgaben:
Funzt übrigens sogar mit Suse 9.2 (hab das grad auf dem Router installiert, da war vorher 9.0 drauf)
Du hast es Dir selbst 2x erklärt wie das mit den Cron und Scripten funzt...
Schau Dir doch mal die datei /etc/crontab an.
---------------
Und es hat einen ganz einfachen Grund mit dem 7h rauswerfen:
Ich will IMMER um 7h morgens die Neueinwahl haben. Auch wenn mich mein Provider mal 30min oder 6h vorher rausgeworfen haben sollte. Was bei meinen letzten beiden Providern so gut wie nie passiert ist.
Die Scripte erfüllen mir meine Vorgaben:
- IMMER online (mit Ausfall von max. 5Minuten) sofern der Provider nicht weg ist oder Hardware defekt ist
- Wiedereinwahl IMMER um 7h morgens
Funzt übrigens sogar mit Suse 9.2 (hab das grad auf dem Router installiert, da war vorher 9.0 drauf)
@Bomber8475
Gut, Dein Wille ist auf jeden Fall eine Wiedereinwahl um 7:05 Uhr, kann ich respektieren.
Cronjob. Das habe ich soweit wohl verstanden. Meine Frage bezieht sich nur noch auf das Script selber.
In welchem Editor wird das Script geschrieben, und in welchem Format muss es abgespeichert werden?
Ist der Scriptaufsatz in einer Datei, und wird das als Script bezeichnet, oder der Scripttext ist das Script, welches dann in den Cronjob eingetragen wird.
Gut, Dein Wille ist auf jeden Fall eine Wiedereinwahl um 7:05 Uhr, kann ich respektieren.
Cronjob. Das habe ich soweit wohl verstanden. Meine Frage bezieht sich nur noch auf das Script selber.
In welchem Editor wird das Script geschrieben, und in welchem Format muss es abgespeichert werden?
Ist der Scriptaufsatz in einer Datei, und wird das als Script bezeichnet, oder der Scripttext ist das Script, welches dann in den Cronjob eingetragen wird.
- Bomber8475
- Member
- Beiträge: 119
- Registriert: 25. Nov 2003, 00:32
Scahu Dir mal meinen Beitrag genau an.
Das fängt mit "hangup" an, also so heißt mein Script welches in der Datei /etc/crontab morgens um 7h ausgeführt wird.
Dann kommt das Script "online.sh" (die Endung ist im Prinzip irrelevant, es sind alles txt-Dateien) DIeses wird in der Datei /etc/crontab alle 5 Minuten ausgeführt.
Zu guter letzt kommt der Auszug aus der (txt) Datei crontab:
*/5 * * * * root /root/bin/online.sh > /dev/null 2>&1
bedeutet nix anderes als:
Minuten alle, /5 Intervall 5Minuten
rest * für immer
User root führt die txt-Datei aus die er im entsprechenden Ordner findet.
Und da ich nicht darüber benachrichtigt werden will: > /dev/null 2>&1
Format <> Egal, hauptsache es ist eine txt. Datei die die Shell versteht.
Wenn ich umter Windows eine txt.Datei schreibe hab ich ein Format welches der Linux PC nicht unbedingt verstelt.
Und nu tu Dir selber einen Gefallen kratz Dir ein wenig Geld zusammen und besorg Dir dieses Buch. Es lohnt sich!
Das fängt mit "hangup" an, also so heißt mein Script welches in der Datei /etc/crontab morgens um 7h ausgeführt wird.
Dann kommt das Script "online.sh" (die Endung ist im Prinzip irrelevant, es sind alles txt-Dateien) DIeses wird in der Datei /etc/crontab alle 5 Minuten ausgeführt.
Zu guter letzt kommt der Auszug aus der (txt) Datei crontab:
*/5 * * * * root /root/bin/online.sh > /dev/null 2>&1
bedeutet nix anderes als:
Minuten alle, /5 Intervall 5Minuten
rest * für immer
User root führt die txt-Datei aus die er im entsprechenden Ordner findet.
Und da ich nicht darüber benachrichtigt werden will: > /dev/null 2>&1
Editor <> Such Dir einen ausIn welchem Editor wird das Script geschrieben, und in welchem Format muss es abgespeichert werden?
Format <> Egal, hauptsache es ist eine txt. Datei die die Shell versteht.
Wenn ich umter Windows eine txt.Datei schreibe hab ich ein Format welches der Linux PC nicht unbedingt verstelt.
Und nu tu Dir selber einen Gefallen kratz Dir ein wenig Geld zusammen und besorg Dir dieses Buch. Es lohnt sich!
Danke, jetzt ist mir das klar.
Den Buchtipp werde ich demnächst nachgehen. Es ist nämlich schwierig, gute Bücher über Linux zu finden. Von mehreren Büchern die ich habe, ist nur das gut:
http://www.amazon.de/exec/obidos/ASIN/3 ... 18-4612040
Den Buchtipp werde ich demnächst nachgehen. Es ist nämlich schwierig, gute Bücher über Linux zu finden. Von mehreren Büchern die ich habe, ist nur das gut:
http://www.amazon.de/exec/obidos/ASIN/3 ... 18-4612040