?
Solved

Implementation of GeoDNS

Posted on 2009-07-09
2
Medium Priority
?
1,206 Views
Last Modified: 2012-05-07
I would like to  implement geodns in our environment.Please help
0
Comment
Question by:USTRLLC
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 9

Expert Comment

by:michofreiha
ID: 24821469
Dear Sir,

Kindly follow instructions in the below link and everything will work fne with you

http://www.maxmind.com/app/installation

Regards
0
 
LVL 6

Accepted Solution

by:
remeshk earned 2000 total points
ID: 24940848
Hi,



There are many databases and pieces of code out there that allow you to detect which country (or even city) a visitor to your website is from. Most of this code is intended to allow you to adjust the content of your website. Very useful. Really!
There are instances however where adjusting content is not enough. Sometimes you will want to redirect users to a server that is local to them. This could be because you have lag-sensitive traffic like VoIP of game servers. It could also be that you generate a lot of traffic and local traffic is simply cheaper than transit. Or maybe you have multiple entry points for VPN and email traffic into your corporate network. Whatever it is, the only way to do this transparently is to make sure your DNS hands out the right IP address to your users. Doing this based on ip-country databases is not ideal but it should get you a long way.
I looked around a bit for a way to do this. There are a few special DNS servers for this purpose. There are also some patches for Bind. Im not a fan of either special or patches though, they often imply maintenance.
So I wrote a little command-line script called geobind.php to convert the database provided by Webnet77 to Bind acls. (Requires PHP4 cli version to be installed; make sure to edit variables at the beginning of the script.)
Once you have these acls you can use Binds view functionality to serve different versions of your zone file to different parts of the world. Each zone file would of course point to IP addresses that are local to that specific part of the world.
Imagine you have 3 zone files: one for europe, one for the americas and one for the rest of the world. You simple edit named.conf.local to include the acls for europe and the americas. E.g.:
include "/etc/bind/named.conf.options";
include "/etc/bind/acl-europe_east.inc";
include "/etc/bind/acl-europe_sout.inc";
include "/etc/bind/acl-europe_west.inc";
include "/etc/bind/acl-europe_nort.inc";
include "/etc/bind/acl-america_cari.inc";
include "/etc/bind/acl-america_cent.inc";
include "/etc/bind/acl-america_nort.inc";
include "/etc/bind/acl-america_sout.inc";
Next you create seperate views. One for europe, one for the americas and one for everyone else.
view "europe" {
  match-clients {
    europe_east;
    europe_nort;
    europe_sout;
    europe_west
  };
  zone "peen.net" {
    type master;
    file "/etc/bind/europe/db.peen.net";
  };
};
view "americas" {
  match-clients {
    america_cari;
    america_nort;
    america_sout;
    america_cent
  };
  zone "peen.net" {
    type master;
    file "/etc/bind/americas/db.peen.net";
  };
};
view "others" {
  match-clients { any; };
  zone "peen.net" {
    type master;
    file "/etc/bind/others/db.peen.net";
  };
};
Reload Bind and see what happens!  
peen:~# rndc reload
0

Featured Post

Setting up LaraDock for Laravel

Learn how to set up LaraDock in a Laravel project - LaraDock gives us an easy way to run a Laravel application using Docker in a single command.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Linux users are sometimes dumbfounded by the severe lack of documentation on a topic. Sometimes, the documentation is copious, but other times, you end up with some obscure "it varies depending on your distribution" over and over when searching for …
In part one, we reviewed the prerequisites required for installing SQL Server vNext. In this part we will explore how to install Microsoft's SQL Server on Ubuntu 16.04.
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses
Course of the Month11 days, 18 hours left to enroll

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question