I wrote this quick&dirty Perl script to randomize MAC address. Tested on BT4R2, works fine.

Code:
#!/usr/bin/perl

# MAC ADDRESS RANDOMIZER
# by m0skit0 (acidkaos@hotmail.com)
# 16/03/2011

use strict;

# GLOBALS
my $device;

sub check_args()
{
	if ($#ARGV != 0)
	{
		print "Usage: perl mac_addr_randomize <device>\n";
		exit;
	}

	$device = $ARGV[0];
}

sub generate_random_mac()
{
	my $mac = "";	
	for(my $i = 0; $i < 6; $i++)
	{
		$mac = $mac.sprintf("%02x", int(rand(256))).":";
	}	
	chop($mac);
	return $mac;
}

sub main()
{
	check_args();
	my $new_mac = generate_random_mac();
	print $new_mac."\n";
	system("ifconfig", $device, "down");
	system("macchanger", "-m", $new_mac, $device);
	system("ifconfig", $device, "up");
	return;
}

main();
The script automates ifconfig down and up process, but you can comment this lines if you want to do it manually.

PS: if you're on a DHCP network, you'll need to send a new DHCPREQUEST to fill the kernel routing table.

PS: I'm still learning Perl, so be kind xD

PS: please if this does not fit here, my apologies!