Giter Club home page Giter Club logo

pymads's Introduction

README

This is a fork of a fork of Thomas Pinckney's pymds project.

Overview

pymads is an authoritative DNS server which makes all name resolution decisions using external modules. pymads itself cannot resolve anything. Instead, it relies on plugins which convert names in client queries into responses that pymads then sends.

pymads differs from pymds in that it's designed for asynchronous service/resolution, and it does not limit itself to specific DNS zones. This allows you to use it as an "internet-wide" server. These requirements are important for the project's intended use: the DNS side of DJDNS.

What's included

This source distribution contains:

  1. pymads -- The core DNS server itself.

  2. pymadsfile -- A plugin for answering queries based on a text file database. This is a "source" plugin in pymads parlance. See below for the format of the database file syntax.

  3. pymadsrr -- A plugin that randomizes the order of multiple A record responses. This is a "filter" plugin as opposed to a "source" plugin. Thus, it cannot resolve names to answers, only alter the answers that some "source" plugin has already provided.

Usage

pymads is tested on Python 2.6-3.3.

Unlike pymds, pymads is not intended to be used as a standalone server. pymads is intended to work as a callback-based component of a larger program, acting as a self-contained library, configured programmatically rather than through config files.

Configuration

See the examples/ directory for configuration file examples.

Source, reporting bugs, etc

See the issue tracker.

pymads's People

Contributors

maddiem4 avatar pczarn avatar thekad avatar clehner avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.