According to the documentation for
Net::SMTP (take the link to CPAN), the recipients() method can return an array of addresses that succeeded, if you pass the hash slice ( SkipBad => "true" ). Otherwise, it will return an error.
This may not mean that the address is valid, however, just that the server cannot send to that address.