Lorsque vous acceptez du courrier sur le WEB Je pense que beaucoup de spams voleront avec les bons mails.
Même si vous essayez de répondre à l'e-mail "Réception terminée!" Après avoir accepté l'e-mail Si vous êtes un partenaire spam Une telle adresse n'existe pas! Chaque jour, je vois une pile de retours d'erreur empilés ... Cela ne peut-il pas être fait? !!
Étant donné que la partie précédant la marque @ dans l'adresse e-mail correspond à l'utilisateur Je ne sais pas avant de l'envoyer
au moins Vérifions si la partie derrière la marque @ est un domaine qui existe vraiment!
Il y en avait autrefois, et on a l'impression qu'il a été construit avec java.
Il n'y a pas d'explication particulière.
import java.util.Hashtable;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class MXLookup {
public static void main(String[] args) {
exec("yahoo.jp");
exec("yahoo.co.jp");
exec("126.com");
exec("127.com");
}
private static void exec(String hostname) {
System.out.println( hostname + " : " + doLookup( hostname ) + "" );
}
private static String doLookup( String hostName ) {
try {
Hashtable<String,String> env = new Hashtable<String,String>();
env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
DirContext ictx = new InitialDirContext( env );
Attributes attrs = ictx.getAttributes( hostName, new String[] { "MX" });
Attribute attr = attrs.get( "MX" );
if( attr == null ){
return null;
}
StringBuilder sb = new StringBuilder();
for(int i=0;i<attr.size();i++){
if(sb.length() > 0){
sb.append(", ");
}
sb.append(attr.get(i));
}
return sb.toString();
} catch (NamingException e) {
return null;
}
}
}
Au fait, le système créé Mangez le courrier entrant dans le shell Ce Java est appelé depuis le shell qui est lancé lorsque le courrier est reçu dans C'est comme filtrer les expéditeurs d'e-mails.
c'est tout Pour votre information.
Recommended Posts