Duck DNS Add On Config

I installed the Duck DNS add-on. Setup an account on Duck DNS did the port forwarding etc…

Now in the add on page I am trying to configure in the Options page, I replaced “null” with my token and null under domains with my domain. After I do this I can’t save the new configuration, the button is grayed out. What am I missing?

Did you use quotes around the token and the domain names?

Like this

{
  "token": "xxxxxxxxxxxxxxx",
  "domains": [
    "yyyyyyyyyyyyy.duckdns.org",
    "zzzzzzzzzzzzzz.duckdns.org"
  ],
  "seconds": 300
}

That did it… i was also forgetting to type out the duckdns.org portion.

THANK YOU!

Sidenote. I cannot seem to access it when I attempt to now at http://domain.duckdns.org

is there more to do?

Yes! Since you are trying to reach your Hassio at port 8123, you have to forward port 8123 to your device running Hassio. And then by connecting to domain.duckdns.org:8123 you should be able to reach your Hassio.

1 Like

Thanks for your help!

All up and running, any tips for the let’s encrpyt add-on? I enabled it added my email and domain as before and changed my port forward to 443 - 8123 anything else?

If you are able to connect via https://yourduckdnsname.duckdns.org is should be working. Oooh, and you have to adjust your base URL in your config.yaml file to (without the http or https or port) yourduckdnsname.duckdns.org

1 Like

No luck, do i have to create an account on lets encrypt or anything? I feel as though I have missed something along the way trying to piece together the steps from Hassbian guides… seeing this error:

2017-07-28 20:02:45 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/aiohttp/web_protocol.py", line 278, in data_received
messages, upgraded, tail = self._request_parser.feed_data(data)
File "aiohttp/_http_parser.pyx", line 274, in aiohttp._http_parser.HttpParser.feed_data (aiohttp/_http_parser.c:4364)
aiohttp.http_exceptions.BadStatusLine: invalid HTTP method

No no! Here is my Let’s Encrypt config. First, you have to forward port 80 and 443 to your pi. You have to stop every other Add-On(!) (SSH, SAMBA, etcetera).

Then fill out the config an start the Let’s Encrypt Add-On.:

{
  "challenge": "https",
  "email": "[email protected]",
  "domains": [
    "xxx.duckdns.org",
    "yyy.duckdns.org"
  ],
  "certfile": "fullchain.pem",
  "keyfile": "privkey.pem"
}

After a succesfull setup, don’t forget to turn on your addons again.

1 Like

Trying to to the same but the add-on will not start.
I have stopped all other addons. My router NAT rules are:
80 --> ip of hassio pi port 80
443 --> ip of hassio pi port 8123

I moved from AIO config to hass.io. The DuckDN / Let’s Encrypt setup was working fine.
I hope you have some suggestions.
Thanks

First 443 has to be forwarded to 443 of the pi, the start addon, when succeeded, 443 to pi 8123 and adjust base url in config yaml file.

thanks for the quick response.
I tried that before and now again, but still no go. This is what I get from the logs

17-07-30 13:37:37 INFO (SyncWorker_7) [hassio.dock] Clean homeassistant/armhf-addon-letsencrypt docker application
17-07-30 13:37:38 ERROR (SyncWorker_7) [hassio.dock.addon] Can't run homeassistant/armhf-addon-letsencrypt -> 500 Server Error: Internal Server Error ("driver failed programming external connectivity on endpoint addon_core_letsencrypt (...big ID string...): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use")

So clearly, something is still blocking port 80. How can I figure out what and kill it :smiley:

Finally, figured it out.
In my config I had emulated hue for Google Home on port 80.
Commented it out, restarted HA and voila.

hi all,
my port 80 is being used by different software / devices - can I get this working without using port 80?

All this talk about port forwarding is confusing. I thought, because this is the Hass.io DuckDNS Add-On with built in Lets Encrypt, you only need to forward one port on the router (443>8123). That’s all I did and I have access via the internet. Tell me if I’m missing something else.

Similarly, there’s talk above about turning off other add-ons (samba, ssh, etc.), the turning them back on. Not sure why that’s required, but maybe that’s why I have managed to hose my Samba shares? Still trying to figure out how to reconnect so I can try to edit my yaml files, etc.

Any advise on how to fix Samba now that encryption is on is appreciated.

I´ve tried everything and stil doesn´t work, now I´ve tried to restart my duckdns and gave me that erro:
starting version 3.2.2

INFO: Using main config file /data/workdir/config

ERROR: Lock file ‘/data/workdir/lock’ present, aborting.

anyone knows whats happening?

Hi Maharball1

I see you have a working config. Can you confirm if the xxx in the domains part of the config should include the “http://” part of the URL or just the domain name

Also the same for the Home Assistant config for “Base URL” should it include the “http://” bit
Many thanks for clarifcation as I have been struggling to make this work for a couple of days now

Cheers

Hi Aris

I am also struggling with this. I noticed in my Duck DNS log inside the Duck DNS component it shows the following error

starting version 3.2.2
# INFO: Using main config file /data/workdir/config
+ Account already registered!
Tue Oct 31 19:10:43 GMT 2017: KO
# INFO: Using main config file /data/workdir/config
Processing http://mydomainname.duckdns.org
 + Signing domains...
 + Generating private key...
 + Generating signing request...
end of string encountered while processing type of subject name element #1
problems making Certificate Request

Ok just to answer my own question the problem was I was including the “http://” in my domain name for the Duck DNS component config.
when I leave out the “http://” it has finally generated the keys

starting version 3.2.2
# INFO: Using main config file /data/workdir/config
+ Account already registered!
Tue Oct 31 19:18:50 GMT 2017: OK
31.52.255.74
NOCHANGE
# INFO: Using main config file /data/workdir/config
Processing mydomainname.duckdns.org
 + Signing domains...
 + Creating new directory /data/letsencrypt/mydonamename.duckdns.org ...
 + Generating private key...
 + Generating signing request...
 + Requesting challenge for mydomainname.duckdns.org...
OK + Responding to challenge for mydomainname.duckdns.org...
OK + Challenge is valid!
 + Requesting certificate...
 + Checking certificate...
 + Done!
 + Creating fullchain.pem...
 + Done!

i´ve just found out that my ISP here in brazil are blocking ports 443 and 80 for whoever isn´t a companie, they´re trying to avoid common people to run server on their own, I don´t know if there´s any other way around this, but for now I won´t have way to setup the let´s encrypt