Não é possível definir o nome do host para uso dentro da rede

4

Estou tendo muitos problemas para configurar um nome de host para meu servidor doméstico para uso em minha rede doméstica. Meu servidor doméstico está executando o Ubuntu 12.04 LTS e todos os pacotes estão atualizados. O gerenciamento deste servidor é feito usando apenas o SSH, sem a presença da GUI. Eu quero usar o nome do host dos servidores principalmente para acessar páginas da Web e compartilhamentos de samba de vários computadores Windows e dispositivos Android.

Meu homeserver adquire seu endereço IP (estático) de um Linksys WRT54GC usando DHCP. Ambos /etc/hosts e /etc/hostname adicionaram "homeserver" como um nome de host. Eu não mexi em /etc/dhcp/dhclient.conf , porque as configurações padrão devem funcionar de acordo com fontes do Ubuntu.

O roteador só consegue resolver nomes de host para clientes DHCP. Não me permite editar os nomes dos clientes como alguns produtos mais novos podem. Todos os nomes de host do meu PC Windows são reconhecidos pelo roteador. Eu também sou capaz de pingar essas máquinas usando seus nomes de host. Então, tudo parece estar bem no meu roteador.

O Linksys WRT54GC está em cascata para um modem / roteador DSL configurado para ISP. Todo o tráfego da Internet é roteado para o Linksys, já que é colocado na DMZ do modem / roteador DSL. O endereço IP do modem / roteador DSL é 192.168.1.1 e o Linksys é 192.168.2.1. O Linksys é configurado usando um endereço IP estático. O servidor DNS do Linksys está configurado para 192.168.1.1. Todos os clientes vinculados ao relatório da Linksys têm 192.168. 1 .1 como o servidor DNS.

Esse problema pode ter algo a ver com este bug .
Eu instalei o pacote isc-dhcp-client de 13.04, mas isso não funcionou. Se esse bug ainda existir no Ubuntu 12.04 LTS (e no 13.04), eu gostaria de saber uma solução.

Editar # 1

O OP postou o conteúdo do arquivo: /etc/dhcp/dhclient.conf :

# Configuration file for /sbin/dhclient, which is included in Debian's
#   dhcp3-client package.
#
# This is a sample configuration file for dhclient. See dhclient.conf's
#   man page for more information about the syntax of this file
#   and a more comprehensive list of the parameters understood by
#   dhclient.
#
# Normally, if the DHCP server provides reasonable information and does
#   not leave anything out (like the domain name, for example), then
#   few changes must be made to this file, if any.
#

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

send host-name "<hostname>";
#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
#send dhcp-lease-time 3600;
#supersede domain-name "fugue.com home.vix.com";
#prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers,
    dhcp6.domain-search, dhcp6.fqdn,
    dhcp6.name-servers, dhcp6.sntp-servers;
#require subnet-mask, domain-name-servers;
#timeout 60;
#retry 60;
#reboot 10;
#select-timeout 5;
#initial-interval 2;
#script "/etc/dhcp3/dhclient-script";
#media "-link0 -link1 -link2", "link0 link1";
#reject 192.33.137.209;

#alias {
#  interface "eth0";
#  fixed-address 192.5.5.213;
#  option subnet-mask 255.255.255.255;
#}

#lease {
#  interface "eth0";
#  fixed-address 192.33.137.200;
#  medium "link0 link1";
#  option host-name "andare.swiftmedia.com";
#  option subnet-mask 255.255.255.0;
#  option broadcast-address 192.33.137.255;
#  option routers 192.33.137.250;
#  option domain-name-servers 127.0.0.1;
#  renew 2 2000/1/12 00:00:01;
#  rebind 2 2000/1/12 00:00:01;
#  expire 2 2000/1/12 00:00:01;
#}
    
por Alain 21.05.2013 / 11:57

3 respostas

2

Se o seu servidor DHCP suportá-lo, você pode querer que seu cliente envie o nome de host desejado. Adicione o seguinte ao arquivo /etc/dhcp/dhclient.conf :

send host-name 'your-hostname-here';

Se você quiser enviar um nome de domínio totalmente qualificado (fqdn) - myhost.mydomain.com em vez de apenas myhost, será necessário adicionar essas linhas também:

send fqdn.fqdn "myhost.mydomain.com.";
send fqdn.encoded on;
send fqdn.server-update off;
also request fqdn, dhcp6.fqdn;

Editar # 1

O OP foi solicitado a testar os seguintes comandos e reportar:

dig <hostname> @<router ip>

O OP informou que isso funcionou, então foi determinado que tentasse adicionar o IP do roteador explicitamente ao seu arquivo dhclient.conf .

Editar # 2

Foi sugerido tentar adicionar o seguinte ao arquivo /etc/dhcp/dhclient.conf :

prepend domain-name-servers 192.168.2.1;

Editar # 3

Dado que você pode agora fazer ping de servidores usando o servidor DNS do seu roteador quando adicionou 192.168.2.1, mas não a internet, eu sugiro que você adicione alguns servidores DNS externos também usando a opção de pré-formatação acima assim:

prepend domain-name-servers 192.168.2.1, 8.8.8.8, 8.8.4.4;

Isso adicionará seu roteador como um resolvedor de DNS junto com os servidores DNS do Google.

    
por 21.05.2013 / 14:47
2

Além das recomendações úteis nas outras respostas, a suíte avahi (também conhecida como Zeroconf aka Apple Bonjour) é útil para passar adiante e resolver informações mDNS locais.

Ter o avahi-daemon em execução nos hosts da rede doméstica me permite

ping tallguy.local

que exigiu configuração zero além de estabelecer um nome de host tallguy .

    
por 24.09.2013 / 08:42
1

Alguns roteadores usam apenas o nome do host netbios .

No Debian você pode

sudo apt-get install samba

e se o seu /etc/hostname estiver definido corretamente, isso será exibido na rede sem reiniciar.

Isto funciona para o RaspberryPi, o BeagleboneBlack e, tanto quanto me lembro, também com o Ubuntu.

    
por 19.12.2015 / 15:42