Skip to content

Commit

Permalink
Update architecture
Browse files Browse the repository at this point in the history
  • Loading branch information
frdmn committed Jul 13, 2015
1 parent 2313928 commit b629c7a
Showing 1 changed file with 11 additions and 8 deletions.
19 changes: 11 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,25 +72,28 @@ $ dig this.is.a.tld.test @127.0.0.1 +short
1.2.3.4
```

## Under the hood
## Architecture

__hostkeeper__ consists out of three main parts:
![](http://i.imgur.com/NIoXALe.png)

* DNS (dnsmasq)
* Web interface (for comfortable host management)
* RESTful API (to communicate between web interface and DNS server)
__hostkeeper__ consists out of three parts:

### DNS

_@TODO_
* Heart of the hostkeeper project
* Returns "modified" DNS requests for all clients

### Web interface

_@TODO_
* Easy panel for users to add host/ip mappings
* Communicates via REST API to rebuild dnsmasq hosts files and restart services
* ExpressJS as static web server

### RESTful API

The REST API is written from scratch without any libraries, thus it might not be the most fault-tolerant API out there. But since the web interface is probably it's only client, I don't really see a need for it either.
* REST using `simple-node-router`
* Maintains the hosts database/storage
* Restarts dnsmasq to reload hosts

At the moment the API provides the following routes:

Expand Down

0 comments on commit b629c7a

Please sign in to comment.