Out of date contact information

David.Kessens at ripe.net David.Kessens at ripe.net
Thu May 2 16:53:33 UTC 1996


Dear Per,

> Per Gregers Bilse writes :
> 
> To avoid wasted efforts, the registries should preferably coordinate
> to mirror the aliases, so that everybody would be reachable as
> 
>   ASnnn at any-registry.net
> 
> Thus, all of
> 
>   AS286 at ripe.net
>   AS286 at internic.net
>   AS286 at apnic.net
> 
> would reach the trouble(some) folks in EUnet.

For a short term solution:

Daniel wrote a short script (source & example included) that you can use
to gather the contact information from the RIPE database (and databases
that we mirror). You can use his script from within your editor to
directly put the contact addresses in the 'To:' field.

The RIPE NCC tries to mirror all major registry databases. We currently
mirror: APNIC, MCI, RADB, ANS, CANET. (The InterNIC uses another format
and is therefore really difficult to mirror for us). You can flag me if
you want me to mirror other databases that are not on the list.

This method should give you most of the functionality that you are asking
for.

For the long term:

Yes, mirroring doesn't scale (if the number of registries will continue
to grow). We are aware of this problem and have already developed some
ideas in the RIPE database and RPSL working group to cope with this but
this will take time to implement (and our customers need to express that
we should use our scarce resources to actually do this).

I hope this helps you,

David Kessens

---

Example usage:

$ db2mad -a as3333
  "Daniel Karrenberg" <dfk at ripe.net>,
  "Geert Jan de Groot" <GeertJan.deGroot at ripe.net>
  
----
#!/usr/local/bin/perl

# db2mad - extract an rfc822 mail address from a db person object
#
# Daniel Karrenberg <dfk at ripe.net>
#
# %I% %D%

if ($ARGV[0] eq "-a") {
	$opt_a = shift(@ARGV);
}

if ($ARGV[0]) {
	$i=0;
	while ($ARGV[$i]) {
		$args = $args . " " . $ARGV[$i];
		$i++;
	}
	open (STDIN, "whois $args |") || die "whois $args: $!";
}

while (<STDIN>) {
	$name = $1 if (/^person:\s+(.*)/);
	$address = $1 if (/^address:\s+(.*)/ && !$address);
	$mail = $1 if (/^e-mail:\s+(.*)/ && !$mail);
	$fax = $1 if (/^fax-no:\s+(.*)/ && !$fax);
	
	&printmad if (/^\s*$/ && ($opt_a||$name));
}

&printmad if $opt_a || $name;
exit(0);


sub printmad { 

	if ($name && $mail) {
		print "    \"$name\" <$mail>,\n";
	}
	elsif ($mail) {
		print "    <$mail>,\n";
	}
	
	$name = 0; $mail = 0; $fax = 0;
	
}

----














More information about the NANOG mailing list