Sample code for 30+ languages & platforms
Ruby

MX Lookup Mail Server Domain by Email Address

How to find the mail server for a given email address. Returns the domain name of the primary mail server.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

dns = Chilkat::CkDns.new()
json = Chilkat::CkJsonObject.new()

emailAddr = "bob@example.com"

# This gets all MX domains for an email address.  (Typically one domain.)
# The preferred domain will be at index 0 (see below).
success = dns.Query("MX",emailAddr,json)
if (success == false)
    print dns.lastErrorText() + "\n";
    exit
end

i = 0
count_i = json.SizeOfArray("answer.mx")
while i < count_i
    json.put_I(i)
    domain = json.stringOf("answer.mx[i].domain")
    print domain + "\n";
    i = i + 1
end