require 'resolv' require 'net/smtp' from = "yex@cn.fujitsu.com" to = "yex@cn.fujitsu.com" message= <<END Ye xin is a pig~~ Ye xin is a piece of ... HAHAHAHAHAHAHA END to_domain = to.match(//@(.+)/)[1] Resolv::DNS.open do |dns| mail_servers = dns.getresources("fnst.cn.fujitsu.com", Resolv::DNS::Resource::IN::MX) mail_server = mail_servers[rand(mail_servers.size)].exchange.to_s mail_servers.each do |server| puts "#{server.exchange.to_s} - #{server.preference}" end Net::SMTP.start("edo.cn.fujitsu.com" ) do |smtp| 1.upto(5) { smtp.send_message message, from, to } end end