PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : dtdns updater



thunderbirdnils
25.09.09, 13:02
moin moin linux gemeinde

ich habe ein kleines problem meinen dtdns eintrag auf stand zu halten
erstmal der ist zustand
ich hab den fli4l router der meine dtdns einträge aktuell hält
dahinter ein eisfair server auf dem zwei foren laufen
das klappt alles super

nur das ich jetzt umziehen werde und den eisfair bei meinem kumpel aufstelle bis ich wieder internet habe
dafür wollte ich den dtdns eintrag vom eisfair aus auf stand halten da bei dem netgear router meines kumpels leider nur dyndns einträge möglich sind

ich habe zwei möglichkeiten gefunden
möglichkeit 1 die webseite von dtdns aufrufen

http://www.dtdns.com/api/autodns.cfm?id=test.dtdns.com&pw=test

möglichkeit 2 ein perl programm namens "Fast n Furious DtDNS updater"
dieses kann man mit
perl ./data/dtdns.pl test.dtdns.com:test starten

nun zum problem
möglichkeit 1 funktioniert nicht weil ich nicht weiss wie ich den http befehl in der shell absetzten kann
möglichkeit 2 funktioniert wenn ich es manuell eingebe
läuft es als cronjob macht er kein update und im log steht
Sep 25 12:12:00 eis fcron[5591]: Job perl ./data/dtdns.pl test.dtdns.com:test terminated (exit status: 2) (mailing output)
ich hab kein plan was status 2 ist

habe auch noch diesen bashscript gefunden

#!/bin/bash

IPADDR=`ifconfig -a | grep -A1 ed0 | grep inet | awk '{ print $2 }'`
LASTIP=`nslookup canth.dtdns.net ns1.darktech.org | grep -A1 canth |
grep Address | awk '{
print $2 }'`

echo -n "`date` - "

if [ "$IPADDR" != "$LASTIP" ]; then
echo -e "GET /api/autodns.cfm?id=canth&pw=xxxxxxx&client=BSD
HTTP/1.1\nHost: www.dtdns.com\nUser-Agent: bash\n\n" | \
nc www.dtdns.com 80 > /dev/null 2>&1
echo "Posted IP change from $LASTIP to $IPADDR"
else
echo "IP still $IPADDR"
fi

weiss damit aber leider auch nix anzufangen

hoffe ihr könnt mir dabei helfen

muell200
25.09.09, 13:41
nun zum problem


hallo erstmal willkommen auf dem forum



möglichkeit 1 funktioniert nicht weil ich nicht weiss wie ich den http befehl in der shell absetzten kann


curl ist dein freund



möglichkeit 2 funktioniert wenn ich es manuell eingebe
läuft es als cronjob macht er kein update und im log steht

wie sieht dein crontab eintrag aus?

thunderbirdnils
25.09.09, 17:58
das hab ich in der cron datei (./var/spool/fcron/root.orig) gefunden


0 0 * * * /usr/sbin/logrotate /etc/logrotate.conf
0 * * * * perl ./data/dtdns.pl test.dtdns.com:test
#------------------------------------------------------------------
# /var/cron/etc/root/certs file generated by certs.sh v1.1.0-3
#
# Do not edit this file, edit /etc/config.d/certs
# Creation Date: 2009-09-25 Time: 12:56:41
#------------------------------------------------------------------
11 2 * * 1 /var/install/bin/certs-update-crl -quiet

# ================================================== ============
# MySQL autobackup
# Do not edit this file, use /etc/config.d/mysql
# Creation: 2009-09-25 13:01:54
# ================================================== ============
15 1 * * * /usr/local/mysql/bin/mysqlbackup.sh -all


vermute mal das es das is was das eisfair generiert für die cronjobs

thunderbirdnils
25.09.09, 18:35
ok habe mich mal mit dem curl beschäftigt und es is genau das was ich suchte
mit dem befehl
curl -g "http://www.dtdns.com/api/autodns.cfm?id=test.dtdns.com&pw=test" kann ich die ip einträge ändern und das funktioniert auch als cronjob

vielen dank für die hilfe