Multithreaded DNS server written in php
Find a file
Tim Wagner 53a75ced6b
Merge pull request #9 from wagnert/master
Switch to appserver-io/logger version ~2.0
2018-06-19 22:04:59 +02:00
bin Switch from bash to Composer bin script + to latest appserver-io/server version 10.0.0 2016-07-01 20:49:25 +02:00
etc Switched to appserver-io/server version 7.x to make use of multiple SSL configuration options 2016-04-01 14:32:14 +02:00
src Remove connection closing in worker threads -> leads to segfaults 2016-02-29 13:54:34 +01:00
var/log Refactoring DNS handling 2016-02-24 21:00:53 +01:00
.gitignore Initial Commit 2016-02-24 00:13:13 +01:00
.travis.yml Switch to appserver-io/logger version ~2.0 2018-06-19 21:54:33 +02:00
bootstrap.php Initial Commit 2016-02-24 00:13:13 +01:00
build.default.properties Switch to appserver-io/logger version ~2.0 2018-06-19 21:54:33 +02:00
build.xml Initial Commit 2016-02-24 00:13:13 +01:00
CHANGELOG.md Switch to appserver-io/logger version ~2.0 2018-06-19 21:54:33 +02:00
composer.json Switch to appserver-io/logger version ~2.0 2018-06-19 21:54:33 +02:00
phpunit.xml Initial Commit 2016-02-24 00:13:13 +01:00
README.md Update README.md 2016-02-25 22:44:43 +01:00

DNS Server

Latest Stable Version Total Downloads License Build Status Code Coverage Code Quality

Introduction

Are you serious? A DNS server written in pure PHP for PHP? Ohhhh Yes! :)

We use this in the appserver.io project as a server component for handling DNS requests. The purpose to implement a DNS server is to deliver it with appserver.io and allow automatich DNS resolution for the defined virtual hosts.

Installation

If you want to use the DNS server with your application add this

{
    "require": {
        "appserver-io/dnsserver": "dev-master"
    }
}

to your composer.json and invoke composer update in your project.

Usage

If you can satisfy the requirements it is very simple to use the DNS server. Just do this:

git clone https://github.com/appserver-io/dnsserver
cd dnsserver
PHP_BIN=/path/to/your/threadsafe/php-binary bin/dnsserver

If you're using appserver.io the start line will be:

bin/dnsserver

Open a console and enter

console$ dig @127.0.0.1 test.com A +short

the output should be

111.111.111.111

which is the IP v4 address for the domain test.com, defined in the file etc/dns_record.json ;)

External Links