<?php 
//considerando que voce ja submeteu a variavel "email" de algum formulario.

$email = $_POST['email'];
$email = explode('@', $email);     //transforma em array o email. 
$emailhost = $email[1];            //grava o dominio do email na variavel. 

/** 
nesse ponto vamos usar duas funcoes: gethostbyname e gethostbyaddr. A gethostbyname serve para dar um "ping" e pegar o ip do dominio, mas percebi que no windows, pelo menos, se ela nao encontrar ip valido ele retorna o mesmo nome. Depois usaremos, entao, a funcao gethostbyaddr, ela serve para fazer o processo contr�rio, voce fornece um ip para ela devolver o nome do dominio, mas se voce forcener algum outro dado a funcao retorna um erro, por isso vamos usar o "@" na frente, nesse caso, se ela retornar o erro a variavel vai apagar, entao saberemos que o dominio � invalido. 
*/ 

$ip = gethostbyname($emailhost); 
@$ip = gethostbyaddr($ip); 

if (!$ip){ 
echo "email invalido"; 
} 
?> 

Espero que tenham entendido e que possa ajudar para desenvolvedores para windows. N�o que eu goste do windows!!! :)