CloudComputeGURU: cloud compute

Breaking

Showing posts with label cloud compute. Show all posts
Showing posts with label cloud compute. Show all posts
August 11, 2018

What is Round-Robin DNS? Everything You Need To Know

Round Robin DNS is a technique of load distribution, load balancing, or fault-tolerance provisioning multiple, redundant Internet Protocol service hosts, e.g., Web server, FTP servers, by managing the Domain Name System's (DNS) responses to address requests from client computers according to an appropriate statistical model.


In its simplest implementation, Round-robin DNS works by responding to DNS requests not only with a single potential IP address, but with one out of a list of potential IP addresses corresponding to several servers that host identical services. The order in which IP addresses from the list are returned is the basis for the term round robin. With each DNS response, the IP address sequence in the list is permuted. Usually, basic IP clients attempt connections with the first address returned from a DNS query, so that on different connection attempts, clients would receive service from different providers, thus distributing the overall load among servers.

There is no standard procedure for deciding which address will be used by the requesting application, a few resolvers attempt to re-order the list to give priority to numerically "closer" networks. Some desktop clients do try alternate addresses after a connection timeout of 30–45 seconds.

Round robin DNS is often used to load balance requests between a number of Web servers. For example, a company has one domain name and three identical copies of the same web site residing on three servers with three different IP addresses. When one user accesses the home page it will be sent to the first IP address. The second user who accesses the home page will be sent to the next IP address, and the third user will be sent to the third IP address. In each case, once the IP address is given out, it goes to the end of the list. The fourth user, therefore, will be sent to the first IP address, and so forth.

A round-robin DNS name is, on rare occasions, referred to as a "rotor" due to the rotation between alternative A records.

A load balancing technique in which balance power is placed in the DNS server instead of a strictly dedicated machine as other loadtechniques do.

Round robin works on a rotating basis in that one server IP addressis handed out, then moves to the back of the list; the next server IP address is handed out, and then it moves to the end of the list; and so on, depending on the number of servers being used. This works in a looping fashion.

Round robin DNS is usually used for balancing the load of geographically distributed Web servers. For example, a company has one domain name and three identical home pages residing on three servers with three different IP addresses. When one user accesses the home page it will be sent to the first IP address. The second user who accesses the home page will be sent to the next IP address, and the third user will be sent to the third IP address. In each case, once the IP address is given out, it goes to the end of the list. The fourth user, therefore, will be sent to the first IP address, and so forth.
August 11, 2018

DNS Management: Record Types and When To Use Them

In this article, we’re discussing a few of the more commonly used record types and when you might use them.


A Records
A Records are the most basic type of DNS record and are used to point a domain or subdomain to an IP address. Assigning a value to an A record is as simple as providing your DNS management panel with an IP address to where the domain or subdomain should point and a TTL.

A Record listing in the GoDaddy DNS Management Panel.
A Record listing in the GoDaddy DNS Management Panel.

The screenshot above is a sample of A Record listings of different types. You can see that the wildcard ( * ), @ symbol, and named host name entries were used. Here, the primary naked domain record (@) and blog subdomain point at the same IP address, but are separate records and can be changed individually at any time. A Records are only able to take an IP address as their value and you can point the same domain/subdomain to multiple IP addresses by adding another A Record with the same name but with a different IP address for the value.

You’ll want to use an A Record for your DNS entry if you have an IP address that the domain/subdomain should point to or if you want to establish a domain/subdomain to be used as the place to point a CNAME. You can find out more about why you might want to do this in the CNAME portion of this article.

CNAME
CNAME records are another commonly used type of DNS entry and are used to point a domain or subdomain to another hostname.

CNAME record listing in the GoDaddy DNS Management Panel.
CNAME record listing in the GoDaddy DNS Management Panel.

In the screenshot above, you can see immediately that one of the important differences from A Records is that the value portion of the record is required to be an existing subdomain/domain. You can see that the “journal” hostname points to my blog.iamrobertv.com A Record, which points to 198.101.164.57. What this means is that, if the value of the blog’s subdomain is ever changed, the journal subdomain’s value will also be changed.

As a host, we can use CNAMEs for customers as a means of being able to change the IP address of a server or cluster of servers transparently and without users having to make their own DNS adjustments. You can see an example of this in the store hostname that points to a cluster of servers of servers that sit behind the thor.openhostingservice.com subdomain. Finally, you can see the use of the @ symbol to indicate that the www hostname should point to the naked domain and use its value, which when you see the A Record sample image above, points to 198.101.164.57. This also means that, if the value of the naked/primary domain changes, the record of www will end up being affected accordingly.

MX Record
Mail Exchanger (MX) records are used to help route email according to the domain owners preference. The MX record itself specifies which server(s) to attempt to use to deliver mail to when this type of request is made to the domain. They differ from A Records and CNAMEs in the way that they also require a “priority” value as a part of their entry. The priority number is used to indicate which of the servers listed as MX records it should attempt to use first.

mx_record

In the screenshot above, you can see that I am using two MX records that have separate priority values and point to different subdomains. These subdomains are pointed at two different email servers that are designated to handle email. The MX record with the lower priority number (“0” in this case) is the first to be tried for email delivery. If this server is unable to handle the mail request, the next lowest priority number is used, which in this case would be 10.

Some email providers have only one MX record and some have well over two. The number of MX entries you will need to create depends largely on the mail provider and how they expect the load on these email servers to be handled.

Try the BEST WordPress hosting free for 15 days. Use code PRESS50OFFFOR2 at checkout and get 50% off your first 2 months.

You will notice the host name here is designated as the naked/primary form ( @ ). If you wanted to receive mail on a subdomain, you would adjust the hostname accordingly and ensure your email provider is setup to handle email from the subdomain.

TXT Record
A TXT record is used to store any text-based information that can be grabbed when necessary. We most commonly see TXT records used to hold SPF data and verify domain ownership.

TXT Record listing in the GoDaddy DNS Management Panel.
TXT Record listing in the GoDaddy DNS Management Panel.

The screenshot above gives an example of how a TXT value would be formed for both an SPF entry or an ownership verification for the naked/primary host/name using the @ symbol. If you need to verify or provide an SPF record for a specific subdomain, then you will need to use the appropriate hostname in place of the @ symbol. The rule of thumb for TXT records is that they require an attribute name, followed by an equals sign, followed by a value for the attribute. You can use this to relay any sort of information you’d like using a DNS record, so long as you have a purpose for it and the record is properly formatted.

We won’t go into the details of properly formed SPF records and what their different pieces mean, but these will commonly be supplied to you by the mail provider you are working with. In the same way, places that require domain verification through use of a TXT record will also provide you with a properly formatted TXT record value to use.

Final Thoughts
Managing your own DNS can be a tricky endeavor, especially if you haven’t ever considered what this means or ever even seen a DNS record. Ideally, this series of articles will help you understand the general how a website’s DNS works for a domain from the time it is typed into the browser to the time your name servers handle the request. Although it can be rather easy to understand the record types themselves, knowing about nameservers, registrars, and how a specific set of DNS records gets chosen and used is a little more difficult to navigate, but is just as essential to know.
August 11, 2018

The Past, Present and Future of DNS Security

The Domain Name System (DNS) is the backbone of the modern internet. Over the years, it has evolved to make networked computing accessible to everyday users. However, it has also introduced new DNS security threats, such as distributed denial-of-service (DDoS) attacks, schemes designed to redirect users to malicious websites and more.


Despite these risks, the current configuration of the DNS is deeply embedded into the fabric the internet as we know it. That fabric, however, is poised for a fundamental shift in the near future if certain government agencies succeed in establishing their own DNS separate from the familiar, independently operated system that powers the web today.

The Dawn of DNS
Before the DNS, navigating the internet was a laborious task. In the early days of networked computing, messages were sent from computer to computer manually. The Unix-to-Unix-Copy program used bang addressing, which took the form of “!name!name2!name3,” to specify the route in which a message was sent, going from one computer to another. It required the sender to know the map of what the internet looked like from the origin to the destination — a daunting task for all but the savviest of computing experts.

In 1984, four graduate students at the University of California, Berkeley came up with the Berkeley Internet Name Domain (BIND) program, using the Internet Engineering Task Forces (IETF) 1983 specifications. This moved the mechanism of naming internet-connected nodes away from the topological approach to a method that was based on hierarchical records. It also decentralized the mechanism so that each node was not required to keep a copy of the entire routing database.

Additionally, BIND introduced the concept of mapping the data in the namespace to the actual IP addresses of nodes. This is one of the most powerful concepts behind DNS today: Instead of dealing with an ever-changing universe of numerical addresses, people can navigate to destinations that have static and understandable names. Different users can also receive different translations of identical domain names at the same time, a key point of divergence from the traditional text-file view of the service.

It could be argued that the internet as we know it could not have happened without this element. It simplified the task of navigating the internet and made it possible for multiple users to connect to the same destination simultaneously.

The Controlled Chaos Behind DNS Requests
An individual DNS query can be nonrecursive, recursive, iterative or a combination of these. Simple lookups are possible, but it usually requires a few additional steps.

First, the top-level domain (the information to the right of the dot in an address) is discovered via a query to a root server. That root server may refer the question to another server that is dedicated to the top-level information requested.

It’s important to note that all this recursion may decrease performance. Special caches are often implemented lower down in the network to prevent unnecessary queries to the root server, which could otherwise occur when multiple elements are displayed on the same website.

The recursion process can be exploited in a DDoS attack, in which requests for a target endpoint go flying around the internet at ridiculous speeds. DDoS attackers use DNS servers to cause congestion on the target system by amplifying server response traffic. To make things worse, cybercriminals have many tricks up their sleeves to magnify DNS-based DDoS attacks. For example, an attacker might seek as much zone information as possible in the kickoff request, which would then boost the record response sent to the target, keeping it blocked with useless information.

The Evolution of DNS Security
The DNS as originally conceived was fundamentally insecure. For example, there was no real way to verify that the data found in a given cache was correct. The Domain Name System Security Extensions (DNSSEC) suite addresses this problem. It provides name service clients with origin authentication of data, authenticated denial of existence and data integrity. It is not designed to provide confidentiality of the actual served data, however.

These servers are great choke points to stop traffic from going to known malicious sites. IBM recently partnered with Packet Clearing House (PCH) and the Global Cyber Alliance (GCA) to create Quad9, a DNS service that blocks access to questionable sites. The service does not keep records of who requested to access to these sites, so user privacy is intact.

Quad9 leverages threat intelligence from IBM and other sources to prevent users from navigating to malicious sites. Name service requests are usually sent to the address 0.0.0.0, but the service kicks in when requests are sent to 9.9.9.9. This system uses a go/no-go mechanism to resolve names into IP addresses based on known threats. If a request is made to access an IP address that does not have any documented problems, it gets a response. If the address is problematic, no IP address is returned.

Building a New DNS, BRIC by BRIC
The U.S. ceded DNS control to the independent Internet Corporation for Assigned Names and Numbers (ICANN) in October 2016. However, Bleeping Computer reported that the members of BRICS — Brazil, Russia, India, China and South Africa — is working to develop its own name service system by August 2018. These nations would be taken out of the worldwide system, allowing them to direct internet traffic wherever they decide. This underscores the importance of a global DNS, since the BRICS system would place a chokehold on information, allowing governments to control where data is sent and received.

The current system has been so deeply ingrained into the fabric of the internet that few have even considered what life would be like without it. As it turns out, that day of reckoning may be coming sooner than many technology specialists think.
August 11, 2018

A Comparison Of Dns Server Types Choose The Right Dns Configuration

DNS, or the Domain Name System, is an intrinsic part of how systems connect with each other to communicate on the internet. Without DNS, experts, and the people who use them, would be demanded to connect using only quantitative addresses known as IP addresses.


Besides the obvious difficulty of having to remember a huge number of complex numbers for easy tasks, communicating through IP addresses also ventures some more difficulties. Moving your website to a dissimilar entertaining provider, or moving your servers to dissimilar venues would demand you to inform every client of the brand-new area.

DNS servers, the experts that together form the system that allow us to use names instead of addresses, can server many non-identical functions, each of which can contribute to your ability to accessing servers by name.

In a preceding lead we discussed some of the basic word and ideas of the domain name system. We will assume some familiarity with the ideas covered in that article. In this lead, we will talk about some of the disparate types of DNS server setups and what the merits, use cases, and properties are of each.

The Path of a DNS Query
When a client software wants to accesses a server by its domain name, it must find out how to translate the domain name into an effective routable addresses that it can use to communicate. It needs to know this information in order to get or send information to the server.

Some applications, including most web browsers, maintain an inner cache of new queries. This is the first place the application will check, if it has this aptitude, in order to find the IP addresses of the domain in ask. If it does not find the reply to its ask here, it then asks the system resolver to find out what the addresses of the domain name is.

A resolver in general is any element that acts as a client-side contestant in a dns query. The system resolver is the resolving library that your directing system uses to seek out the reply for DNS queries. In general, system resolvers are usually what we consider receipt resolvers because they are not able of much quality beyond searching a few nonmoving records on the system (like the /etc/hosts register) and forwarding requests to another resolver.

So generally, a query goes from the client application to the system resolver, where it is then passed to a dns server that it has the addresses for. This DNS server is labelled a recursive DNS server. a recursive server is a dns server that is configured to query other DNS servers until it finds the reply to the request. It will either return the reply or an error communication to the client (the system resolver in this case, which will, in turn, pass it to the client application).

Recursive servers generally maintain a cache as well. It will check this cache first to see if it already has the reply to the query. If it does not, it will see if it has the addresses to any of the servers that command the top stage domain elements. So if the ask is for www.instance.com and it cannot find that host addresses in its cache, it will see if it has the addresses of the name servers for instance.com and if necessary, com. It will then send a query to the name server of most exact domain element it can find in order to query for more information.

If it does not find the addresses to any of these domain elements, it has to begin from the very top of the hierarchy by asking the set name servers. The set servers know the addresses of all of the TLD (top stage domain) name servers which command zones for .com, .clear, .org, etc. It will question the set servers if it knows the addresses of to www.instance.com. The set server will refer the recursive server to the name servers for the .com TLD.

The recursive server then follows the trail of forwardings to each ordered name server that has been delegated responsibility for the domain elements, until it can zero in on the accurate name server that has the full reply. It puts this reply into its cache for later queries and then returns it to the client.

As you can see from this instance, there are many dissimilar categories of servers, and they each play a dissimilar role. Let's go over the accurates of the dissimilar types of DNS servers.

Functional Differences
Some of the disagreements between DNS servers are purely structural. Most servers that are involved with implementing DNS are differentiated for definite functions. The symbol of DNS server you choose will largely be on your needs and what symbol of difficulty you are wishing to unravel.

Authoritative-Only DNS Servers
an authoritative-only DNS server is a server that only concerns itself with replying the queries for the zones that it is accountable for. Since it does not support resolve queries for outside zones, it is generally very swift and can handle many requests efficiently.

Authoritative-only servers have the following properties:

Very swift at answering to queries for zones it regulates. an authoritative-only server will have all of the information about the domain it is accountable for, or forwarding information for zones within the domain that have been delegated out to other name servers.
Will not reply to recursive queries. The very definition of an authoritative-only server is one that does not handle recursive requests. This makes it a server only and never a client in the DNS system. Any question approaching an authoritative-only server will generally be approaching from a resolver that has collected a forwarding to it, conveying that the authoritative-only server will either have the full reply, or will be able to pass a brand-new forwarding to the name server that it has delegated responsibility to.
Does not cache query results. Since an authoritative-only server never queries other servers for information to resolve a question, it never has the opportunity to cache results. All of the information it knows is already in its system.
Caching DNS Server
a caching DNS server is a server that handles recursive requests from cases. Almost every DNS server that the directing system's receipt resolver will contact will be a caching DNS server.

Caching servers have the merit of replying recursive requests from cases. While authoritative-only servers may be perfect for serving precise zone information, caching DNS servers are more broadly helpful from a client's orientation. They make the DNS system of the experience accessible to rather stupid client interfaces.

To evade having to take the performance knocked of issuing aggregate aspect ask to other DNS servers every moment it receives a recursive ask, the server caches its results. This allows it to have accesses to a beamy base of DNS information (the whole world's publicly accessible DNS) while handling new requests very quickly.

a caching DNS server has the following properties:

accesses to the whole range of public DNS data. All zone data served by publicly accessible DNS servers hooked into the international delegation tree can be approached by a caching DNS server. It knows about the set DNS servers and can intelligently follow forwardings as it receives data.
Ability to spoon-feed data to stupid cases. Almost every modern operating system offloads DNS resolution to dedicated recursive servers through the use of receipt resolvers. These resolving libraries simply issue a recursive request and expect to be handed back a complete answer. A caching DNS server has the exact capabilities to serve these clients. By accepting a recursive query, these servers promise to either return with an answer or a DNS error message.
Maintains a cache of recently questioned data. By caching the results as it collects them from other DNS servers for its client requests, a caching DNS server builds a cache for new DNS data. being on how many cases use the server, how huge the cache is, and how long the TTL data is on the DNS records themselves, this can drastically speed up DNS resolution in most cases.
Forwarding DNS Server
an alternative take on creating a cache for client appliances is through the use of a forwarding DNS server. This come adds an extra link in the series of DNS resolution by implementing a forwarding server that simply passes all requests to another DNS server with recursive aptitudes (such as a caching DNS server).

The merit of this system is that it can give you the merit of a locally accessible cache while not having to do the recursive work (which can result in more network traffic and can take up considerable resources on high traffic servers). This can also govern to some captivating trait in splitting your independent and public traffic by forwarding to disparate servers.

a forwarding DNS server has the following properties:

The ability to handle recursive requests without performing recursion itself. The most important property of a forwarding DNS server is that it passes requests on to another agent for resolution. The forwarding server can have minimal resources and still give fantastic ideal by supplementing its cache.
give a local cache at a closer network venue. Particularly if you do not feel up to building, maintaining, and obtaining a full-fledged recursive DNS success, a forwarding server can use public recursive DNS servers. It can leverage these servers while moving the capital caching venue very close to the client gagdets. This can decrease respond times.
Increases trait in being local domain space. By passing requests to disparate servers conditionally, a forwarding server can ensure that inner requests are served by independent servers while outer requests use public DNS.
Combination Solutions
While the above successes are built with very precise purposes in mind, it is often desirable to set up your DNS server to combine the merits of each.

a dns server may be configured to act as a recursive, caching server for a specify number of local cases, while responding only aspect, influential requests from other cases. This is a communal configuration because it allows you to respond international requests for your domain, while also allowing your local cases to utilize the server for recursive resolution.

While definite DNS program is specially designed to fulfill one accurate role, applications like Bind are incredibly flexible and can be used as crossbred successes. While in some cases striving to give too many services in an individual server can guide to performance degradation, in many cases, especially in the case of little structure, it makes the most sense to maintain an individual, all-in-one success.

Relational Differences
While the most obvious disagreements between DNS server configurations are probably structural, the relative disagreements are also extremely all-important.

Primary and Slave Servers
Given the value of DNS in making services and whole networks accessible, most DNS servers that are influential for a zone will have built-in redundancy. There are different terms for the relations between these servers, but generally, a server can either be a leader or a slave in its configuration.

Both leader and slave servers are authoritative for the zones they handle. The leader does not have any more power over the zones than the slave. The only differentiating factor between a leader and a slave server is where they read their zone files from.

A leader server reads its zone files from files on the system's disk. These are usually where the zone administrator adds, edits, or transfers the original zone files.

The slave server receives the zones that it is authoritative for through a zone transfer from one of the leader servers for the zone. Once it has these zones, it places them in a cache. If it has to restart, it first checks its cache to see if the zones inside are up-to-date. If not, it requests the updated information from the leader server.

Servers are not relegated to only be a leader or a slave for all of the zones they handle. Master or slave status is assigned on a zone-by-zone basis, so a server can be a leader for some zones and a slave for others.

DNS zones usually have at least two name servers. Any zone accountable for an internet routable zone must have at least two name servers. Often times, many more name servers are maintained in order to spread the load and increase redundancy.

Public vs Private Servers
Often, organizations use DNS both externally and internally. However the information that should be made accessible in both of these spheres is often drastically non-identical.

an organization might maintain an externally accessible influential-only DNS server to handle public DNS queries for the domains and zones that it handles. For its inner users, the organization might use an apart DNS server that contains the influential information that the public DNS provides, as well as extra information about inner hosts and services. It might also give extra features, such as recursion and caching for its inner cases.

While we mentioned the ability to have a solo server handle all of these tasks in the "combination" server above, there are certain benefits to splitting the workload. In information, maintaining completely apart servers (inner vs outer) that have no knowledge of each other is often desirable. It is especially all-important, from a security standpoint, that the public server has no records of the independent equivalent. This means not listing your independent name servers with NS records in the public zone records.

There are some additional considerations to keep in mind. While it might be easier to have your public and private servers share zone data that they have in common in a traditional leader-slave relationship, this can leak information about your private infrastructure into the wild.

Beyond just keeping your private servers out of the zone files themselves (essentially a publicly searchable entity), it is usually a good idea to also remove any reference to the private server in the public server's configuration files. This means removing transfer, notify, and leaders configuration details so that a compromise of the public server does not mean that your internal name servers are suddenly exposed.

This means maintaining apart zone records for each, which can be more work. However, this may be necessary for direct separation and security.
August 11, 2018

Introduction to Google Public DNS - How And Why You Should Use It

When people email us asking for help with their DNS configuration, we often point them at DNS lookup tools they can use to diagnose problems, but sometimes we're able to narrow down problems to local or ISP provided resolvers. At that point, we sometimes suggest switching to Google's Public DNS. Here's how you can do that and why you might want to consider it.


Google's Public DNS is fast
Google has their Public DNS service available on a global anycast network which provides all of the benefits of anycast for the queries made to them. For largely the same reasons that authoritative name servers on an anycast network provide a speed boost to your customers, anycast resolvers provide a speed boost to you by allowing your browser to make requests to the nearest name server available.

Additionally, Google has taken many steps to reduce latency in DNS queries, including some interesting measures for resolving cache misses across their infrastructure.

Using Google's Public DNS provides increased security
One of the bigger problems with publicly available resolvers is the possibility that they could be used in Denial of Service and Amplification attacks by making a small query which returns a large response. Google has taken a number of measures to protect against some of the most common attacks and monitors their resolvers carefully to ensure bad actors are not able to misuse their service. In addition to monitoring their servers for bad actors, Google Public Resolvers fully support DNSSEC which allows them to guarantee the responses they are offering are authentic and from authoritative sources.

The right answer to every query
One of the biggest reasons we suggest customers switch to Google's resolvers is that their network is set to use improperly configured resolvers. Providing correct results is one of the key benefits which Google Public DNS provides. It puts priority on returning the right answer to a query. In cases when there is a query for a non-existent or mistyped domain name, users get an NXDOMAIN response, which indicates no known response, to their query.

How to use Google Public DNS
Now that we've investigated why you might want to use Google's Public DNS let's take a look at what you need to do to use it. Configuring your settings will vary based on the operating system and device you are using. You will also likely need administrative control of your computer to change these settings, but you should be able to adjust the DNS settings for your system whereever you would adjust other network settings. Specifically, you should use the following addresses, or even just the IPv4 addresses, as your DNS servers.

Google's Public DNS IP addresses (IPv4) are:

8.8.8.8
8.8.4.4
Google's Public DNS IPv6 addresses are:

2001:4860:4860::8888
2001:4860:4860::8844
Hopefully this guide will help you avoid problems with your DNS configuration and provide you with more reliable resolution.