Javamail实现的匿名邮件,模拟邮件服务器发送行为

   Sender  ->  Senders SMTP server  ->  Receivers SMTP server -> Receiver  正常流程,SMTP是这样应用的,需要自己的服务器中转。  其实可以直接Sender - > Receivers SMTP server ->Receiver.     Foxmail里面其实也是支持这个的,叫特快信,需要设置一下
摘要由CSDN通过智能技术生成

 

  Sender  ->  Sender's SMTP server  ->  Receiver's SMTP server -> Receiver

  正常流程,SMTP是这样应用的,需要自己的服务器中转。

  其实可以直接Sender - > Receiver's SMTP server ->Receiver.

     Foxmail里面其实也是支持这个的,叫特快信,需要设置一下DNS.

    因为模拟成邮件服务器,给其他邮件服务器发信应该是不需要验证身份的,而且可以乱填发信人的名字,这个就是所谓的匿名信,其实就是垃圾邮件了。但是现在的邮件服务器过滤比较牛了,可以逆向,知道你的发送IP是动态IP,或者逆向发送者的邮箱例如sender@AAA.com, 发现你的IP和DNS找到的AAA.com不匹配估计就知道是乱发,猜测,以下代码很都服务器都发送不了了 :) 但是学习之用。 如果你能使用原始套接字伪装你的IP或者真可以发匿名信了。
  
    对了,邮件服务器之间是通过MX记录来交换邮件的,就是说我是服务器A,要发送邮件到BBB@BBB.com那么我在DNS记录里面查找MX记录,与BBB.com相同的就是我要发送的邮件服务器的IP了。

    MX记录获取可以使用SUN的一个DnsContext的类,或者可以搜索一下,有个老兄自己写Socket直接查DNS记录。

/**************************************************************************************************/

/** 原理介绍,转载**/

  • 什么是DNS?

      域名管理系统DNS(Domain Name System)是域名解析服务器的意思.它在互联网的作用是:把域名转换成为网络可以识别的ip地址.比如:我们上网时输入的www.163.com会自动转换成为202.108.42.72

  •    什么是A记录?

      A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上。同时也可以设置您域名的二级域名。

  •    什么是NS记录?

      NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。

  •    什么是别名记录(CNAME)?

      也被称为规范名字。这种记录允许您将多个名字映射到同一台计算机。 通常用于同时提供WWW和MAIL服务的计算机。例如,有一台计算机名为“host.mydomain.com”(A记录)。 它同时提供WWW和MAIL服务,为了便于用户访问服务。可以为该计算机设置两个别名(CNAME):WWW和MAIL。 这两个别名的全称就是“www.mydomain.com”和“mail.mydomain.com”。实际上他们都指向“host.mydomain.com”。

  •    什么是泛域名解析?

      泛域名解析定义为: 客户的域名a.com,之下所设的*.a.com全部解析到同一个IP地址上去。 比如客户设b.a.com就会自已自动解析到与a.com同一个IP地址上去。

  •    什么是MX记录?

      MX(Mail Exchanger)记录是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据 收信人的地址后缀来定位邮件服务器。例如,当Internet上的某用户要发一封信给 user@mydomain.com 时,该用户的邮件系统通过DNS查找mydomain.com这个域名的MX记录,如果MX记录存在, 用户计算机就将邮件发送到MX记录所指定的邮件服务器上。
   检查MX记录是否存在的方法
     进行DNS查询的一个非常有用的工具是nslookup,可以使用它来查询DNS中的各种数据。可以在Windows的命令行下直接运行nslookup进入一个交互模式,在这里能查询各种类型的DNS数据。
     DNS的名字解析数据可以有各种不同的类型,有设置这个zone的参数的SOA类型数据,有设置名字对应的IP地址的A类型数据,有设置邮件交换的MX类型数据。这些不同类型的数据均可以通过nslookup的交互模式来查询,在查询过程中可以使用 set type命令设置相应的查询类型。

C:/Documents and Settings/God Father>nslookup
*** Can't find server name for address 192.168.1.1: No response from server
Default Server:  ns.szptt.net.cn
Address:  202.96.134.133

> set type=mx
> tom.com
Server:  ns.szptt.net.cn
Address:  202.96.134.133

Non-authoritative answer:
tom.com MX preference = 10, mail exchanger = tommx.163.net

tom.com nameserver = ns1.tom.com
tom.com nameserver = ns2.tom.com
tommx.163.net   internet address = 202.108.255.210
tommx.163.net   internet address = 202.108.252.141
ns1.tom.com     internet address = 61.135.159.46
ns2.tom.com     internet address = 61.135.159.47

很老的代码了。Jbuilder画图和Eclipse生成的代码确实不一样,其实感觉做界面还是用SWT好些。

/*
 * org.gsoft.mail.server.EmsFrame.java
 * Copyright  All rights reserved.
 */
package org.gsoft.mail.server;


import javax.swing.*;
import java.awt.Font;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值