If you want a startup/side-project idea, here it is. I can tell you from 10+ years in website hosting and maintenance that most laypeople, designers, marketers, and even some technical people will never understand DNS. (and they shouldn't have to)
A small business wants a website at SquareSpace, cloudflare CDN, email at Google Apps, landing pages on a subdomain with Unbounce, their blog on yet another subdomain, and DKIM/SPF records for the email newsletter system.
Setting this up is not easy for most people. Most people aren't even sure where to do it–let alone how to do it. (is your registrar handling your DNS? sometimes ...)
If you had a 1 or 2-click tool that setup these for people, maybe wrapped it around some domain search/affiliate tools, I think you could make some money.
I actually enjoy setting up that kind of stuff. It is easy and kind of relaxing compared to the stress of developing software sometimes. I'm not trying to be a system admin, but setting up routine services is relaxing sometimes after a hard day. All those services you mentioned have no unified API to automate the process, so it seems like there would need to be a specific script for each provider.
I agree that domain registrars should make it easier for people to simply specify what services they are signed up for and provide the option of one-click auto configuration/population of DNS records. Some registrars do this to the extent that they will fill in Google's MX and other CNAME records if you specify you are a Google apps user.
I disagree that technical people should not have to understand DNS. DNS isn't that complicated in most scenarios, and having a basic understanding of it can help alleviate many of the headaches that are introduced when people don't understand the relationship between the ownership of their domain, their domain registrar and DNS records that point to various services, basic concepts around TTLs and caching, etc.
"Email is so important to the functioning of the Internet that it gets its own record type."
Well that is one way of looking at it. Probably the appropriate way if you're teaching, but if you want to be critical then it reeks of poor design for a particular service to get special treatment by a fundamental part of the internet. It isn't that MX records aren't needed. They just shouldn't only be useful for email.
That's what SRV records are for. MX is just older than that convention.
Edit: And it wasn't as bad of a design decision back when changes to important network protocols was a thing that happened, not a case of the sky falling.
MX records were designed and implemented waay back when it was assumed that every new service would implement it's own super-specific (and probably binary) layer 4 protocol rather than just defaulting to JSON over HTTP(S). In Internet time, SMTP is _ancient_.
It made more sense when you could assume each machine was tended by a sysadmin who was responsible for running it, so having a quick way to reach that person in the Net's distributed "phone book" was a fairly obvious thing to do. Spam... existed, actually, but it was solved by social mechanisms. ("Hey, tell that loser to knock it off or AUP him off your system, wouldja?") DNS is old.
We no longer think of DNS as a "phone book" style directory system, and we no longer assume that every reachable machine is cared for individually.
I assume that if email was coming along today it would look more like internet telephony, which is built on things like e164 to encode addresses into DNS using A, SRV, and NAPTR as the record types.
Learning networking/tcp/dns has been a pain for me for years. I can never wrap my head around it properly despite many attempts.
I blame it on not having easy access to throwaway playgrounds.
I recently found this project http://mininet.org/ which promises throwaway network playgrounds. Hopefully it will help me finally learn networks for good.
Although I appreciate that you're sharing something interesting, I can't believe you when you say the problem to tinker with networking, TCP and DNS was the lack of playgrounds.
Any home LAN is a playground. Internet is a playground. GNS3 for Cisco stuff. Linux itself is a playground (I have been playing today with StrongSwan, Quagga and SoftEther!). If you just want a network simulator, there's Packet Tracer. Of course you could also just fire up tcpdump and/or Wireshark and have a look. Many of the things I've mentioned are free :-)
Almost always you'll want to redirect a bare domain like iskettlemanstillopen.com to www.iskettlemanstillopen.com. Registrars like Namecheap and DNSimple call this a URL Redirect. In Namecheap you would set up a URL Redirect like this...
I prefer my domains to be naked (as opposed to www.), but I typically redirect all www-traffic in my web server (NGINX). Is this the wrong approach?
I prefer naked domains, but the problem I always have is that you can only use A records which makes using them with a bunch of things a pain in the butt. I host my personal website as just a tumblr blog (yes, go ahead and laugh, but I find it less of a chore to deal with than wordpress) so I need a CNAME to make that work, so I just have a very basic redirect on the naked domain to my blog subdomain.
If it were me, I would set the ip (A record) on the root, and then use a CNAME to alias www to the root. Then you don't need any redirects, and you don't need to worry about server doing the redirects going down and taking your site with it.
OpenNIC is a user controlled Network Information Center offering a democratic and non-national alternative to the traditional Top-Level Domain registries. http://wiki.opennicproject.org/HomePage
I used OpenNIC for a while and it mostly worked. I started to notice some problems resolving .today URLs and had to ask for help in their IRC, and the response was not reassuring. At least one operator do not regularly update or even monitor their servers - I saw down time lasting weeks for one server (fortunately I had configured my router to use two and the second kept working throughout). The .today TLD had existed for several years but had not been added to the DNS servers I used. This isn't a complaint, just an observation after a year of regular use.
I like the idea behind the project, but from personal experience I decided that I had to switch to another provider that had more robust infrastructure and regularly patched their machines. DNS is too critical and I felt the risk of having my DNS requests hijacked by a compromised machine was too great.
(Also, who down-voted the parent comment? Bizarre, maybe that was accidental?)
[+] [-] callmeed|9 years ago|reply
A small business wants a website at SquareSpace, cloudflare CDN, email at Google Apps, landing pages on a subdomain with Unbounce, their blog on yet another subdomain, and DKIM/SPF records for the email newsletter system.
Setting this up is not easy for most people. Most people aren't even sure where to do it–let alone how to do it. (is your registrar handling your DNS? sometimes ...)
If you had a 1 or 2-click tool that setup these for people, maybe wrapped it around some domain search/affiliate tools, I think you could make some money.
My 2¢
[+] [-] _RPM|9 years ago|reply
[+] [-] brandon272|9 years ago|reply
I disagree that technical people should not have to understand DNS. DNS isn't that complicated in most scenarios, and having a basic understanding of it can help alleviate many of the headaches that are introduced when people don't understand the relationship between the ownership of their domain, their domain registrar and DNS records that point to various services, basic concepts around TTLs and caching, etc.
[+] [-] michaelbuckbee|9 years ago|reply
[+] [-] overcast|9 years ago|reply
[+] [-] aljones|9 years ago|reply
Well that is one way of looking at it. Probably the appropriate way if you're teaching, but if you want to be critical then it reeks of poor design for a particular service to get special treatment by a fundamental part of the internet. It isn't that MX records aren't needed. They just shouldn't only be useful for email.
[+] [-] forgottenpass|9 years ago|reply
Edit: And it wasn't as bad of a design decision back when changes to important network protocols was a thing that happened, not a case of the sky falling.
[+] [-] darkr|9 years ago|reply
[+] [-] cbd1984|9 years ago|reply
We no longer think of DNS as a "phone book" style directory system, and we no longer assume that every reachable machine is cared for individually.
[+] [-] aarmenaa|9 years ago|reply
[+] [-] axaxs|9 years ago|reply
While in theory that's common, the primary reason is because of the SOA record that must exist.
[+] [-] wink|9 years ago|reply
[+] [-] nine_k|9 years ago|reply
[+] [-] xufi|9 years ago|reply
[+] [-] dominotw|9 years ago|reply
I blame it on not having easy access to throwaway playgrounds.
I recently found this project http://mininet.org/ which promises throwaway network playgrounds. Hopefully it will help me finally learn networks for good.
[+] [-] NetStrikeForce|9 years ago|reply
Any home LAN is a playground. Internet is a playground. GNS3 for Cisco stuff. Linux itself is a playground (I have been playing today with StrongSwan, Quagga and SoftEther!). If you just want a network simulator, there's Packet Tracer. Of course you could also just fire up tcpdump and/or Wireshark and have a look. Many of the things I've mentioned are free :-)
[+] [-] emilburzo|9 years ago|reply
[+] [-] Abundnce10|9 years ago|reply
I prefer my domains to be naked (as opposed to www.), but I typically redirect all www-traffic in my web server (NGINX). Is this the wrong approach?
[+] [-] cmhamill|9 years ago|reply
The summaries for each side:
http://www.yes-www.org
http://no-www.org
[+] [-] snuxoll|9 years ago|reply
[+] [-] quacker|9 years ago|reply
[+] [-] rubiquity|9 years ago|reply
[+] [-] Siilwyn|9 years ago|reply
[+] [-] known|9 years ago|reply
[+] [-] tombrossman|9 years ago|reply
I like the idea behind the project, but from personal experience I decided that I had to switch to another provider that had more robust infrastructure and regularly patched their machines. DNS is too critical and I felt the risk of having my DNS requests hijacked by a compromised machine was too great.
(Also, who down-voted the parent comment? Bizarre, maybe that was accidental?)
[+] [-] jasonbenne|9 years ago|reply
https://howdns.works/ep1/
[+] [-] wineisfine|9 years ago|reply
Its one of the poorest interfaces ever created in the history of mankind.
[+] [-] gist|9 years ago|reply
[+] [-] peatfreak|9 years ago|reply
Has anything as good been released since? What is the current "standard reference" on DNS and BIND?
[+] [-] _RPM|9 years ago|reply
[+] [-] zrail|9 years ago|reply
[+] [-] riobard|9 years ago|reply
[+] [-] riobard|9 years ago|reply
[+] [-] dang|9 years ago|reply