adrgs / requestrepo

Analyze HTTP and DNS requests and create custom DNS records for your subdomain

Home Page:https://requestrepo.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

requestrepo.com

Analyze HTTP and DNS requests and create custom DNS records for your subdomain.

Getting Started

Quick-start using git and docker compose:

git clone https://github.com/adrgs/requestrepo.git
cd requestrepo
cp .env.example .env # modify .env as needed
docker compose up --build

Don't forget to edit .env

This will setup a production-ready environment with the following services:

  • HTTP/S server on ports 80 and 443
  • DNS server on port 53

Setting up DNS nameservers

In order for DNS logging to work, the public IP of the DNS service must be set up as the authoritative nameserver for the domain.

If the domain registrar does not allow setting up IPs directly as nameservers, a workaround is to use a service like traefik.me

Enabling ip2country feature

To enable the ip2country feature, you need to download the free IP to Country Lite database from db-ip.

The csv file must be placed in ip2country/vendor/dbip-country-lite.csv.gz

Development

For development, it is recommended to use the Makefile to start the services for the best developer experience.

Starting the Services

# Start the backend service
make start-backend

# Start the frontend service
make start-frontend

Starting the DNS Server

The DNS server needs to be started manually:

# Start the DNS server
cd dns; python ns.py

Interface

requestrepo demo

Built With

  • React - JavaScript library for building user interfaces
  • FastAPI - FastAPI framework, high performance, easy to learn, fast to code, ready for production

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.

About

Analyze HTTP and DNS requests and create custom DNS records for your subdomain

https://requestrepo.com

License:MIT License


Languages

Language:JavaScript 55.9%Language:Python 24.4%Language:SCSS 15.2%Language:HTML 2.0%Language:Makefile 1.3%Language:Dockerfile 0.9%Language:Shell 0.3%