I've tried to use a script to update my DNS-O-Matic but it always fails with incorrect username/password. I have also tried to access this URL with the same error: http://updates.dnsomatic.com/nic/update?hostname=all.dnsomatic.com
I've tried my OpenDNS email and password as well as my old DNS-O-Matic username/password, but both fail.
Any help appreciated!
linfidel can you do the following command from the cli?
curl -k -v -u "USERNAME:PASSWORD" "https://updates.dnsomatic.com/nic/update?hostname=all.dnsomatic.com&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG&myip="
where USERNAME and PASSWORD are your username and password for OpenDNS/dns-o-matic?
What output do you get ?
mcampbellsmith : thanks for the reply. that command appears to work, although my IP has not changed so I can't say for sure.
I'm using Linux with the specified ddclient configuration from OpenDNS (https://support.opendns.com/hc/en-us/articles/227987727-Linux-IP-Updater-for-Dynamic-Networks).
In the support request I submitted 10 days ago, I gave a lot of information, including the output of the command with the failures, and the fact that I was able to successfully change the IP if I manually log on at "https://updates.opendns.com/account/ddns.php?"
Running ddclient, it gets the correct IP address from myip.dnsomatic.com, but when it tries to update, it gets a badauth error.
I certainly don't want to manually check my IP every day and manually update openDNS, so ddclient is my only option. I've been using it for years with dyndns, noip, and dnsomatic, but it has been failing for a few months, at least, for dnsomatic. I used to use dnsomatic for both successfully. I say this to let you know It's not a simple lack of understanding how to update.
I pay have been paying $20/year for "premium support" for several years.
re: "And the URL being used with cURL or with a web browser is sufficient to be:...
So are you suggesting that I need to manually run those commands every time I notice my IP has changed? How convenient!
"I pay have been paying $20/year for "premium support" for several years."
Oh, I didn't know that this exists, although I'm using OpenDNS since 13 years now. And I cannot find where to subscribe to this service. Instead nearly all of my tickets have been answered within a week. I'm already happy with the free service.
"So are you suggesting that I need to manually run those commands every time I notice my IP has changed?"
Did I suggest this? No, I didn't! In no way!
So, what is the error being returned in ddclient from DNS-O-Matic? If it is "badauth", then follow my suggestions above. User name and password must not contain special characters reserved for HTML encoding or escaping. For example, replace the @ character by %40.
The VIP membership has other extra features too. I am, unfortunately, not getting them because whenever my IP address changes, I lose out.
My user name and password don't contain any characters other than letters and numbers, but I've still tried with single quotes around each. And, having been a programmer for 25+ years, I've tried just about every possible permutation of tips, tricks, and intuition in how it should work. In addition to updating my openDNS address for years, I've also used DDNS for the past 8 years. I even used dns-o-matic to update both for a while. I find it hard to believe I'm the only person using the single recommended Linux updater with the recommended configuration file. I've also used the very slightly different recommended configuration from the dns-o-matic site.
I'm disappointed with the lack of any communication from openDNS support. Perhaps I'll try the email address from the dnsomatic account and see if that gets better results.
Oh, and one strange thing... Today, for the first time I can remember, I got two emails from dnsomatic for errors. I had forgotten about having added noip long ago, and the info has changed. I can only assume that the curl command recommended a few messages above is what finally updated my dnsomatic configuration. It was sent because of the no-ip error, but showed no error for opendns, so I guess that command worked. I don't understand why it never shows errors for opendns, but that may be a clue for someone who knows what's going on under the hat.
If it helps, here is the output from ddclient. It obviously fails communicating with openDNS.
UPDATE: updating all.dnsomatic.com
CONNECTED: using SSL
SENDING: GET /nic/update?system=dyndns&hostname=all.dnsomatic.com&myip=#.#.#.# HTTP/1.0
SENDING: Host: updates.dnsomatic.com
SENDING: Authorization: Basic bGluZmlkZWw64oCYa2Qyb2Z0Y2HigJk=
SENDING: User-Agent: ddclient/3.8.3
SENDING: Connection: close
RECEIVE: HTTP/1.0 401 Unauthorized
RECEIVE: date: Tue, 10 Mar 2020 18:11:33 GMT
RECEIVE: server: opendns
RECEIVE: www-authenticate: Basic realm="DNSOMATIC"
RECEIVE: content-length: 7
RECEIVE: content-type: text/html; charset=UTF-8
RECEIVE: x-xss-protection: 1; mode=block
RECEIVE: x-ingress-point: sea
RECEIVE: connection: close
FAILED: updating all.dnsomatic.com: authorization failed (HTTP/1.0 401 Unauthorized
FAILED: date: Tue, 10 Mar 2020 18:11:33 GMT
FAILED: server: opendns
FAILED: www-authenticate: Basic realm="DNSOMATIC"
FAILED: content-length: 7
FAILED: content-type: text/html; charset=UTF-8
FAILED: x-xss-protection: 1; mode=block
FAILED: x-ingress-point: sea
FAILED: connection: close
"It obviously fails communicating with openDNS."
I do not see an evidence for this. This "FAILED: server: opendns" is not an evidence. It fails the authentication at the front-end, i.e. your credentials are bad.
What services have you configured at DNS-O-Matic?
Did you try with another version of ddclient, for example this? https://github.com/ddclient/ddclient
Could be - I thought the line "server: opendns" meant connecting to opendns, but it could be dnsomatic, I suppose. However, I would be willing to bet a lot of money that my username and password are not the problem. There are no special characters, and I use the exact same credentials to log in, and even for the curl command that worked.
As for services, there is only opendns. I used to have no-ip updating years ago, but have been using my router for that; opendns isn't supported, though.
Thanks, but unless support answers my request, I will cancel the service that I'm not getting, and probably just use either the free service, or another one.
Actually, I have been going through opendns, using their supplied configuration for ddclient. My earliest post today had a link to their script (https://support.opendns.com/hc/en-us/articles/227987727-Linux-IP-Updater-for-Dynamic-Networks).
But there is one reason to use the dnsomatic version - it has a feature to send an email if it fails, whereas I don't even know how long the direct script has been failing.
I have found other example scripts on the opendns site aside from this one.
I give up. Fact is that I have some 12 services configured at DNS-O-Matic, also OpenDNS, and that my router sends DDNS updates every day to DNS-O-Matic. And - it works! So, your problem is really individual, not general, most likely related to your ddclient implementation. I suggest you visit a ddclient support forum. Your problem doesn't seem to be related to DNS-O-Matic.
ddlcient works for me first time. I downloaded the file from Sourceforge linked from the support site.
./ddclient -file dd.conf
SUCCESS: updating all.dnsomatic.com: good: IP address set to xxx.xx.xx.xx
I used the following config:
## OpenDNS.com account-configuration
mcampbellsmith : Thanks. Your config file actually helped, indirectly. It looked exactly like the one I was using, but when I copied/pasted it anyway into my config, it worked. Strange, because on close examination, it was identical. To add to the puzzle, I found a config file on dnsomatic site that also worked.
So, after much head scratching, I replaced my file line by line, and found the problem.
I had copied/pasted the config file from the opendns sample I linked to earlier. However, their sample had a non-ascii single quote around the password. It's almost impossible to detect, at least with the font used on my system, but it causes the script to fail.
I entered a support request pointing out the error on that page, although I don't expect anything to come of it from my experience with support. I also entered the fix on a discussion from a few years ago with the same problem that was never solved. I could tell from the user's posted script that he also had the same quotes around the password. Might help someone in the future.
Works great on windows from the command line:
curl http://updates.dnsomatic.com/nic/update?hostname=NETWORK-NAME --basic --user "USER:PASS"
Thinking about using some more specific script or even the Windows "Task Scheduler" ...
To avoid errors regarding special characters and ASCII I pasted the script into the notepad ... and then just applied it where needed ...
I thank the others for the help left here so long and that could be included in the official documentation ...
Please sign in to leave a comment.