#!/usr/bin/perl

my ($gateway);

sub defaultroute_linux()
{
	my ($buf, @parts, $rawaddr, $a, $b, $c, $d, $address);

	open(ROUTE_FD, "</proc/net/route");
	while (defined($buf = <ROUTE_FD>)) {
		@parts = split('\t', $buf);

		if ($parts[1] eq '00000000') {
			$rawaddr = unpack("L", pack("H8", $parts[2]));
			
			$a = ($rawaddr >> 24) & 0xff;
			$b = ($rawaddr >> 16) & 0xff;
			$c = ($rawaddr >> 8) & 0xff;
			$d = $rawaddr & 0xff;
			
			$address = "$a.$b.$c.$d";
		}
	}
	close(ROUTE_FD);

	return $address;
}

if (defined($gateway = defaultroute_linux())) {
	print "$gateway\n";
} else {
	print "NONE\n";
}
