Como uso o PuTTY para conectar-me a um servidor local em uma rede DHCP sem especificar o IP?

2

Eu não quero especificar um endereço IP, pois ele pode mudar em uma LAN DHCP. Tentei me conectar ao nome do servidor linux, mas nem o Putty nem o ping.exe do Windows puderam resolvê-lo.

    
por Jader Dias 30.05.2009 / 21:44

7 respostas

3

Eu posso ver as soluções em algumas categorias:

  1. IP estático:
    1. Corrija o IP na máquina Linux e exclua esse IP do servidor DHCP.
    2. Obtenha o servidor DHCP (seu roteador?) para fornecer ao endereço MAC do servidor Linux um endereço fixo.
    3. Para qualquer um desses, coloque o endereço IP estático no arquivo de hosts do seu cliente.
  2. IP dinâmico com DNS.
    1. Encontre uma maneira de fazer com que a máquina Linux envie um nome de host com sua solicitação DHCP e que o servidor DHCP / servidor DNS exponha esse nome para que a resolução de DNS funcione. Depende dos servidores DHCP e DNS.
    2. Coloque o IP atual do servidor Linux em algum recurso compartilhado fixo (por exemplo, página da web externa). E escreva algo hacky no cliente para obter isso e usá-lo como o endereço IP do servidor.
por 31.05.2009 / 10:05
4

Você pode configurar o dhcp para enviar um nome de host com a solicitação dhcp. Obviamente, você precisaria do seu dhcpd e nameserver para suportar isso, mas muitos roteadores suportam esse recurso, então vale a pena verificar se o seu faz.

    
por 30.05.2009 / 21:50
2

Infelizmente, você está sem sorte. Para fazer isso, você precisa usar algo como mDNS. Ele é implementado fora da caixa no OSX, chamado Bonjour, mas ainda não atingiu a massa crítica fora da Apple. Se você controlar o servidor DHCP, poderá configurar as Reservas DHCP para sistemas específicos. Nesse cenário, um nic com um endereço MAC específico sempre obterá o mesmo endereço estaticamente definido do servidor DHCP.

    
por 30.05.2009 / 21:51
1

Você não será albo para resolver o endereço, a menos que esteja em algum servidor DNS. Você precisa saber o endereço IP ou usar alguns serviços como Não-IP para atualizar um FQDN para o endereço IP atual dos servidores. Claro que isso só funcionará para um servidor que tenha um endereço IP público.

Para endereços internos, talvez você queira escrever um script no servidor que enviará o IP em algum momento.

    
por 30.05.2009 / 21:53
1

Algumas coisas na sua pergunta ainda não estão claras, mas tentarei dar uma resposta ampla.

Para se conectar à máquina através do seu nome de host, você precisa de um serviço de resolução de nomes ativo na rede - ou seja, um servidor DNS ou WINS. Vendo que você diz que suas máquinas não podem pingar umas às outras pelo nome, parece que você não tem nenhum servidor DNS na rede (ou que nenhuma das máquinas está configurada com um servidor DNS primário). Qual implora a pergunta - que ambiente de rede teria o DHCP mas nenhum DNS?

Se houver um servidor DNS na rede, você terá que configurar ambas as máquinas para contatá-lo (propriedades de conexão de rede no windows, god-knows-where.conf no linux) e pronto. / p>

Vamos supor que não há servidor DNS.

Supondo que você tenha controle sobre o servidor DHCP em sua rede, a solução mais fácil seria configurar um mapeamento de IP estático no servidor DHCP. Faça com que o servidor linux receba o mesmo ip a cada vez (ligue um ip específico ao endereço MAC do servidor). Então você pode editar o arquivo hosts na estação de trabalho do Windows (encontrado em% systemroot% \ system32 \ drivers \ etc) e mapear um nome específico para o endereço, e divirta-se.

Se você não tem controle sobre o DHCP ... Bem, pessoalmente, eu apenas iria bugar as pessoas que fazem (e dizer-lhes para obter um servidor DNS lá por deus!)

Eu posso pensar em outras coisas selvagens que poderiam contornar todo esse problema (escrever um script que pinga toda a sub-rede, executa arp -a em um arquivo e, em seguida, analisa-o para encontrar o endereço MAC do servidor, resolvendo assim é IP .. sheesh, isso é doente). Sério, eu tentaria obter um serviço de resolução de nomes decente em funcionamento.

    
por 30.05.2009 / 22:24
1

Eu também tenho servidor Linux em uma rede DHCP. A maneira mais fácil que eu encontrei para usar o DHCP e ainda ser capaz de se conectar facilmente ao servidor é dar a ele um ip estático. Você ainda pode usar o DHCP para outros clientes, mas tem um ip estático para o seu servidor.

Você não diz qual distro Linux você usa, mas aqui está a parte relevante do meu rc.conf do Arch Linux.

lo="lo 127.0.0.1"
eth0="eth0 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.0.255"
INTERFACES=(lo eth0)

gateway="default gw 192.168.1.1"
ROUTES=(gateway)
    
por 31.05.2009 / 07:38
1

Como outros apontaram, o problema está na resolução de nomes, não no SSH.

Mas a melhor solução é configurar o DNS, o Servidor DHCP e o Cliente DHCP para que uma entrada DNS seja criada automaticamente para todos os clientes DHCP. Isso é feito facilmente com o servidor DHCP da Microsoft (eu deveria ser capaz de fornecer instruções se isso for útil), mas também deve ser possível com outros servidores.

Basicamente você precisa:

  1. Um servidor DNS que aceita dinamicamente atualizações (você pode querer proteger isto).
  2. Um servidor DHCP que envia um atualização dinâmica para todos os clientes (MS Servidor DHCP fará isso, mas não por padrão).
  3. Um cliente DHCP que informa ao servidor DHCP seu nome (a maioria faz isso automaticamente, mas pode ser uma opção que precisa ser ativada).
por 31.05.2009 / 09:55