This project provides two core classes:
generator— creates domain name variations (e.g., typos, transpositions, TLD changes).squatter— checks domain registration data via the RDAP protocol.
Generates possible variations of a given domain:
- Transpositions — swaps adjacent letters
- Omissions — removes letters
- Incorrect TLDs — substitutes valid alternative top-level domains
Example:
facebook.com → facebok.com, fcaebook.com, facebook.net, etc.
Queries RDAP (https://rdap.org) to retrieve registration information for one or more domains.
Useful for detecting potential domain squatters or checking availability signals.
python
from generator import generator
g = generator("example.com")
variants = g.all()
for v in variants:
print(v)python
from generator import squatter
domains = ["example.com", "example.net"]
s = squatter(domains)
results = s.verify()
for r in results:
print(r)Logging is enabled by default. To change verbosity:
python
import logging
logging.getLogger(__name__).setLevel(logging.DEBUG)- The
incorrect_tld()method fetches live TLD data from:- IANA TLD list: https://data.iana.org/TLD/tlds-alpha-by-domain.txt
- RDAP deployment data: https://deployment.rdap.org/
- Network requests use timeouts and basic exception handling.
- This project is for educational and defensive purposes only. Use responsibly.