Odpowiedzi:
Możesz ręcznie skonfigurować serwery whois dla nowych TLD.
Po prostu utwórz plik /etc/whois.conf
i dodaj następującą treść, a będziesz mógł wyszukać nowe TLD:
whois.conf (Github Mirror: whois.conf )
Whois.conf używa wyrażeń regularnych .
Możesz łatwo uzyskać właściwy serwer whois bezpośrednio z IANA bez edytowania dodatkowych plików lub tabel.
Przykład TLD „.de”
Linux, OSX (i zgodny):
whois -h whois.iana.org .de |
egrep -e '^whois:' |
sed -e 's/[[:space:]][[:space:]]*/ /g' |
cut -d " " -f 2
baw się dobrze
whois
narzędzia, nie jestem pewien (może zmniejszyć obciążenie?). W każdym razie, rekwizyty i dziękuję.
whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD
. Co ciekawe, wystarczy użyć whois.nic.TLD
jako hosta bazy danych dla większości (a może wszystkich?) TLD, jak wskazał @Andrew.
.tube
odpowiedzialny serwer nie jest publikowany. Prawdopodobnie dlatego, że serwer IANA jest odpowiedzialny za whois -h whois.iana.org nic.tube
działanie.
Większość klientów Whois zakoduje na stałe serwery TLD, zamiast aktywnie pobierać serwer Whois z IANA podczas wykonywania TLD, które nie są jeszcze znane klientowi.
Zbudowałem własne narzędzie do wyszukiwania Whois online, z którego można korzystać http://gwhois.org/, które obsługuje wszystkie TLD i adresy IP, ponieważ wszystkie wyszukiwania zaczynają się od IANA, a następnie w razie potrzeby przechodzą do rejestru i rejestratora.
Spędziłem również dużo czasu na tworzeniu inteligentnego parsera Whois, który wyświetla dane Whois w sposób przyjazny dla użytkownika.
Przykładowe zrzuty ekranu:
gwhois
pakiet wymaga zainstalowania dodatkowych 25 pakietów z oficjalnego repozytorium. Nie to, że przegapiłbym ~ 4,4 MB przestrzeni dyskowej, czy to wszystko naprawdę jest niezbędne do poprawnego działania pakietu?
Wygląda na to, że działa w przypadku większości nowych plików:
Nazwa hosta serwera ma postać: whois.nic.newtldname
na przykład:
whois -h whois.nic.host example.host
„Ta nazwa jest zastrzeżona przez rejestr zgodnie z zasadami ICANN”. etc etc etc
Ponadto przeglądanie http://nic.newtldname
zazwyczaj prowadzi do strony Rejestr / Uruchom.
whois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD
whois.nic.$ext
i $ext.whois-servers.net
- szukam innych do dodania do mojej listy.
Jeśli używasz standardowego klienta linux, definicje nie zostały jeszcze zaktualizowane i zawierają nowy TLDS.
Masz dwa możliwe rozwiązania:
W systemie OS X narzędzie whois nie wydaje się być zbudowane z obsługą /etc/whois.conf ( podobnie jak Slackware? ). Najprostszym sposobem na rozwiązanie tego problemu jest zainstalowanie „zduplikowanych” Whois z Homebrew . Możesz to zrobić za pomocą
brew tap homebrew/dupes
brew update
brew install whois
brew untap homebrew/dupes
W ten sposób użyje zaktualizowanej listy serwerów whois (ale testowałem tylko z domenami .so i .ninja).
Jednym ze sposobów jest użycie TLD .whois-servers.net jako serwera whois, np .:
whois -h mobi.whois-servers.net npr.mobi
Whois-server.net domeny (prowadzony przez CenterGate LLC, bez afiliacji) zawiera listę nadzieją up-to-date z DNS CNAME przekierowuje do oficjalnych serwerów TLD whois, np:
dig mobi.whois-servers.net
...
;; ANSWER SECTION:
mobi.whois-servers.net. 146 IN CNAME whois.dotmobiregistry.net.
whois -c mobi npr.mobi
. Niestety to nie działa dla wszystkich domen w chwili pisania npwhois -c tube nic.tube
Aby zaktualizować plik /etc/whois.conf, możesz użyć skryptu takiego jak
/*
* Usage : node generateWhoisConf.js > /etc/whois.conf
*/
var json = require('comment-json');
var request = require('request');
request('https://github.com/weppos/whois/raw/master/data/tld.json', function(error, response, body){
var obj = json.parse(body);
Object.keys(obj).forEach(function(key){
if(obj[key].host){
console.log(key.replace(/\./g,'\\.') + '$ ' + obj[key].host);
}
});
});
https://gist.github.com/HugoPoi/4694a99f5a9d9b2c558557bbdd113f54
To inne repozytorium github zapewnia dobre dane na temat serwera whois https://github.com/whois-server-list/whois-server-list
Moje rozwiązanie nie było bardzo wyrafinowane. Nie mogłem znaleźć określonej TLD w Debian Wheezy, Squeeze, OS X El Capitan lub Snow Leopard. Dowiedziałem się jednak, że mogę sprawdzić TLD w Debian Jessie. Na maszynach Debiana właśnie wziąłem źródło Whois dla Jessie i zbudowałem je; teraz działa dobrze. W przypadku systemu OS X kupiłem nowszą wersję Whois za pośrednictwem MacPorts.
Miałem tę samą problematyczną odpowiedź serwera na jedno z moich żądań.
W tym przypadku użycie -a
przełącznika było proste i działało świetnie:
whois -a [your_request_here]
Od man
:
[This flag is] understood by whois.ripe.net and some other RIPE-like servers:
-a
Also search all the mirrored databases.
Lub możesz po prostu użyć lepszego narzędzia. Np. GNU jwhois, który najpierw elastycznie szuka odpowiedniego whois
serwera, a następnie dokonuje rzeczywistego wyszukiwania za pomocą tego serwera.
jwhois ulepszony klient Whois zdolny do wybierania serwera Whois do zapytania w oparciu o elastyczny plik konfiguracyjny przy użyciu wyrażeń regularnych lub bloków CIDR
Ścieżka GNU: https://ftp.gnu.org/gnu/jwhois/
Github one: https://github.com/jonasob/jwhois