Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
talk:start [2020/10/18 23:39] – garyrust | talk:start [2024/03/31 15:06] (current) – garyrust | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | [[http:// | + | ===== - chat ===== |
+ | < | ||
+ | < | ||
+ | </ | ||
+ | **Only works on Local Computers - Choose the link if not local** \\ | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <script language=" | ||
+ | | ||
+ | var objFrame=document.getElementById(" | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | <a | ||
+ | href=" | ||
+ | target=" | ||
+ | your firewall.< | ||
+ | <div style=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | <iframe src=" | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | [[http:// | ||
https:// | https:// | ||
https:// | https:// | ||
- | < | ||
- | HTTP API Specification | ||
- | The update URL can be requested on HTTPS or HTTP. It is recommended that you always use HTTPS | ||
- | We provide HTTP services for unfortunate users that have HTTPS blocked | ||
- | You can update your domain(s) with a single HTTPS get to DuckDNS | ||
- | |||
- | https:// | ||
- | |||
- | The domain can be a single domain - or a comma separated list of domains. | ||
- | The domain does not need to include the .duckdns.org part of your domain, just the subname. | ||
- | If you do not specify the IP address, then it will be detected - this only works for IPv4 addresses | ||
- | You can put either an IPv4 or an IPv6 address in the ip parameter | ||
- | If you want to update BOTH of your IPv4 and IPv6 records at once, then you can use the optional parameter ipv6 | ||
- | to clear both your records use the optional parameter clear=true | ||
- | A normal good response is | ||
- | |||
- | OK | ||
- | A normal bad response is | ||
- | |||
- | KO | ||
- | if you add the & | ||
- | |||
- | OK | ||
- | 127.0.0.2 [The current IP address for your update - can be blank] | ||
- | 2002: | ||
- | UPDATED [UPDATED or NOCHANGE] | ||
- | HTTP Parameters | ||
- | domains - REQUIRED - comma separated list of the subnames you want to update | ||
- | token - REQUIRED - your account token | ||
- | ip - OPTIONAL - if left blank we detect IPv4 addresses, if you want you can supply a valid IPv4 or IPv6 address | ||
- | ipv6 - OPTIONAL - a valid IPv6 address, if you specify this then the autodetection for ip is not used | ||
- | verbose - OPTIONAL - if set to true, you get information back about how the request went | ||
- | clear - OPTIONAL - if set to true, the update will ignore all ip's and clear both your records | ||
- | |||
- | |||
- | |||
- | |||
- | Special no-parameter request format | ||
- | Some very basic routers can only make requests without parameters | ||
- | For these requirements the following request is possible | ||
- | |||
- | https:// | ||
- | |||
- | Restrictions | ||
- | YOURDOMAIN - REQUIRED - only a single subdomain | ||
- | YOURTOKEN - REQUIRED - your account token | ||
- | YOURIPADDRESS - OPTIONAL - if left blank we detect IPv4 addresses, if you want to over-ride this, with a valid IPv4 or IPv6 address | ||
- | |||
- | |||
- | |||
- | |||
- | TXT Record API | ||
- | The TXT update URL can be requested on HTTPS or HTTP. It is recommended that you always use HTTPS | ||
- | We provide HTTP services for unfortunate users that have HTTPS blocked | ||
- | You can update your domain(s) TXT record with a single HTTPS get to DuckDNS | ||
- | your TXT record will apply to all sub-subdomains under your domain e.g. xxx.yyy.duckdns.org shares the same TXT record as yyy.duckdns.org | ||
- | |||
- | https:// | ||
- | The domain can be a single domain - or a comma separated list of domains. | ||
- | The domain does not need to include the .duckdns.org part of your domain, just the subname. | ||
- | to clear the TXT value of your records use the optional parameter clear=true | ||
- | A normal good response is | ||
- | |||
- | OK | ||
- | A normal bad response is | ||
- | |||
- | KO | ||
- | if you add the & | ||
- | |||
- | OK | ||
- | sometxt=thistext [The current TXT record for your update - can be blank] | ||
- | UPDATED [UPDATED or NOCHANGE] | ||
- | HTTP Parameters | ||
- | domains - REQUIRED - comma separated list of the subnames you want to update | ||
- | token - REQUIRED - your account token | ||
- | txt - REQUIRED - the txt you require | ||
- | verbose - OPTIONAL - if set to true, you get information back about how the request went | ||
- | clear - OPTIONAL - if set to true, the update will ignore the txt parameter and clear the txt record | ||
- | |||
- | Note that the TXT record does not show up in the WEB interface | ||
- | You can use online web based Dig tools to query your record | ||
- | https:// | ||
- | To see your TXT record on linux or osx you can query DNS directly | ||
- | |||
- | dig test.duckdns.org TXT | ||
- | As stated before, this record will be also presented for any sub-subdomain queries | ||
- | |||
- | dig test.test.duckdns.org TXT | ||
- | This can be used for example to prove your ownership with letsencrypt.org | ||
- | ======================== | ||
- | https:// | ||
- | first step - choose a domain. | ||
- | http:// | ||
- | n6xre | ||
- | | ||
- | linux cron | ||
- | if your linux install is running a crontab, then you can use a cron job to keep updated | ||
- | we can see this with | ||
- | ps -ef | grep cr[o]n | ||
- | if this returns nothing - then go and read up how to install cron for your distribution of linux. | ||
- | also confirm that you have curl installed, test this by attempting to run curl | ||
- | curl | ||
- | if this returns a command not found like error - then find out how to install curl for your distribution. | ||
- | otherwise lets get started and make a directory to put your files in, move into it and make our main script | ||
- | mkdir duckdns | ||
- | cd duckdns | ||
- | vi duck.sh | ||
- | now copy this text and put it into the file (in vi you hit the i key to insert, ESC then u to undo) The example below is for the domain n6xre | ||
- | if you want the configuration for a different domain, use the drop down box above | ||
- | you can pass a comma separated (no spaces) list of domains | ||
- | you can if you need to hard code an IP (best not to - leave it blank and we detect your remote ip) | ||
- | hit ESC then use use arrow keys to move the cursor x deletes, i puts you back into insert mode | ||
- | echo url=" | ||
- | now save the file (in vi hit ESC then :wq! then ENTER) | ||
- | this script will make a https request and log the output in the file duck.log | ||
- | now make the duck.sh file executeable | ||
- | chmod 700 duck.sh | ||
- | next we will be using the cron process to make the script get run every 5 minutes | ||
- | crontab -e | ||
- | copy this text and paste it at the bottom of the crontab | ||
- | */5 * * * * ~/ | ||
- | now save the file (CTRL+o then CTRL+x) | ||
- | lets test the script | ||
- | ./duck.sh | ||
- | this should simply return to a prompt | ||
- | we can also see if the last attempt was successful (OK or bad KO) | ||
- | cat duck.log | ||
- | if it is KO check your Token and Domain are correct in the duck.sh script | ||
- | what now? | + | ===== - write html code for link with a button ===== |
- | Well you probably want to setup port forwarding on your router to make use of your new DDNS name | + | < |
- | we recommend portforward.com to learn all about this. | + | <a href=" |
+ | </ | ||
- | </ |