Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How many newGTLDs are managed by thin registries? #126

Open
rfc1036 opened this issue Nov 26, 2022 · 3 comments
Open

How many newGTLDs are managed by thin registries? #126

rfc1036 opened this issue Nov 26, 2022 · 3 comments

Comments

@rfc1036
Copy link
Owner

rfc1036 commented Nov 26, 2022

Is there an authoritative list? Can I just enable recursion for all of them and hope nothing breaks?

e.g.:

whois --verbose rhcp.scot
@egobiah
Copy link
Contributor

egobiah commented Nov 26, 2022

Hello,

Can I just enable recursion for all of them and hope nothing breaks?

I would say it depends on the implementation. I did some PoC and at some times we miss data or it broke.

If you enable recursion for all of them, will it be true recursion or only for one query more?
if you are using the implementation such as query_afilias function wou might miss information :

while (fgets(buf, sizeof(buf), fi)) {
	/* If multiple attributes are returned then use the first result.
	   This is not supposed to happen. */
	if (state == 0 && strneq(buf, "Domain Name:", 12))
	    state = 1;
	if (state == 1 && strneq(buf, "Registrar WHOIS Server:", 23)) {
	    for (p = buf; *p != ':'; p++);	/* skip until colon */
	    for (p++; *p == ' '; p++);		/* skip colon and spaces */
	    referral_server = strdup(p);
	    if ((p = strpbrk(referral_server, "\r\n ")))
		*p = '\0';
	    state = 2;
	}

	/* the output must not be hidden or no data will be shown for
	   host records and not-existing domains */
	if (hide_line(&hide, buf))
	    continue;

	if ((p = strpbrk(buf, "\r\n")))
	    *p = '\0';
	recode_fputs(buf, stdout);
	fputc('\n', stdout);
    }

I have found some domain names where the thin whois also contains another whois referral server but with the implementation above you will only get one :

e.g. taban.aero :

$  whois --verbose taban.aero
Using server whois.aero.
Query string: "taban.aero"

Domain Name: TABAN.AERO
Registry Domain ID: D108300000000590127-AGRS
Registrar WHOIS Server: whois.atakteknoloji.com
Registrar URL: www.atakdomain.com

Then querrying whois.atakteknoloji.com server

$ whois taban.aero --verbose -h whois.atakteknoloji.com
Using server whois.atakteknoloji.com.
Query string: "taban.aero"

Domain Name: taban.aero
Registry Domain ID: D108300000000590127-AGRS
Registrar WHOIS Server: whois.apiname.com

Then querying whois.apiname.com

$ whois taban.aero --verbose -h whois.apiname.com
Using server whois.apiname.com.
Query string: "taban.aero"

Domain Name: taban.aero
Registry Domain ID: D108300000000590127-AGRS
Registrar WHOIS Server: whois.apiname.com
Registrar URL: http://apiname.com

On the other hand, you might have a loop because one thin might refer to another whois server and this server will refer to the first one (I have seen it, but do not remember the domain name).

Also, I found out "Registrar WHOIS server" string is not the only one to take into consideration for getting thin but also "whois:" and "referto:". And as you mention on another git issues, you might have "http" in it.

Regards,

@egobiah
Copy link
Contributor

egobiah commented Nov 26, 2022

Is there an authoritative list?

I don't really understand what you mean by an authoritative list but by the ICANN whois primer (https://whois.icann.org/en/primer) all new gTLD must be a thick:

 Although the new "thick" WHOIS policy now requires all new gTLD registries operate a thick registry,

As I know : newGTLDs must provide RDAP service and IANA provides an accurate map for TLDs to RDAP services https://data.iana.org/rdap/dns.json.

In this list we have 1191 TLDs, if we remove the gTLDs and ccTLDs you listed in tld_serv_list it makes 1147 TLDs. Removing the newGTLDs you already listed, it makes 4 newGTLDs :

  • 'xn--80asehdb'
  • 'xn--80aswg'
  • 'xn--ngbc5azd'
  • 'xn--unup4y'

So I would say you are already managing an authoritative list ?

@rfc1036
Copy link
Owner Author

rfc1036 commented Dec 28, 2022

My point is that, as you noted, the "new" gTLDs are supposed to be thick, but I showed that .scot domain which requires recursion to get more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants