Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Problem mit Linux als DSL-Router

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Benutzeravatar
hypermario
Newbie
Newbie
Beiträge: 44
Registriert: 9. Dez 2004, 16:28

Problem mit Linux als DSL-Router

Beitrag von hypermario »

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
Greunke
Member
Member
Beiträge: 159
Registriert: 31. Mai 2004, 15:24
Wohnort: Troisdorf

Beitrag von Greunke »

Ich habe da zunächst eine Frage, welche Linux-Distribution verwendest du?
In diesem Sinne: Learning by Doing
Christian

Bild
Fedora 11 auf Amilo M1437G
Mein OpenPGP-Key
Benutzeravatar
hypermario
Newbie
Newbie
Beiträge: 44
Registriert: 9. Dez 2004, 16:28

Beitrag von hypermario »

Suse Linux 9.1
Benutzeravatar
hypermario
Newbie
Newbie
Beiträge: 44
Registriert: 9. Dez 2004, 16:28

Beitrag von hypermario »

Kann mir keiner helfen :?:
Klaus-D. Wenger
Hacker
Hacker
Beiträge: 271
Registriert: 24. Dez 2004, 12:03
Wohnort: Bremen
Kontaktdaten:

Re: Problem mit Linux als DSL-Router

Beitrag von Klaus-D. Wenger »

hypermario hat geschrieben: Da muss es aber doch ne andere Möglichkeit geben, oder?
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.

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 ;-)
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

@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....
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Benutzeravatar
hypermario
Newbie
Newbie
Beiträge: 44
Registriert: 9. Dez 2004, 16:28

Beitrag von hypermario »

@Bomber8475
Wie sieht so nen script denn bei dir aus?
Und wie pingst du automatisch alle 5min t-online an?

MFG Mario Maas
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

Gut das ich gerade sowieso an den Scripten rumfuckele...


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
Das wird alle 5Minuten ausgeführt: "online.sh"

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
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
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Benutzeravatar
hypermario
Newbie
Newbie
Beiträge: 44
Registriert: 9. Dez 2004, 16:28

Beitrag von hypermario »

Danke für die schnelle antwort, aber in welchen Ordner muss ich die Dateien jeweils packen?

MFG Mario Maas

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?
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

Na ich glaub jetzt wirds Zeit das Du Dir mal ein wenig Literatur zulegst oder mal Google befragst und/oder in diesem Forum liest :lol:
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus »

oder hier schauen:
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
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

@Bomber8475:
Vor einigen Tagen hast Du mich an diesen Treat verwiesen.
Ich habe mir jetzt das ganze mit weiterer Information reingezogen.
hypermario 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?
Zu
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?
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

Yehudi hat geschrieben:
hypermario hat geschrieben: P.S. Welches "chmod" macht die dateien ausführbar?
Zu
P.S. Was haben die Zugriffsrechte mit dieser Ausführung zu tun?
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:...verständlich zu halten, eine Einwahl um 7:5machen, ohne den Ping?
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: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.
Damit hast Du Dir die Frage schon selbst beantwortet ;)
Man erstellt einfach eine neue und gibt den Pfad im Cron an. :roll: :roll: :roll: :roll: :roll: :roll:


Yehudi hat geschrieben:erste Crontab wäre um 7:00Uhr und führt das Script aus
Richtig
Yehudi hat geschrieben:ein zweites Script an, dieses wird um 7:05 über ein weiteres Crowntab gestartet
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:Jetzt mal noch 'ne Fragezeigt dann Kinternet die beiden Stecker auch noch an um zu zeigen, dass man Online ist?
Kene Ahnung, ich nutze den Suse PC ausschließlich als Router und sitze nicht "interaktiv" davor, also hab ich auch kein KDE installiert.
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

@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?
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

@Bomber8475
Mir ist gerade noch mal was aufgefallen. Warum mußt Du eigentlich den 1 CronJob haben, der Dich vom Netz trennt?
Der zweite Cronjob sendet doch einen Ping, und wählt Dich spätestens nach 5 Min wieder ein, wenn Du vom Netz getrennt bist.
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

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:
  • IMMER online (mit Ausfall von max. 5Minuten) sofern der Provider nicht weg ist oder Hardware defekt ist
  • Wiedereinwahl IMMER um 7h morgens
Was will man mehr?

Funzt übrigens sogar mit Suse 9.2 (hab das grad auf dem Router installiert, da war vorher 9.0 drauf)
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

@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.
Benutzeravatar
Bomber8475
Member
Member
Beiträge: 119
Registriert: 25. Nov 2003, 00:32

Beitrag von Bomber8475 »

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
In welchem Editor wird das Script geschrieben, und in welchem Format muss es abgespeichert werden?
Editor <> Such Dir einen aus
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!
Mein Fli4L-Router
irc.freenode.net ... /join #linux-club.de
using --> http://www.ubuntulinux.org/
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

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
Yehudi
Guru
Guru
Beiträge: 2152
Registriert: 21. Jan 2004, 13:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Yehudi »

@Bomber8475:
Habe das von Dir oben angegebene Buch in der 6 Auflage jetzt hier. Gut geschrieben.
Ich habe aber doch noch mal eine Frage:
Und zwar greifst Du in den Scripten auf einen Ordner Namens log zu. Was hat das zu bedeuten?
Antworten