Packet generation perl module

e.g.)
	my $ip = PacketUtil::IP->new();
	$ip->src("192.168.0.1"),
	$ip->dst("192.168.0.2"),

	$ip->payload(
		PacketUtil::IP::UDP->new(
			sport => 12345,
			dport => 7,
			data => "FOOBAR" x 1000
		)
	);

	# debug
	print PacketUtil::hexdump($ip->build());

	# send
	my $ether = PacketUtil::Ether->new(device => "lan0");
	$ether->src("00:11:22:33:44:55");
	$ether->dst("aa:bb:cc:dd:ee:ff");
	$ether->payload($ip->build());
	$ether->send();
PacketUtil.pm22,619 bytes    2011-03-17 09:11:09 UTC
test.pl2,400 bytes    2011-03-09 10:20:12 UTC