Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
dyndns och domän hos Loopia
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Scandinavian
View previous topic :: View next topic  
Author Message
preacher
n00b
n00b


Joined: 09 Jan 2004
Posts: 55
Location: Göteborg, Sweden

PostPosted: Mon Jul 11, 2005 8:59 am    Post subject: dyndns och domän hos Loopia Reply with quote

Jag registrerade nyligen en domän hos Loopia, endast dns, ingen hostning.

Då jag blir tilldelad en ip-adress via dhcp från min internetleverantör vill jag gärna att domänen automatiskt skall uppdateras till rätt ip-adress.

När jag tidigare använde mig av en domän hos dyndns.org var det inga problem, det finns ju en uppsjö av mjukvaru-klienter till den tjänsten, dessutom stödde min Linksys-router dem.

Såhär skriver Loopia om sin dynamiska dns-tjänst:
Code:
Vad stödjer LoopiaDNS i sitt protokoll?

Loopias DynDNS server stödjer följande i GET:

system
Vilket system som används. LoopiaDNS stödjer endast system=custom.
Frivillig: ja
Förinställt: custom.

hostname
Här anger du domännamnen som du vill uppdatera separerade med kommatecken.
Frivillig: nej.

myip
Vilken IP adress som LoopiaDNS ska uppdateras till.
Frivillig: nej.

wildcard
Slår på eller av wildcard.
Möjliga värden: ON|OFF|NOCHG.
NOCHG gör att inga förändringar kommer att göras.
Frivillig: Ja
Förinställt: OFF

mx
Specifies a mail exchanger for use with the hostname being modified. The specified MX must be resolved to an IP address, or it will be ignored. Providing no MX setting or MX cannot be resolved to an IP address, will cause the hostname's MX record(s) to be removed.
Frivillig: Ja.

backmx
Request that the MX in the "mx" parameter be set up as a backup MX.
Möjliga värden: YES|NO
Frivillig: Ja
Förinställt: NO.

Följande är ett exempel på en tillåten GET till LoopiaDNS:

GET /XDynDNSServer/XDynDNS.php?
system=custom&
hostname=myhost.com&
myip=11.22.33.44&
backmx=YES
HTTP/1.0
Host: dns.loopia.se
Authorization: Basic username:password
User-Agent: myclient/1.0 me@null.net

Notera att allt från GET till HTTP/1.0 ska vara på samma rad.
Hur kan jag se min IP adress?

Genom att använda dig av adressen nedan kan du se vilken IP adress du har.
http://dns.loopia.se/checkip/checkip.php
Vad är adressen till er dynDNS server?

Adressen som du ska ange i din dynDNS klient är följande:
http://dns.loopia.se/XDynDNSServer/XDynDNS.php


Det ser ju informativt och bra ut, men alla dyndns-klienter jag hittat verkar vara skrivna för endast vissa specifika dyndns-providers, som t.ex dyndns.org, no-ip.com m.fl.

Kan någon hjälpa mig reda ut det här?
Back to top
View user's profile Send private message
ndreas
n00b
n00b


Joined: 02 Jul 2002
Posts: 36
Location: Gothenburg, Sweden

PostPosted: Wed Jul 13, 2005 1:20 pm    Post subject: Reply with quote

Nu är jag ute lite på hal is eftersom jag inte har nån koll alls på Loopia eller dyndns, men jag ger mig på en liten gissning.

Om jag tolkar det rätt så ska det gå att sätta ip-adressen via HTTP i en GET-request. Detta måste betyda att antingen skaffar du nåt program som kan skicka en GET med de headrar som ges i exempel-GET:en (typ en webbläsare eller nåt liknande) eller så knåpar du ihop ett litet skript/program som öppnar en socket mot dns.loopia.se och skickar en GET.

Det är hur som helst i avsnittet GET till HTTP/1.0 som alla variablerna som dom pratar om ska anges, separerade av &-tecken.

Om du väljer att fixa ett eget skript/program så om jag inte minns alldeles galet så måste varje rad avslutas med \r\n för att det ska funka i en HTTP-request, och att hela requesten måste följas av en tom rad. Om jag använder exemplet dom ger ska det alltså se ut nåt sånt här:

Code:
GET /XDynDNSServer/XDynDNS.php?system=custom&hostname=myhost.com&myip=11.22.33.44&backmx=YES HTTP/1.0\r\n
Host: dns.loopia.se\r\n
Authorization: Basic username:password\r\n
User-Agent: myclient/1.0 me@null.net\r\n
\r\n


Observera att radbryten jag lade in var bara för läsbarhetens skull, i ett skript kan du stoppa in allt i en enda sträng eftersom radbryten då hamnar vid varje \r\n.

Hoppas jag har fattat det rätt och att det i så fall hjälper litegrann i alla fall.
Back to top
View user's profile Send private message
crudh
l33t
l33t


Joined: 12 May 2005
Posts: 696
Location: Sundbyberg, Sweden

PostPosted: Wed Jul 13, 2005 1:38 pm    Post subject: Reply with quote

"wget" duger fint, det finns i portage. Det är ett program för att tanka ner hemsidor från konsollen.

Du anropar helt enkelt

http://dns.loopia.se/XDynDNSServer/XDynDNS.php

med variablerna:

Code:
system=custom&
hostname=myhost.com&
myip=11.22.33.44&
backmx=YES
HTTP/1.0
Host: dns.loopia.se
Authorization: Basic username:password
User-Agent: myclient/1.0 me@null.net


(ändrat till dina egna då enligt beskrivningen)

T ex:

Code:
wget -d http://dns.loopia.se/XDynDNSServer/XDynDNS.php?system=custom&hostname=myhost.com&myip=11.22.33.44&... och så vidare med alla variablerna.


wget -d säger åt wget att den skall ta bort filen när den är klar, den får formodligen ner en konfirmationssida från loopia att ipn är bytt. Du kan även pipa outputen till /dev/null tror jag så den inte spars på disk överhuvudtaget.

Sen kan du lägga in det i t ex /etc/conf.d/local.start så körs det varje gång du startar datorn.
Back to top
View user's profile Send private message
preacher
n00b
n00b


Joined: 09 Jan 2004
Posts: 55
Location: Göteborg, Sweden

PostPosted: Fri Jul 15, 2005 6:34 am    Post subject: Reply with quote

Tack, nu blev det hela mycket klarare!

Håller på att försöka skriva ett litet script för att få det här gjort automatiskt, men när jag ska testa kommandot som skall uppdatera ip-adressen stöter jag ändå på problem:

Code:
`wget --http-user=username --http-passwd=passw0rd http://dns.loopia.se/XDynDNSServer/XDynDNS.php?hostname=hostname.se&system=custom&myip=xxx.xxx.xxx.xxx&wildcard=NOCHG`


Detta tar bara ner en sida som innehåller ordet "notfqdn", vilket ju måste innebära att något blev fel. Testar jag att skriva in fel användarnamn eller lösenord står det däremot "badauth" i filen som wget tar ner, så kontakt blir det ju åtminstone.

Efter att ha testat ett tag började det stå "abuse" i filen som wget tankade hem istället, vilket ju inte kändes så kul...

Någon som kan se något fel i kommandot ovan, förutom det uppenbara att jag ändrat mina personliga uppgifter?
Back to top
View user's profile Send private message
zeb
Tux's lil' helper
Tux's lil' helper


Joined: 19 Apr 2002
Posts: 79
Location: Finland

PostPosted: Fri Jul 15, 2005 11:23 am    Post subject: Reply with quote

preacher wrote:

Code:
`wget --http-user=username --http-passwd=passw0rd http://dns.loopia.se/XDynDNSServer/XDynDNS.php?hostname=hostname.se&system=custom&myip=xxx.xxx.xxx.xxx&wildcard=NOCHG`

Detta tar bara ner en sida som innehåller ordet "notfqdn", vilket ju måste innebära att något blev fel.?


notfqdn = not fully qualified domain name; det är antagligen i hostname-parametern som felet ligger.
Back to top
View user's profile Send private message
preacher
n00b
n00b


Joined: 09 Jan 2004
Posts: 55
Location: Göteborg, Sweden

PostPosted: Fri Jul 15, 2005 12:40 pm    Post subject: Reply with quote

zeb wrote:

notfqdn = not fully qualified domain name; det är antagligen i hostname-parametern som felet ligger.


Jo, jag antog också att det var det som notfqdn betydde, men jag har kontrollerat hostname-parametern och den är korrekt vad jag kan se.

För närvarande får jag fortfarande bara ner en fil som det står "abuse" i, trots att Loopias kundsupport säger att det inte finns någon spärr som skall göra så. Har även testat från jobbet men får samma fel, så det är inte ip-numret som är spärrat.
Jag väntar tills imorgon och försöker vidare då.
Back to top
View user's profile Send private message
crudh
l33t
l33t


Joined: 12 May 2005
Posts: 696
Location: Sundbyberg, Sweden

PostPosted: Mon Jul 18, 2005 1:35 pm    Post subject: Reply with quote

Fick du ordning på det?
Back to top
View user's profile Send private message
preacher
n00b
n00b


Joined: 09 Jan 2004
Posts: 55
Location: Göteborg, Sweden

PostPosted: Mon Jul 18, 2005 1:41 pm    Post subject: Reply with quote

Nej, det står fortfarande "abuse" i filen jag får ner, så spärren (som inte ska finnas enligt Loopia) verkar inte släppa inom överskådlig tid. Har tänkt maila dem igen men har inte haft tid.

Lovar att posta det färdiga scriptet när jag väl fått kläm på allt.
Back to top
View user's profile Send private message
preacher
n00b
n00b


Joined: 09 Jan 2004
Posts: 55
Location: Göteborg, Sweden

PostPosted: Fri Jul 29, 2005 1:20 pm    Post subject: Reply with quote

Här är scriptet som det ser ut just nu, vore trevligt om det fanns nåt käckt sätt att få fram det aktuella ip't utan att behöva använda "host", som jag inte redan hade på mitt system utan blev tvungen att emerga.

Code:

#!/bin/bash
############################ LoopiaDynDns.sh v1.0 ##############################
## Loopia Dyndns ip-updatescript, made by Peter (peter@preacher.se) with      ##
## great help from Loopia support and the gentoo forums (forums.gentoo.org)   ##
## You need the command "host" available on your system, which can be found   ##
## in the bindtools package.                                                  ##
################################################################################

################################################################################
################ Edit configuration to suit your system:  ######################
################################################################################

# Your authentication
USERNAME=username
PASSWORD=password

# Your top-level domain (eg. hostname.se, NOT www.hostname.se)
TLD="domain.se"

# Hosts you want to update, separated by commas
HOSTS="domain.se,www.domain.se"

# MX-pointer, leave blank to skip
MX="mail.domain.se"

# Use wildcard (*.hostname.se = hostname.se)? Set to either "ON", "OFF",
# or leave blank to leave current setting unchanged
WILDCARD=""

# Check for changes in IP every X seconds
TIME=300

################################################################################
########## End of configuration, shouldn't need to change below ################
################################################################################

# If no mx specified then dont try to set one
if [ $MX ]
then
        MXCOMMAND="&mx=$MX"
else
        MXCOMMAND=""
fi

# Wildcard wanted or not?
if [ $WILDCARD ]
then
        WCOMMAND="&wildcard=$WILDCARD"

else
        WCOMMAND="&wildcard=NOCHG"
fi

# Update the DNS with current ip if needed
while [ 1 ]
do
# Get our current ip:
IP=`wget http://dns.loopia.se/checkip/checkip.php -q -O - | tail -c +77 | head -c -14`
# Get ip currently in dns
DNSIP=`host $TLD | sed -e "s/$TLD//" -e "s/ has address //"`

# If ip's are not equal, update record
if [ $IP != $DNSIP ]
  then
    wget --delete-after --http-user='$USERNAME' --http-passwd='$PASSWORD' \
'http://dns.loopia.se/XDynDNSServer/XDynDNS.php?hostname=$HOSTS&\
myip=$IP$WCOMMAND&system=custom$MXCOMMAND'"
fi

sleep $TIME
done
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Scandinavian All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum