Вам нужно найти запись MX для части узла из DNS ... но есть много угловых случаев. Не изобретайте колесо (вы обязательно ошибетесь), попробуйте найти существующую библиотеку. Я знаю только один из Snertsoft для C (встроенный в коммерческий milter-sender ), однако.
[Отказ от ответственности: я счастливый пользователь milter-sender]
[ Редактировать ]
Взгляните на RFC 5321 Sec.5, где описаны правила поиска нужного хоста.