Skip to content

trullock/Velvet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Velvet DNS Server

A simple DNS server that adds pattern matching functionality to your standard hosts file.

Why

Are you fed up with maintaining a host file that looks like this?

127.0.0.1 SiteA
127.0.0.1 SiteB
127.0.0.1 SiteC
127.0.0.1 SiteD

By using a convention such as a top level domain of .dev, you can answer all lookups for those names with 127.0.0.1

This means you can access anything.dev and it will resolve to your machine. Much like *.mymachine.me, but without the prerequisite of internet access.

Configuration

Mappings

Edit your host file as you normally would, except you now have the benefit of pattern matching syntax on the name parameter:

<IP|Name> <Name pattern>

For example, to map anything.dev to 127.0.0.1:

127.0.0.1 *.dev

Wildcards (*) only match a single subdomain level. To match multiple subdomains, such as anything.anything.dev to 127.0.0.1:

127.0.0.1 *.*.dev

To map sausages.com to bacon.com:

bacon.com sausages.com

Hosts file

If you don't want to use your hosts file to configure Velvet, set the HostsPath setting in the app.config to a different path. The path can be relative to the Velvet executable or absolute.

Limitations

Currently, only IPv4 A and CName records are supported.

Usage

Change your primary DNS server to be 127.0.0.1, and your secondary DNS server to whatever your primary one was. If there is no explicit primary DNS server, run ipconfig /all to find out what your DNS server is.

Run install.bat

Go to Services and start Velvet

About

Simple DNS server to map hostnames to localhost

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published