Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to resolve external domain names using MaraDNS in windows 7

Tags:

windows-7

dns

I have installed maradns in windows 7 machine, I have configured it, It can able to handle internal requests, But not external ones

marac file

ipv4_bind_addresses = "127.0.0.1"
timestamp_type = 2
random_seed_file = "secret.txt"

csv2 = {}
csv2["myapp.com."] = "db.lan.txt"

upstream_servers = {} # Initialize dictionary variable
upstream_servers["."] = "8.8.8.8, 8.8.4.4"

db.lan.txt

private.%       192.168.1.21 ~
blog.%          192.168.1.16 ~

For external requests, its giving me the below error

C:\Program Files\maradns-2-0-06-win32>askmara.exe Agoogle.com.
# Querying the server with the IP 127.0.0.1
# Remote server said: REFUSED
# NS replies:
# AR replies:

For internal requests, Its working fine as below

C:\Program Files\maradns-2-0-06-win32>askmara.exe Aprivate.myapp.com.
# Querying the server with the IP 127.0.0.1
# Question: Aprivate.myapp.com.
private.myapp.com. +86400 a 192.168.1.21
# NS replies:
#myapp.com. +86400 ns synth-ip-7f000001.myapp.com.
# AR replies:
#synth-ip-7f000001.myapp.com. +86400 a 127.0.0.1

And when i start the server, I am getting a prompt with a warning as well

enter image description here

How to resolve this issue.

like image 994
n92 Avatar asked Nov 16 '12 06:11

n92


2 Answers

i had the same problem.. fixed it by replacing the latest version with the version 1.4.. after that the only i did was run the mkSecretTxt.exe to create the secret.txt file and configured the mararc file like this:

this is my current mararc file:

# Win32-specific MaraRC file; this makes a basic recursive DNS
# server.

hide_disclaimer = "YES"
ipv4_bind_addresses = "127.0.0.1"
recursive_acl = "127.0.0.1/8"
timestamp_type = 2

csv2 = {}
csv2["local.com."] = "db.lan.txt"

# This is insecure until the secret.txt file is edited
random_seed_file = "secret.txt"

upstream_servers = {}
upstream_servers["."] = "208.67.222.222,208.67.220.220"

db.lan.txt

% 192.168.1.33 ~

As you can see i've used the openDNS servers, if your still get the error try them as well. http://www.opendns.com/support/article/105

cheers

like image 66
DavidN Avatar answered Sep 28 '22 17:09

DavidN


For anyone following along with this, it seems the current solution as of MaraDNS > 2.0 is to use MaraDNS in conjunction with the included Deadwood recursive server to be able to handle both local and external resolution. I was able to get this working on my Windows 10 machine with the following configs...

Assume that the Windows machine's IP address is 192.168.1.2

In the MaraDNS mararc file:

ipv4_bind_addresses = "127.0.0.1"
timestamp_type = 2
random_seed_file = "secret.txt"

csv2 = {}
csv2["mylocalnet.com."] = "db.lan.txt"

In the db.lan.txt file:

% 192.168.1.XXX ~

And in the Deadwood dwood3rc.txt config file:

upstream_servers = {}
upstream_servers["."]="8.8.8.8, 8.8.4.4"
upstream_servers["mylocalnet.com."]="127.0.0.1"

bind_address="192.168.1.2"

recursive_acl = "127.0.0.1/16, 192.168.1.1/24"

# By default, for security reasons, Deadwood does not allow IPs in the
# 192.168.x.x, 172.[16-31].x.x, 10.x.x.x, 127.x.x.x, 169.254.x.x,
# 224.x.x.x, or 0.0.x.x range.  If using Deadwood to resolve names
# on an internal network, uncomment the following line:
filter_rfc1918 = 0

You could potentially set up multiple machines to act as independent servers, but my config above was particular in that in enabled me to run both servers on the same machine. You can see that in the Deadwood config, I'm using Google's DNS servers to handle all upstream requests with the exception of mylocalnet.com. which gets forwarded to localhost and handled by MaraDNS.

From here, you just need to launch both programs and point DNS to 192.168.1.2. Should be good to go!

like image 33
Funktr0n Avatar answered Sep 28 '22 17:09

Funktr0n