¿Cómo poder resolver múltiples dominios usando /etc/resolv.conf en Linux?

8

Estoy ejecutando Ubuntu 12.04 e intento hacer ping a los siguientes sistemas:

  • system0.oldcompany.com
  • system1.fing.oldcompany.com
  • system2.newcompany.com
  • system3.thing.newcompany.com

Mi resolv.conf

# internal dns servers
nameserver 1.1.1.151
nameserver 1.1.1.152
search oldcompany.com fing.oldcompany.com newcompany.com thing.newcompany.com
#domain thing.newcompany.com
domain oldcompany.com
#domain fing.oldcompany.com
#domain newcompany.com
#nameserver 8.8.8.8 #commented out due to other issues

Si dejo todas esas líneas sin comentar, no podré hacer ping a system0 o system1. ¿Cómo lo configuro para poder hacer ping a los 4 sistemas simplemente usando su nombre de dominio? En Windows, resuelve todos los sistemas.

ping system0
ping: unknown host system0
ping system1
ping: unknown host system1

He estado intentando leer la página de manual en resolv.conf pero todavía tengo problemas para solucionar este problema. Desafortunadamente, nadie en mi compañía usa Linux, así que estoy solo.

Editar: Búsqueda actualizada, por lo que solo es 1 línea y ahora puedo hacer ping al sistema0 pero aún no puedo hacer ping al sistema1. Sin embargo, puedo hacer ping a system1.fing porque está en el dominio de la antigua empresa.

SomeGuyOnAComputer
fuente

Respuestas:

5

Hay algunos problemas con su archivo:

  1. Solo debe haber una línea de búsqueda como search domain.com domain2.com domain3.comhasta 6 dominios.
  2. Solo debe haber una línea de dominio con exactamente 1 dominio especificado.

Después de corregirlos, vea si todavía tiene problemas y actualice su pregunta si es así.

Puede encontrar información sobre el formato requerido de este archivo en la página del manual .

webmarc
fuente
Hola webmarc, tengo todos mis dominios de búsqueda en una línea y solo especifiqué un dominio, pero aún tengo problemas con system1. No parece buscar el subdominio fing.oldcompany.com correctamente.
SomeGuyOnAComputer
5

Después de seguir a @webmarc y @ dan-hook, no funcionó hasta que eliminé la domainlínea que todavía no entiendo completamente.

Según esta respuesta , se domainconvierte en la primera searchcadena. Me resulta más fácil simplemente no usar la domaincadena.

Pasos:

  1. Todos los searchdominios se colocan en una sola línea.
  2. domain se eliminaron las líneas
  3. Los nuevos dominios de la empresa se colocaron antes que los nombres de las antiguas

This is my new /etc/resolv.conf and it works perfectly.

# internal dns servers
nameserver 1.1.1.151
nameserver 1.1.1.152
search newcompany.com thing.newcompany.com oldcompany.com fing.oldcompany.com

Also if your /etc/resolv.conf will be overwritten then modify /etc/network/interfaces

auto eth0
iface eth0 inet static
    address 10.59.2.50
    netmask 255.255.255.0
    gateway 10.59.2.1
    dns-nameservers 1.1.1.151 1.1.1.152
    dns-search newcompany.com thing.newcompany.com oldcompany.com fing.oldcompany.com

If the new company has a new dns server IP, make sure that IP also comes before the old company's so that the new dns servers get queried first.

SomeGuyOnAComputer
fuente
1

Put the search line after the nameserver lines.

Dan Hook
fuente
Hi. I tried your suggestion and updated the resolv.conf in my post. The issue still exists. I noticed that if I switch my domain from the oldcompany.com to newcompany.com, then I can ping system2 but then I cannot ping system0...
SomeGuyOnAComputer