DNS en su red virtual en la nube

El sistema de nombres de dominio (DNS) permite a los equipos utilizar nombres de host en lugar de direcciones IP para comunicarse entre sí. Esta función está limitada al tráfico dentro de una red virtual en la nube (VCN), para el uso de DNS con tráfico de Internet, consulte DNS y Gestión de tráfico

Opciones de DNS en la VCN

A continuación se muestran las opciones para la resolución de nombres de DNS para las instancias en la VCN. La elección del nivel se realiza para cada subred de la VCN mediante el conjunto de opciones DHCP de la subred. Esto es similar a la forma en que se configuran cuáles son las tablas de rutas y listas de seguridad que están asociadas a cada subred. Para obtener más información, consulte Opciones de DHCP.

Nota

Utilice la opción DHCP de servidor de nombres de dominio para especificar el tipo DNS para la subred asociada. Si cambia el valor de la opción, reinicie la instancia o reinicie el DHCP del cliente en esta. De lo contrario, el cambio no se selecciona hasta que el cliente DHCP refresque la cesión (dentro de 24 horas).

OPCIÓN POR DEFECTO: RESOLUCIÓN DE INTERNET Y VCN
Se trata de una opción proporcionada por Oracle que incluye dos partes:
  • Solucionador de internet: permite a las instancias resolver los nombres de host que se publican públicamente en internet. Las instancias no necesitan tener acceso a internet mediante un gateway de internet o una conexión a la red local (como una conexión IPSec de VPN de sitio a sitio mediante un DRG).
  • Resolución de la VCN: permite a las instancias resolver nombres de host (que puede asignar) de otras instancias en el mismo VCN. Para obtener más información, consulte Acerca de los dominios y nombres de host de DNS.
Por defecto, las nuevas VCN que crea utilizarán la resolución de internet y VCN. Si utiliza la API de Networking, esta opción hace referencia a la enumeración VcnLocalPlusInternet en el objeto DhcpDnsOption.
Nota

Por defecto, el solucionador de internet y VCN no permite que las instancias solucionen los nombres de host en la red local conectada a la VCN mediante la VPN de sitio a sitio o FastConnect. Esa funcionalidad se puede lograr utilizando un solucionador personalizado o mediante la configuración del solucionador de DNS privado de la VCN.

SOLUCIONADOR PERSONALIZADO
Use los servidores DNS de su elección para la resolución (tres como máximo). Pueden tratarse de servidores DNS que:
  • Estén disponibles por internet. Por ejemplo, 216.146.35.35 para la guía de internet de Dyn.
  • En la VCN.
  • En la red local, que está conectada a su VCN mediante una VPN de sitio a sitio o FastConnect (a través de un DRG).

Acerca de los dominios y nombres de host de DNS

Al crear inicialmente una VCN y subredes, puede especificar etiquetas de DNS para cada una. Solo se pueden definir etiquetas DNS de subred si la propia VCN se ha creado con una etiqueta DNS. Las etiquetas, junto con el dominio principal de oraclevcn.com, formarán el nombre de dominio de la VCN y el nombre de dominio de la subred:

  • Nombre de dominio de la VCN: <VCN-DNS-label>.oraclevcn.com
  • Nombre de dominio de subred: <subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com

Al iniciar una instancia, puede asignar un nombre de host. Se asignará a la VNIC creada automáticamente durante el inicio de la instancia (es decir, la VNIC principal). Junto con el nombre de dominio de la subred, el nombre de host forma el nombre de dominio completo (FQDN) de la instancia:

  • FQDN de la instancia: <hostname>.<subnet-DNS-label>.<VCN-DNS-label>.oraclevcn.com

Por ejemplo: database1.privatesubnet1.abccorpvcn1.oraclevcn.com.

El FQDN se resuelve en la dirección IP privada de la instancia. Las resoluciones de internet y VCN también permiten la consulta DNS inversa, que le posibilita determinar el nombre de host correspondiente a la dirección IP privada.

Si agrega una VNIC secundaria a una instancia, puede especificar un nombre de host. El FQDN resultante se resuelve en la dirección IP privada de la VNIC (es decir, la IP privada principal).

Si agrega una IP privada secundaria a una VNIC, puede especificar un nombre de host. El FQDN resultante se resuelve en esa dirección IP privada.

Importante

Oracle recomienda que utilice siempre el FQDN de instancia al enviar mensajes a un host o que especifique solo el nombre de host para los mensajes enviados dentro de la VCN.

Requisitos para Etiquetas y Nombres de Host de DNS

  • VCN y etiquetas de subred: máximo 15 caracteres alfanuméricos y con una letra al inicio. Tenga en cuenta que NO se permiten guiones y guiones bajos. El valor no se puede cambiar más adelante.
  • Nombres de host: se permite un máximo de 63 caracteres, letras y números. Los guiones están permitidos. Tenga en cuenta que NO están permitidos los puntos, que no están permitidos los guiones al principio o al final del nombre de host y que el nombre de host no puede constar solo de números. Los nombres de host deben cumplir con los RFC 952 y 1123. El valor puede cambiarse posteriormente.
Importante

El servicio de Networking permite el uso de nombres de host de hasta 63 caracteres. Sin embargo, algunos sistemas operativos antiguos aplican nombres de host más cortos. En Linux se muestra cómo determinar la longitud máxima de nombre de host permitido:

getconf HOST_NAME_MAX

Si una instancia tiene un nombre de host superior al máximo específico del sistema operativo, el FQDN de la instancia no se puede resolver en la VCN. Puede usar el servicio Networking para actualizar la VNIC y cambiar el nombre de host por un valor más corto.

Unicidad:

  • La etiqueta de VCN de DNS debe ser única en las VCN (no es necesario, pero brinda un mejor funcionamiento).
  • Las etiquetas de subred DNS deben ser únicas dentro de la VCN
  • Los nombres de host deben ser únicos en la subred
Consejo

No confunda la etiqueta o el nombre de host del DNS con el nombre fácil de recordar que ha asignado al objeto (es decir, el nombre mostrado), que no necesita ser único.

Validación y generación del nombre de host

Si ha definido etiquetas del DNS para la VCN y subredes, Oracle valida el nombre de host para la conformidad y la unicidad del DNS durante el inicio de la instancia. Si alguno de estos requisitos no se cumple, la solicitud de inicio fallará.

Si no especifica un nombre de host durante el inicio de la instancia, Oracle intentará utilizar el nombre mostrado de la instancia como nombre de host. Si el nombre mostrado no supera la validación, Oracle genera automáticamente un nombre de host compatible con el DNS que sea único en la subred. Puede ver el nombre de host generado en la página de la instancia en la consola. En la API, el nombre de host es parte del objeto VNIC.

Si no proporciona un nombre de host o un nombre mostrado durante el inicio de la instancia mediante el SDK o la CLI, Oracle no generará un nombre mostrado o un nombre de host. Esto significa que la instancia no se podrá resolver mediante el solucionador de internet y VCN.

Si no proporciona un nombre de host o un nombre mostrado durante el inicio de la instancia mediante la consola, Oracle generará automáticamente un nombre mostrado y el registro de DNS correspondiente, siempre que la subred tenga una etiqueta DNS válida asociada.

Nota

El nombre de host del sistema operativo Linux de la instancia se define automáticamente en el nombre de host definido durante el inicio de la instancia (o el generado por Oracle). Si cambia el nombre de host directamente en la instancia, el FQDN de la instancia no se actualizará.

Si agrega una VNIC secundaria a una instancia o agrega una IP privada secundaria a una VNIC, Oracle nunca intentará generar un nombre de host. Proporcione un nombre de host válido si desea que la dirección IP privada se pueda resolver mediante el solucionador de internet y VCN.

Opciones de DHCP para DNS

Hay dos opciones de DHCP relacionadas con el DNS en la VCN:

  • Servidor de nombres de dominio: para especificar la selección del tipo de DNS (resolución de internet y VCN o resolución personalizado).

    • Valor por defecto en el conjunto de opciones de DHCP por defecto: solucionador de internet y VCN
  • Dominio de búsqueda: para especificar un solo dominio de búsqueda. Al resolver una consulta de DNS, el sistema operativo agrega este dominio de búsqueda al valor que se consulta. Solo se puede especificar un dominio de búsqueda para el conjunto de opciones DHCP.

    • Valor por defecto en el juego de opciones de DHCP por defecto: el nombre de dominio de la VCN (<VCN-DNS-label>.oraclevcn.com), si ha especificado una etiqueta DNS para la VCN durante la creación pero no ha especificado un valor de dominio de búsqueda. Si ha especificado un valor de dominio de búsqueda, dicho valor se utilizará para la opción Buscar dominio. Si NO ha especificado una etiqueta DNS, el conjunto por defecto de opciones DHCP no incluirá la opción Buscar dominio.
Atención

Oracle recomienda que utilice siempre el FQDN de la instancia al enviar mensajes a un host en otra subred/VCN y que no confíe en el dominio de búsqueda DNS.

Importante

En general, cuando se crea inicialmente cualquier juego de opciones DHCP (el juego por defecto o un juego personalizado que haya creado), el servicio de Networking agrega de forma automática la opción Dominio de búsqueda y la define en el nombre de dominio de VCN ( <VCN-DNS-label>.oraclevcn.com), si se cumplen todas estas condiciones:

  • La VCN tiene una etiqueta DNS
  • Tipo de DNS = Solucionador de internet y VCN
  • NO ha especificado un dominio de búsqueda que su elección durante la creación del conjunto de opciones de DHCP

Una vez creado el conjunto de opciones de DHCP, siempre puede eliminar la opción Buscar dominio o definirla en un valor diferente.

Activación de los nombres de host de DNS en su VCN

Solo las VCN nuevas creadas después de la publicación de la función de solucionador de internet y VCN tienen acceso automático a ella. La manera de activar los nombres de host de DNS para una nueva VCN depende de la interfaz que esté utilizando.

Si crea una VCN y subredes con la consola
  1. Al crear la VCN:
    • Seleccione Usar nombres de host de DNS en esta VCN
    • Especifique la etiqueta DNS que desee para la VCN. Si selecciona esta opción, pero no especifica una etiqueta DNS, la Consola asume que desea utilizar el solucionador de Internet y VCN en la VCN y genera automáticamente una etiqueta DNS para la VCN. La consola toma el nombre de la VCN proporcionada, elimina los caracteres no alfanuméricos, se asegura que el primer carácter sea una letra y trunca la etiqueta a 15 caracteres. La consola muestra el resultado y, si no desea que se muestre, puede introducir su propio valor en el campo Etiqueta DNS. Consulte Acerca de los dominios y los nombres de host de DNS.
  2. Al crear las subredes:
    • Seleccione de nuevo Usar los nombres de host de DNS en esta subred
    • Especifique una etiqueta DNS de su elección para cada subred. Si activa la casilla de control, pero no especifica la etiqueta DNS para una subred determinada, la consola asume que desea utilizar el solucionador de Internet y VCN para la subred y genera automáticamente una etiqueta DNS para la subred. La consola toma el nombre de la subred proporcionada, elimina los caracteres no alfanuméricos, se asegura que el primer carácter sea una letra y trunca la etiqueta a 15 caracteres. La consola muestra el resultado y, si no desea que se muestre, puede introducir su propio valor en el campo Etiqueta DNS. Consulte Acerca de los dominios y los nombres de host de DNS.
      Nota

      Solo se pueden definir etiquetas DNS de subred si la propia VCN se ha creado con una etiqueta DNS.
    • Asocie cualquier conjunto de opciones de DHCP que tenga Tipo de DNS = Solucionador de internet y VCN. El conjunto de opciones de DHCP por defecto en la VCN utiliza el solucionador de internet y VCN por defecto.
  3. Al iniciar instancias:
    • Seleccione la opción para asignar un registro de DNS privado.
    • Especifique un nombre de host (o al menos un nombre mostrado) para cada instancia. Para obtener más información, consulte Acerca de los dominios y nombres de host de DNS.

Si no selecciona Usar los nombres de host de DNS en esta VCN al crear la VCN, no puede definir la etiqueta DNS para la VCN o subredes y no puede especificar un nombre de host durante el inicio de la instancia.

Nota

El procedimiento anterior supone que ha creado la VCN y las subredes una a una en la consola. La consola tiene una función que crea automáticamente una VCN con subredes y, al mismo tiempo, un gateway de internet. Si utiliza esta función para crear la VCN y las subredes, la consola generará automáticamente etiquetas DNS para ellas.

Si crea una VCN y subredes con la API
  1. Al crear la VCN:

  2. Al crear las subredes:

    • Especifique una etiqueta DNS para cada subred. Consulte Acerca de los dominios y los nombres de host de DNS. Si ha especificado una etiqueta DNS para VCN, pero no especifica una etiqueta DNS para la subred, Oracle asume que no desea que las instancias de la subred utilicen el solucionador de Internet y VCN y que la capacidad de utilizar nombres de host para comunicarse con instancias de VCN ya no está disponible.
      Nota

      Las etiquetas DNS de subred solo se pueden definir si la propia VCN se ha creado con una etiqueta DNS.
    • Asocie cualquier juego de opciones de DHCP que tenga DhcpDnsOptionserverType = VcnLocalPlusInternet, que es la opción de DHCP por defecto en VCN.
  3. Al iniciar instancias:

    • Seleccione la opción para asignar un registro de DNS privado.
    • Especifique un nombre de host (o al menos un nombre mostrado) para cada instancia. Para obtener más información, consulte Acerca de los dominios y nombres de host de DNS.

Si no especifica una etiqueta DNS al crear la VCN, no podrá realizar lo siguiente:

  • Definir la etiqueta DNS para las subredes (lo que provoca que falle la llamada CreateSubnet)
  • Especificar un nombre de host durante el inicio de la instancia (lo que provoca que falle la llamada LaunchInstance)
  • Asignar un nombre de host a una VNIC secundaria o a un IP privado secundario.

Caso 1: utilice el solucionador de internet y VCN con nombres de host de DNS en la VCN

El escenario típico es activar el solucionador de Internet y VCN en toda la VCN, lo que permite que todas las instancias de VCN se comuniquen entre sí sin conocer sus direcciones IP. Para ello, siga las instrucciones de Acerca de los dominios y los nombres de host de DNS y asigne una etiqueta DNS a VCN y a cada subred. A continuación, asigne a cada instancia un nombre de host (o al menos un nombre mostrado) en el inicio. Si agrega una VNIC secundaria o un IP privado secundario, también asígnele un nombre de host. Las instancias pueden comunicarse entre sí mediante el FQDN en lugar de direcciones IP.

Caso 2: uso de un solucionador de DNS privado para resolver nombres de host de DNS

Puede utilizar un solucionador de DNS privado para responder consultas de DNS para una VCN mediante una configuración que cree. El solucionador recibe por defecto 169.254.169.254, pero también le permite definir puntos finales para recibir consultas y enviarlas a otros solucionadores en otras VCN, una red local del cliente u otra red privada. Para obtener más información, consulte Solucionadores de DNS privados.

Caso 3: uso de diferentes opciones de DHCP por subred

El caso 1 supone que desea utilizar el solucionador de internet y VCN de la misma forma en todas las subredes y, por lo tanto, en todas las instancias de la VCN. Sin embargo, puede configurar diferentes valores de DNS para cada subred, ya que las opciones de DHCP se configuran en el nivel de subred. Lo importante es que entienda lo siguiente: es en la subred en la que desea generar la consulta de DNS donde debe configurar los valores correspondientes del solucionador de Internet y VCN.

Por ejemplo, si desea que la instancia A de la subred A resuelva el nombre de host de la instancia B en la subred B, debe configurar la subred A para utilizar el solucionador de internet y VCN. Por el contrario, si desea que la instancia B resuelva el nombre de host de la instancia A, debe configurar la subred B para utilizar el solucionador de internet y VCN.

Puede configurar un conjunto distinto de opciones DHCP para cada subred. Por ejemplo, puede definir Buscar dominio en la subred A en subneta.vcn1.oraclevcn.com, lo que significa que todas las instancias de la subred A pueden utilizar solo nombres de host para comunicarse entre sí. Podría establecer de forma similar Buscar dominio de la subred B en subnetb.vcn1.oraclevcn.com para permitir que las instancias de la subred B se comuniquen entre sí solo con los nombres de host.