Use Google DNS service as a secondary/slave to an internal linux BIND9 DNS server - linux

The company I work for is considering some changes to our DNS. We host an internal linux BIND9 DNS for primary and secondary authoritative DNS. We are thinking of changing either to hosting our public DNS externally, or keeping the primary on-site and move the secondary to a service like Google. I know it doesn't really make sense to keep our public DNS on-site or splitting it up, but the business owners would like to consider all possible options. I have looked through the documentation on-line and have contacted Google directly, but none of the sources I have checked will tell me if Google will allow us to use their DNS service to replicate a primary DNS server housed on-site and act as a secondary DNS for our domains. Does anyone here know if this is possible, and if it is what specifics they require to make it work. Any assistance that can be offered is appreciated.

Having a name server be a secondary authoritative name server for a domain of yours requires some cooperation from the owner of that server, so the only people who can tell you for sure if Google offers that service are Google themselves.

Related

Nodejs - What does it actually means to deploy a website on a domain and how to do it?

I am a bit new to the deployment of a website. I have a server which is written in Node.js. Previously I had been using Heroku for deploying my apps without knowing much about deployment. I would like to know how do I deploy my server to create a website which has .com at the end of it like www.example.com and not www.example.herokuapp.com. I think it has something to do with domains (correct me if I am wrong). I would like to know what exactly is a domain and a DNS provider and how to deploy a website in such a way. Thank you.
You should ask one question to yourself when you hit www.example.com in browser how does it load a page?. When you run a website on your laptop it basically runs locally, if you want to access your website over the internet you would require public IP(host or server) accessible over the internet so you can access a webpage using public IP:port. But this is not the best option because IP may change in the future and also remembering IP for each application will be difficult. Imagine if you access Facebook, Instagram or any other websites by its IP addresses how difficult and inconvenient would it be? There are a couple of things you should know.
DNS-> Domain Name system
Every host is identified by the IP address but remembering numbers is
very difficult for the people and also the IP addresses are not static
therefore, a mapping is required to change the domain name to IP
address. So DNS is used to convert the domain name of the websites to
their numerical IP address.
DNS is a hostname to IP address translation service. DNS is a distributed database implemented in a hierarchy of name servers. It is an application layer protocol for message exchange between clients and servers.
Name servers
Domain Name Servers (DNS) are the Internet's equivalent of a phone book. They maintain a directory of domain names and translate them to Internet Protocol (IP) addresses. This is necessary because, although domain names are easy for people to remember, computers or machines, access websites based on IP addresses.
DNS record
A domain name, IP address what is the validity?? what is the time to live ?? and all the information related to that domain name.
Once you understand the DNS
Host(Deploy) your website to Amazon EC2 or Heroku and obtain Public IP.
Buy a domain from domain provider like Godaddy
Map domain(ie www.example.com to IP)-> DNS record
Mapping domain to IP may vary platform to platform but the Core principle remains the same. I would suggest you these below link. Try to find differences in both, doing so you will learn along the way
http://www.littlebigextra.com/map-domain-name-amazon-aws-ec2-instance/
https://medium.com/progress-on-ios-development/connecting-an-ec2-instance-with-a-godaddy-domain-e74ff190c233

How to find actual hosting provider for website that are connected to cloudflare.com

I am trying to find hosting provider for a website that is connected to cloudflare. On Whois Lookup, I get Name Server(s) NOAH.NS.CLOUDFLARE.COM
UMA.NS.CLOUDFLARE.COM
When I use this website http://network-tools.com
I get Attempt to get a DNS server for 104.XX.1xx.3x failed:
I know that cloudflare is not a hosting provider. How can I dig deep and find the actual hosting provider?
If you have some type of abuse related issue with the website in question you'll need to file a complete abuse report at cloudflare.com/abuse
In most cases there isn't an obvious way to identify the underlying hosting provider for a website behind CloudFlare. With a valid and complete abuse report they can put you in touch with the hosting provider's abuse team though.
There is a service called CrimeFlare that helps to resolve the actual IP address behind CloudFlare.
If the website owner has properly set up their website's configuration with CloudFlare. There is no way to acquire the IP through any external means (Whois, DNS, etc)
If you must send an abuse report or DMCA complaint, you can contact CloudFlare through their website and they will be able to forward it on for you.
1. Check hosting history
Services like https://toolbar.netcraft.com/site_report can help you discover the history of hostings for the website.
2. Try Cloudflare IP resolver
https://iphostinfo.com/cloudflare/ (Works as of 2019.12.10, not sure if you can trust this source in a long-term).
Enter your domain name. Click "Search DNS" and you will be
brought to a page that checks for common DNS entries. This tool was
created to help webmasters configure their domains DNS with CloudFlare
properly and is not meant to be used for abuse purposes. If you see
your servers real ip in any DNS entry, anyone can easily find your
real servers ip then.
3. Look for subdomains manualy
You can check and WHOIS the IPs for subdomains. E.g. if www.XYZ.com and XYZ.com are both behind CloudFlare, check for popular subdomains, like:
status.XYZ.com
ns.XYZ.com
beta.XYZ.com
test.XYZ.com
forum.XYZ.com
blog.XYZ.com
admin.XYZ.com
etc..
There is some chance that they will be available directly without CloudFlare.
4. Ask
You can find a way to ask them directly. Or get such information via CloudFlare if you have a legit need to know it. (E.g. by contacting cloudflare.com/abuse as suggested by #xxdesmus).
Law enforcement officials can contact us directly at abuse+law#cloudflare.com. You must include your badge & case number when contacting us to receive a response.

Hide nameservers in public whois?

Is there a way to hide the nameservers of my hosting provider in the public whois?
Regards
No, you can't hide such information. A few registries don't disclose them, but it's very limited number.
Some DNS providers offer a feature called "vanity name servers" that allow you to use custom name servers, if your purpose is to hide the name of the hosting provider to curious eyes.
Your question makes no sense over at least 2 points, and you should accept not to try pursuing something as pure vanity.
Here is why:
first whois is not the authoritative source on which nameservers are used for a given domain name, the DNS is;
and the DNS is public because otherwise if your nameservers are "hidden" then your domain name (like your website, emails, etc.) would not work at all.
And even if all the above would not be the case, your website ultimately resolve to an IP address and with just that information people could find out who is the hosting company. Which is why "vanity nameservers" do not help at all.
So there is no shame in having anyone know who hosts your website.
Or, if you are so ashamed of your hosting provider for whatever personal reasons, then it is time to switch, there are a lot of them.
You can reach out to your web host and request a private registration.
here is a link from godaddy.
https://support.godaddy.com/help/article/420/adding-private-registration-to-your-domain-names
The best way to mask your nameserver is using services like cloudflare. However, if you purchased your domain from Namecheap it will surely appear as the domain registrant. but cloudflare will change your nameservers to something link alexia.cloudflare.com
Cloudflare nameserver change will only work if you change your default nameservers to point to cloudflare, some hosting companies have partnership agreements with cloudflare which makes it possible to use the cloudflare services without changing your nameserver.

Dynamic Hostname resolving for DNS based on availability

I have two servers that provide a service to clients.
The client devices access the server through a DNS name. example.com
Now we generally use server1 (primary) but if server one becomes inaccessible, I want the DNS to change its resolving name to server 2 (secondary server)
How can I go about doing this, Is there a service that dyndns provides?
The only way I know to do it is to log into the DNS server and manually change the addresses that the dns resolves 2.
It sounds like you're looking to create an automated failover in the event of an outage. While this is a service that Dyn provides as an added service in the DynECT Managed DNS service (hit up sales#dyn.com for more info on that), you can also use the Dyn Updater API to push an IP update up to your Standard DNS account as well. It would be a matter of using a 3rd party monitoring solution to trigger the update in your code using their API, then using the Dyn Updater API to switch the IP.
http://dyn.com/support/developers/api/
Whether you want to spend the money on upgrading to DynECT Managed DNS or keep using your Standard DNS account, we can help you either way.
Good luck, and if you have any other questions, please do not hesitate to ask.
CL

automatic sub-domain registration

I'm new at DNS world, did some readings in the Internet and wanted to know if I came to the right conclusions. I want to build a system where users are able to create new sub-domains of existing registered domains automatically:
My system provides services to different companies, these services are hosted in my system or some cloud provider. Lets call my system "services" and some company "company1". I want to offer "company1" my services and have its users access these services through "company1" new sub-domain, when "company1" has an already registered domain company1.com. I want "company1" admin user be able to control and choose the sub-domain via my system when he registers his company in my system, and have the whole thing automatic. If i understand correctly:
if the admin would want to use a sub-domain like services.company1.com this will be a problem since I would need to update the authoritative name-servers of company1.com which I don't know who they are, and even if I have a way to know them (and from reading a bit I see that I do have a way), I don't know if every such name server will allow such updates from some external source, connectivity issues etc
if the admin would like to use a sub-domain like company1.services.com then I can achieve this by having my own dns server which I will register the services.com domain for and actually manage all these company sub-domains in my own dns server. This means though that all companies will have to have a sub-domain under my domain services.com
Please correct me if I have a wrong view on how DNS works.
thanks!
services.company1.com
To provide this kind of domain name to your customer, you will need their collaboration. A lot of companies provides this kind of feature by asking you to point an alias (CNAME Record) to a specific server.
Examples of concrete usage
blog.company1.com. 3600 IN CNAME domains.tumblr.com.
shop.company1.com. 3600 IN CNAME myapp.herokuapp.com.
git.company1.com. 3600 IN CNAME bitbucket.org.
Here's some links to the documentation of companies offering this feature:
BitBucket
Heroku
Tumblr
Sample client zone file
So in your case your customer DNS zone will contain something like that:
services.company1.com. 3600 IN CNAME domains.services.com.
where domains.services.com. will be the server that handles the subdomain authentication
company1.services.com
To provide to your customers company1.services.com, you don't have to manage your own DNS server, you just have to be able to add a wildcard record to point all the subdomains to your application. It will be the role of your application to filter your service per subdomains.
Sample service zone file
For example (where 0.0.0.0 is your service IP address):
*.services.com. 3600 IN A 0.0.0.0

Resources