Add IP information API with background WHOIS fetcher
- Add /ip and /ip/{addr} JSON endpoints returning comprehensive IP info
- Include ASN, netblock, country code, org name, abuse contact, RIR data
- Extend ASN schema with WHOIS fields (country, org, abuse contact, etc)
- Create background WHOIS fetcher for rate-limited ASN info updates
- Store raw WHOIS responses for debugging and data preservation
- Queue on-demand WHOIS lookups when stale data is requested
- Refactor handleIPInfo to serve all IP endpoints consistently
This commit is contained in:
@@ -6,8 +6,25 @@ CREATE TABLE IF NOT EXISTS asns (
|
||||
asn INTEGER PRIMARY KEY,
|
||||
handle TEXT,
|
||||
description TEXT,
|
||||
-- WHOIS parsed fields
|
||||
as_name TEXT,
|
||||
org_name TEXT,
|
||||
org_id TEXT,
|
||||
address TEXT, -- full address (may be multi-line)
|
||||
country_code TEXT,
|
||||
abuse_email TEXT,
|
||||
abuse_phone TEXT,
|
||||
tech_email TEXT,
|
||||
tech_phone TEXT,
|
||||
rir TEXT, -- ARIN, RIPE, APNIC, LACNIC, AFRINIC
|
||||
rir_registration_date DATETIME,
|
||||
rir_last_modified DATETIME,
|
||||
-- Raw WHOIS response
|
||||
whois_raw TEXT, -- complete WHOIS response text
|
||||
-- Timestamps
|
||||
first_seen DATETIME NOT NULL,
|
||||
last_seen DATETIME NOT NULL
|
||||
last_seen DATETIME NOT NULL,
|
||||
whois_updated_at DATETIME -- when we last fetched WHOIS data
|
||||
);
|
||||
|
||||
-- IPv4 prefixes table
|
||||
|
||||
Reference in New Issue
Block a user