← All work
Tooling · 2018

Go Tooling for.ro Registry WHOIS and Domain Automation

Romanian .ro domain-auction / registry tooling

Overview

A collection of Go (and some PHP) command-line tools for automating interactions with the Romanian top-level-domain registry (ROTLD): WHOIS lookups and parsing, domain/contact data extraction, and many iterations of a registry API client with HTTP Digest authentication.

Why It Exists

Working with .ro domains at scale, checking availability/expiry, parsing WHOIS records, and driving registry endpoints, needs fast, scriptable tooling. Go’s concurrency and networking primitives suit high-volume registry and WHOIS automation.

What We Built

  • A Go WHOIS toolset (whois.go, whoisopen.go, whois-tester) using whois-go / whois-parser-go to query and structure WHOIS data, plus time handling via goment.
  • A digest.go HTTP Digest client and numerous rotld-api* client iterations (-sync, -fast, -multi, -multi-direct, -sm2, -final, etc.) exploring synchronous, concurrent, and direct strategies against the registry API over TLS.
  • Supporting PHP scripts (client.php, create.php) and data files (domenii.txt, contacte.txt, contactefull.txt) of domains and contacts.

Technologies & Approach

Go standard library for HTTP/TLS/crypto and networking, community WHOIS libraries for lookups and parsing, and a custom Digest-auth client for the registry API. The many rotld-api* variants show iterative tuning of concurrency and throughput.

Outcome / Impact

A practical, high-throughput automation toolkit around the .ro registry, WHOIS at scale and authenticated registry API access, demonstrating systems-level Go networking and a production, performance-driven iteration style.

Capabilities Demonstrated

  • Concurrent, performance-tuned networking in Go
  • WHOIS lookup and structured parsing at scale
  • Building HTTP Digest-authenticated API clients over TLS
  • Registry (ROTLD) automation and bulk domain/contact data processing
More work See all →