Como configurar o IP estático no Ubuntu Server 12.04?

32
sudo apt-get update 
sudo apt-get upgrade
  1. ifconfig

  2. sudo nano /etc/network/interfaces

    auto eth0
    iface eth0 inet static
    address 192.168.1.150
    netmask 255.255.255.0
    network 192.168.2.0
    broadcast 192.168.1.255
    gateway 192.168.2.1
    safe
    
  3. sudo nano /etc/resolv.conf

    Do not edit this file by hand --your changes will be overwritten
    # I add this 
    nameserver 8.8.8.8
    nameserver 8.8.4.4
    
  4. sudo apt-get remove dhcp-client

  5. sudo /etc/init.d/networking restart

    *Running /etc/init.d/networking restart is deprecated because it may 
    not enable again some interfaces
    *Reconfiguring network interfaces...
    ssh stop/waiting
    ssh start/running,process 1438
    

Onde está o erro? Eu não sou preguiçoso. Eu pesquisei no Google por 3 dias, mas sem resultados. Eu tentei de tudo.

Após a reinicialização, o /etc/resolv.confarquivo está piscando no estado original.

bemonolit
fonte
Hummm, alguma idéia de por que você não faz tudo na pasta de configuração / etc / network / interfaces como aqui: draalin.com/setting-up-a-static-ip-address-in-ubuntu Ou faz mais sentido realmente dividir as coisas como você fez na pasta de configuração resolv.conf e interfaces?
Eu fiz isso, indo diretamente para a guia redes e editá-lo manualmente
Poorva

Respostas:

16

Isso tem duas perguntas independentes:

resolv.conf entradas sendo redefinidas após uma reinicialização

A maneira como o /etc/resolv.conftrabalho foi alterado no Ubuntu 12.04. Isso ocorre devido à implementação do foundations-p-dns-resolving descrito aqui https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolving para superar algumas limitações da estática resolv.conf.

Aqui você pode obter mais detalhes: http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

Você pode substituir o novo recurso removendo o link simbólico /etc/resolv.confe criar um arquivo chamado /etc/resolv.conflá. Mas antes de fazer isso, consulte o link que eu dei acima e veja por que é fortemente desencorajado.

Endereço IP versus conflito de rede e gateway (configurando um IP estático) Além disso, como pgschk apontou, seu endereço IP não corresponde às entradas de gateway e de rede. Mas isso não está causando o /etc/resolv.confretorno ao estado original, mas a razão que mencionei acima.

Jamess
fonte
perdoe-me erro ao escrever Eu tenho 2 servidores, detalhe o máximo possível removendo o link simbólico /etc/resolv.conf e crie um arquivo chamado /etc/resolv.conf lá. Eu nunca fiz isso before.PLEASE
bemonolit
Eu sugeriria que reveja se qualquer outro trabalho listado no link stgraber.org que não remova o link simbólico funciona primeiro para você. Porém, se você ainda deseja remover o link, pode usar comandos comuns como 'mv /etc/resolv.conf /etc/resolv.conf.ori' ou 'rm /etc/resolv.conf' e criar um novo / etc / resolv.conf usando seu editor de texto favorito (como vi ou nano).
Jamess
Eu espero que você destina /etc/resolv.conf, não /etc/resolv.config na pergunta acima
Jamess
Estou online, é apenas um bug. Obrigado e por remover o link> resolvconfig: Erro /etc/resolv.conf não é um link simbólico, não está fazendo nada.
Bem
6

O endereço do gateway está em uma sub-rede diferente do endereço IP local:

endereço 192.168. 1 .150 gateway 192.168. 2 .1

Além disso, o endereço de rede também foi especificado na sub-rede .2:

rede 192.168. 2 .0

Você usa a sub-rede 192.168.1 / 24 ou 192.168.2 / 24?

Editar: Sobre o seu resolv.conf: este arquivo é atualizado principalmente por pacotes diferentes (dependendo da sua configuração). Tente especificar os servidores de nomes no seu arquivo / etc / network / interfaces:

dns-nameservers 8.8.8.8 8.8.4.4

pgschk
fonte
sudo nano / etc / network / interfaces # O endereço eth0 automático da interface de rede principal 192.168.1.13 máscara de rede 255.255.255.255 gateway 192.168.1.1 rede 192.168.1.0 transmite 192.168.1.225 dns-nameservers 8.8.8.8 8.8.4.4 dns-search mydomaine google. com
bemonolit 27/08/2012
mesmo problema * Correndo resrtart /etc/init.d/networking está obsoleta porque não pode permitir novamente algumas interfaces * A reconfiguração interfaces de rede ...
bemonolit
* A execução de /etc/init.d/networking resrtart está obsoleta porque pode não ativar novamente algumas interfaces * Reconfigurando interfaces de rede ...
bemonolit
1

Você pode tentar esta opção:

  • Remova o /etc/resolv.confe, em seguida, crie um novo resolv.conf.

  • sudo nano /etc/resolv.conf depois adicione a bandeira:

  • sudo chattr +i /etc/resolv.conf- com esse +isinalizador, mesmo o root não pode tocar neste arquivo. Mas se você deseja alterar o servidor de nomes, altere o sinalizador para:

  • sudo chattr -i /etc/resolv.confdepois adicione seu novo nameserver.

Em seguida, tente reiniciar e veja o que acontece :).

Espero que isso resolva o seu problema.

Hary Gembul
fonte