At 1/21/02 4:47 AM, Charles Daminato wrote: >According to my information, this domain was last updated at 20:43EST. > >Since the registry reloads twice daily at 5, I would assume that the >changes are propogating. If you query a.gtld-servers.net you'll see the >register.com nameservers, but if you query b.gtdl-servers.net you'll see >your storck nameservers.
People trying to troubleshoot these kinds of things, and wanting to save their fingers from endless dig lookups, may be interested in a script we use internally that lists the nameserver entries for a domain: http://www.tigertech.net/cgi-bin/domaincheck.cgi It automatically figures out the correct parent nameservers for any suffix (on the fly, no hardcoded lists) and runs the appropriate dig queries. The script itself was intended for our internal use, and is therefore nasty, brutish, and short. Reproduced below for anyone who wants to use it themselves: ----- START OF SCRIPT ----- #!/usr/bin/perl -wT # # Look up a domain's parent zone nameserver entries # Copyright 2000-2002 Robert L Mathews, Tiger Technologies # ([EMAIL PROTECTED]). # Freely redistributable under the GPL $ENV{PATH} = '/bin:/usr/bin'; use strict; use CGI qw(:standard); use CGI::Carp qw (fatalsToBrowser); # auto-flush output $| = 1; # define safe characters we'll use for untainting # external hostnames my $safeChars = '\-\w\.'; print header; print start_html; my $domain = param ('domain'); my $suffix; print <<EOF; <FORM METHOD="POST" ACTION="$ENV{SCRIPT_NAME}"> Domain to check: <INPUT NAME="domain" TYPE="text" VALUE="$domain"> <INPUT TYPE="submit" VALUE="Check"> </FORM> <P><HR><P> <PRE> EOF # untaint domain if ($domain =~ /^([$safeChars]+?\.([$safeChars]+))$/) { $domain = $1; $suffix = $2; } else { print end_html; exit; } # find the nameservers for the parent suffix (e.g., # "com." or "co.uk") my @servers; open (DOM2, "/usr/bin/dig $suffix NS |") or die "unable to open dig\n"; while (<DOM2>) { if (/IN NS\s*([$safeChars]+)\.$/) { push @servers, $1; } } close (DOM2); @servers = sort @servers; foreach my $server (@servers) { eval { local $SIG{ALRM} = sub { die "alarm\n" }; alarm 3; print "$server:\n"; open (STDERR, ">&STDOUT"); open (DOM, "/usr/bin/dig \@$server $domain NS |") or die "unable to open dig\n"; while (<DOM>) { if (/IN NS/) {print " "; print;} } close (DOM); close (STDERR); alarm 0; }; print "\n"; } print "</PRE>"; print end_html; ----- END OF SCRIPT ----- As Chuck points out, even after all the nameserver entries have changed, it will still be at least 2 days before you can rely on them working for everyone -- but at least you know the status a little better. By the way, according to the latest messages Verisign registrar sends to customers, they now reload the nameservers at noon at midnight, rather than 5: >Every day at 12:00 Noon and 12:00 Midnight Eastern Time, new and >corrected information is shared with computers all over the world. >If your modification or request is processed by either of these >times, your changes will be included in these updates. Since the old updates often didn't actually happen twice a day at 5, I have my doubts that this is anything but wishful thinking on their part, but thought I'd pass it along. -- Robert L Mathews, Tiger Technologies "The trouble with doing something right the first time is that nobody appreciates how difficult it was."
