06.04.2016, 13:58
Hello, I would to know if it's possible to send public IP to services like dyndns.org when public IP changes, thank you very much.
dyndns.org
|
06.04.2016, 13:58
Hello, I would to know if it's possible to send public IP to services like dyndns.org when public IP changes, thank you very much.
06.04.2016, 14:39
(06.04.2016, 13:58)josep Wrote: Hello, I would to know if it's possible to send public IP to services like dyndns.org when public IP changes, thank you very much. Check here: http://forum.logicmachine.net/showthread.php?tid=159
06.04.2016, 14:42
Most dynamic DNS services can be updated via a simple HTTP request.
Example for Duck DNS (https://www.duckdns.org). Add this code to a scheduled script with run frequency tuned to how often your IP can change. Code: domain = 'logicmachine'
06.04.2016, 15:25
I use DynDNS account and I find this information, if I need update via HTTP but not HTTPS the expression is require (ssl.hhtps) or anothrer, thank you
https://help.dyn.com/remote-access-api/perform-update/ (06.04.2016, 15:25)josep Wrote: I use DynDNS account and I find this information, if I need update via HTTP but not HTTPS the expression is require (ssl.hhtps) or anothrer, thank you I beleive it will work with https. Bonus is that it's much more secure than http. Just tested this Code: http://username:password@members.dyndns.org/nic/update?hostname=yourhostname&myip=ipaddress&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG When updating any dynamic DNS service make sure you are sending update only when the IP is changed. Many will ban/suspend the account if the update is to frequent. Use the sample from the first link to determine if the IP was changed - only then send the update with the second sample. By this method you can get the fastest possible refresh without risking a much longer delay.
07.04.2016, 08:31
DynDNS also requires this:
Quote:All clients must send a well-formed user agent that includes company name, model number, and software build revision. It can be done for both HTTP and HTTPS requests like this (after require): Code: socket.http.USERAGENT = 'EMBS - LogicMachine - 1'
10.04.2016, 16:48
thank you, It works fine!
10.04.2016, 16:58
11.04.2016, 09:06
require('socket.http')
socket.http.timeout = 60 data = socket.http.request('http://checkip.dyndns.org/') if not data then log('No se puede comprobar la IP externa') return end wan = "(%d+).(%d+).(%d+).(%d+)" wan = string.sub(data, string.find(data, wan)) log(wan) wanip = storage.get('wan_ip') if wanip == nil then wanip = "0.0.0.0" storage.set('wan_ip', wanip) else if wanip == wan then --do nothing else subject = 'Nova IP: ' .. wan .. '' message = 'La direcció IP ha canviat: http://' .. wan .. ':8080' mail('mail@mail.com', subject, message) --log("La nova IP publica externa es : " .. wan) alert("La IP publica actual es: " .. wan) --ver registro alertas para cambios de IP storage.set('wan_ip', wan) log("S,envia mail. Nova IP: " .. wan) require('ssl.https').request('https://user:password@members.dyndns.org/nic/update?hostname=name.dyndns.org&myip=' .. wan .. '&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG') end end wan = storage.get('wan_ip') log("La IP publica actual es: " .. wan)
How can I add to my script WAN IP address?
I want to communicate with dnsdynamic.org to update my IP address. Command: https://login:password@www.dnsdynamic.or...=127.0.0.1 I must change myip to WAN IP. I tried to do this based on the above example: Code: require('socket.http') I have an error: Line 0: bad argument #2 to 'connect' (number expected, got string) Do you what is the problem?
09.08.2016, 09:11
Code: ip = require('socket.http').request('http://myip.dnsdynamic.org/')
09.08.2016, 09:16
(09.08.2016, 09:11)admin Wrote: Unfortunately this error is still appearing on my Error list I tried disable and enable the script.
09.08.2016, 10:31
Since your username has '@', it confuses the url parser. You can do your request like this:
Code: ip = require('socket.http').request('http://myip.dnsdynamic.org/')
23.10.2018, 09:56
Dear all,
As dnsdynamic.org stopped working recently, I suggest you to replace it with http://checkip.amazonaws.com/. Works fine for me. BR Code: ip = require('socket.http').request('http://checkip.amazonaws.com/') |
« Next Oldest | Next Newest »
|