o search
indica o (s) domínio (s) a anexar ao seu nome de host em uma pesquisa. por exemplo, se você executar este comando:
ping myserver
se você não tem nada no domínio de busca, ele irá procurar por "myserver" no seu hostfile, e se nada lá, ele retornará
unknown host
mas se você adicionar search mydomain.com
então o mesmo ping retornaria
64 bytes from myserver.mydomain.com (some ip): icmp_seq=1 ttl=62 time=415 ms
(desde que "myserver.mydomain.com realmente exista e responda a solicitações de ping)
nameserver
, por outro lado, é o endereço IP do seu servidor DNS real, onde você procura todos os nomes de host que não estão em seu arquivo de hosts.
edit: adicionou mais alguns detalhes e a segunda parte da pergunta (nameserver)