# La clase EventDnsBase

(PECL event >= 1.2.6-beta)

## Introducción

Representa la estructura base DNS de Libevent. Utilizada para resolver DNS de forma asíncrona, para analizar ficheros de configuración como resolv.conf etc.

## Sinopsis de la Clase

final class EventDnsBase {
/* Constantes */
const int OPTION_SEARCH = 1;
const int OPTION_NAMESERVERS = 2;
const int OPTION_MISC = 4;
const int OPTION_HOSTSFILE = 8;
const int OPTIONS_ALL = 15;
const int DISABLE_WHEN_INACTIVE = 32768;
const int INITIALIZE_NAMESERVERS = 1;
const int NAMESERVERS_NO_DEFAULT = 65536;
/* Métodos */
public function __construct( EventBase `$base` , int|bool `$initialize` )
public function addNameserverIp( string `$ip` ): bool
public function addSearch( string `$domain` ): void
public function clearSearch(): void
public function countNameservers(): int
public function loadHosts( string `$hosts` ): bool
public function parseResolvConf( int `$flags` , string `$filename` ): bool
public function setOption( string `$option` , string `$value` ): bool
public function setSearchNdots( int `$ndots` ): bool
}

## Constantes predefinidas

`EventDnsBase::OPTION_SEARCH`

  Solicita leer el dominio y buscar los campos desde el fichero `resolv.conf` y la opción `ndots`, y los utiliza para decidir qué dominio (si lo hay) debe ser utilizado para buscar los nombres de hosts que no están totalmente cualificados.

`EventDnsBase::OPTION_NAMESERVERS`

  Solicita conocer los nombres de los servidores desde el fichero `resolv.conf`.

`EventDnsBase::OPTION_MISC`

`EventDnsBase::OPTION_HOSTSFILE`

  Solicita leer una lista de hosts desde el fichero `/etc/hosts` como parte de la carga del fichero `resolv.conf`.

`EventDnsBase::OPTIONS_ALL`

  Solicita conocer todo el contenido del fichero `resolv.conf`.

`EventDnsBase::DISABLE_WHEN_INACTIVE`

  No impide que el bucle de eventos de libevent termine cuando no se tienen peticiones DNS activas.

`EventDnsBase::INITIALIZE_NAMESERVERS`

  Procesar el fichero `resolv.conf`.

`EventDnsBase::NAMESERVERS_NO_DEFAULT`

  No añadir un servidor de nombres por omisión si no hay servidores de nombres en el fichero `resolv.conf`.

## Tabla de contenidos

- EventDnsBase::addNameserverIp — Añade un servidor de nombres a la base DNS
- EventDnsBase::addSearch — Añade un dominio a la lista de dominios utilizados para la búsqueda
- EventDnsBase::clearSearch — Elimina todos los sufijos de búsqueda comunes
- EventDnsBase::__construct — Construye un objeto EventDnsBase
- EventDnsBase::countNameservers — Recupera el número de servidores de nombres configurados
- EventDnsBase::loadHosts — Carga un fichero hosts (en el mismo formato que /etc/hosts)
- EventDnsBase::parseResolvConf — Analiza el fichero resolv.conf
- EventDnsBase::setOption — Define el valor de una opción de configuración
- EventDnsBase::setSearchNdots — Define el parámetro 'ndots' para las búsquedas

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open