- DS-Lite: Linderung bei IPv4 Ausfall (TC7200) Beitrag #1
adn77
- Beiträge
- 10
- Punkte Reaktionen
- 0
Hallo zusammen,
nachdem ich mich seit einem halben Jahr über die halbfertige Umsetzung von DS-Lite durch KabelBW und die absolut inkompetente Fehlerbehebung ärgere, versuche ich selbst Abhilfe bzw. Linderung zu schaffen.
Ich habe auch diese bescheidene DK-7200, mit dem nichtmal ein vernünftiges IPv6 möglich scheint (fehlende Prefix-Delegation).
In meinem lokalen Netz vergibt ein OpenWRT Router alle Adressen und das TC7200 ist nur mein Gateway.
Nachdem die Hotline bei meinen Störungsmeldungen lediglich das Modem neu gestartet hat, habe ich das eine Weile ebenso gemacht - manuell.
Bei der Anzahl der Störungen in den letzten zwei Wochen habe ich das nun automatisiert:
Das Script benutzt "fping", weil durch den Backoff-Algorithmus mit ziemlicher Sicherheit die (Un-)Erreichbarkeit eines Hosts festgestellt werde kann.
Den CSRF-String muss man aus dem Quelltext der Router Login-Seite kopieren. Ich bin mir nicht sicher, ob er überhaupt geprüft wird.
Die Curl-Aufrufe melden sich am Router an und "drücken" den "Renew WAN IP" Knopf - das führt bei dem tollen Modem prompt zu einem Neustart. :zerstör:
Das Script läuft bei mir alle fünf Minuten im Cron. Vielleicht hilft es ja jemandem...
Alex
nachdem ich mich seit einem halben Jahr über die halbfertige Umsetzung von DS-Lite durch KabelBW und die absolut inkompetente Fehlerbehebung ärgere, versuche ich selbst Abhilfe bzw. Linderung zu schaffen.
Ich habe auch diese bescheidene DK-7200, mit dem nichtmal ein vernünftiges IPv6 möglich scheint (fehlende Prefix-Delegation).
In meinem lokalen Netz vergibt ein OpenWRT Router alle Adressen und das TC7200 ist nur mein Gateway.
Nachdem die Hotline bei meinen Störungsmeldungen lediglich das Modem neu gestartet hat, habe ich das eine Weile ebenso gemacht - manuell.
Bei der Anzahl der Störungen in den letzten zwei Wochen habe ich das nun automatisiert:
Code:
<i>
</i>#!/bin/sh
CHECKIP=8.8.8.8
ROUTERIP=192.168.1.1
USER=admin
PASS=password
CSRF=08150123A
if [ -z "`/usr/bin/fping -a -r 12 -t 50 -b 16 ${CHECKIP}`" ] ; then curl -s -d "CSRFValueL=${CSRF}&loginUsername=${USER}&loginPassword=${PASS}&logoffUser=1" "http://${ROUTERIP}/goform/login" >> /dev/null curl -s -d "CSRFValue=${CSRF}&WanLeaseAction=1&HostName=&DomainName=" "http://${ROUTERIP}/goform/basic/internet" >> /dev/null curl -s "http://${ROUTERIP}/logout.asp" >> /dev/null echo `date` "Restarting Router" >> /var/log/router.log
fi Das Script benutzt "fping", weil durch den Backoff-Algorithmus mit ziemlicher Sicherheit die (Un-)Erreichbarkeit eines Hosts festgestellt werde kann.
Den CSRF-String muss man aus dem Quelltext der Router Login-Seite kopieren. Ich bin mir nicht sicher, ob er überhaupt geprüft wird.
Die Curl-Aufrufe melden sich am Router an und "drücken" den "Renew WAN IP" Knopf - das führt bei dem tollen Modem prompt zu einem Neustart. :zerstör:
Das Script läuft bei mir alle fünf Minuten im Cron. Vielleicht hilft es ja jemandem...
Alex