Git Product home page Git Product logo

ipv6-dns-server's Introduction

❗ Project moved to GitLab, due to GitHub's lack of IPv6 support. https://gitlab.com/miyurusankalpa/IPv6-dns-server

Introduction

A simple Node DNS Server proxy based on Peteris Rocks tutorial, which serves IPv6 records if a CDN is matched.

Running locally

Clone the repo

git clone https://gitlab.com/miyurusankalpa/IPv6-dns-server.git

Build the project

npm install

Starting the server

npm start

Changing DNS Resolvers

Change the dns_resolver variable in the app.js file.

Disable IPv6 for a domain

Add the domain to no_aaaa array in the app.js file.

Add a custom IPv6 for a domain

Add the domain to add_aaaa object with IPv6 address in the app.js file.

Turn off aggressive mode

Change the aggressive_v6 variable to false in the app.js file. See individual services below to see what aggressive mode does.

Turn on IPv6 only mode

Change the v6_only variable to true in the app.js file.

Testing if DNS proxy is working

Cloudflare

  • Test domains: db-ip.com
  • IPv6 Type: Anycast
  • Usability: Stable
  • Coverage: All
  • Aggressive mode: All cloudflare services which uses their DNS service, regardless of cloudflare proxy has been disabled(grey cloud) will get a Cloudflare IPv6 address.

Akamai

Fastly

  • Test domains: imgur.com, www.twitch.tv
  • IPv6 Type: Anycast, Unicast
  • Coverage: All
  • Usability: Stable

Amazon S3

  • Test domains: s3.amazonaws.com, github-production-release-asset-2e65be.s3.amazonaws.com
  • IPv6 Type: Unicast
  • Coverage: *.s3.amazonaws.com and s3 websites hostnames/cnames only.
  • Usability: Stable

Amazon Cloudfront

  • Test domains: www.amazon.com, vod-secure.twitch.tv
  • IPv6 Type: Unicast
  • Coverage: All
  • Usability: Stable

Bunnycdn

  • Test domains: cdn-b-east.streamable.com
  • IPv6 Type: Unicast
  • Coverage: All
  • Usability: Stable

Highwinds

  • Test domains: code.jquery.com
  • IPv6 Type: Anycast
  • Coverage: All
  • Usability: Stable

Microsoft Edge

  • Test domains: onedrive.live.com
  • IPv6 Type: Anycast
  • Coverage: Only on some services
  • Usability: Stable

Microsoft Windows (Edgecast)

  • Test domains: software-download.microsoft.com
  • IPv6 Type: Unicast
  • Coverage: Only on some services
  • Usability: Unknown

Sucuri

  • Test domains: www.exploit-db.com
  • IPv6 Type: Anycast
  • Coverage: Only on some services
  • Usability: Unknown

Weebly

  • Test domains: www.weebly.com
  • IPv6 Type: Unicast
  • Coverage: Unknown
  • Usability: Unknown

Wordpress VIP

  • Test domains: wpvip.com, nielsen.com
  • IPv6 Type: Anycast
  • Coverage: Unknown
  • Usability: Unknown

Github.io (Fastly)

  • Test domains: sadh.life
  • IPv6 Type: Anycast
  • Coverage: Only IPv4 match
  • Usability: Stable

Stack Exchange sites (Fastly)

  • Test domains: stackoverflow.com
  • IPv6 Type: Anycast
  • Coverage: All+Only on Aggressive mode.
  • Usability: Logout or delete cookies
  • Aggressive mode: Errors on some pages

Twitter (Cloudfront)

  • Test domains: twitter.com
  • IPv6 Type: Unicast
  • Coverage: Some Domains+Only on Aggressive mode.
  • Usability: Logout or delete cookies
  • Aggressive mode: Errors on some pages

Credits

ipv6-dns-server's People

Contributors

dependabot[bot] avatar miyurusankalpa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ipv6-dns-server's Issues

Akamai assitance

Hello,

really love this project however I can't seem to get Akamai to work. It seems I need to put the url in add_aaaa with value in format akamai|hostname but I can't seem to find akamai hostname for the domain I need

How did you get the akamai hostname to put into that field?

<3 Driscode

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.