Entendendo endereços IP em máquinas Linux


0

Quando eu li /etc/hosts Na minha máquina Ubuntu, as duas primeiras linhas são as seguintes:

ipAddr1 localhost
ipAddr2 nameOfMachine

Esses endereços IP são característicos da minha máquina ou estão relacionados à rede à qual estou conectado? Além disso, é possível editá-los, mas o hardware do endereço IP não está escrito?

Respostas:


2

O endereço IP em sua máquina não está conectado ao hardware e as duas primeiras linhas que você está mostrando estão relacionadas à maneira como sua máquina está conectada à sua rede. O único item relacionado à rede que está no hardware é o endereço MAC e isso é 100% diferente.

Em geral, um endereço IP é atribuído quando você conecta a interface de rede a uma rede com base nas configurações do seu sistema. Então quando você diz isso:

ipAddr1 localhost
ipAddr2 nameOfMachine

Mas os endereços seriam algo assim; usando 123.456.789.1 como um exemplo:

127.0.0.1   localhost
123.456.789.1 nameOfMachine

O endereço 127.0.0.1 é um padrão universalmente aceito para o localhost endereço de loopback. o 123.456.789.1 é o endereço de rede que foi atribuído à sua máquina quando recebeu uma conexão de rede. E em uma máquina Linux, o caminho que é configurado é via /etc/network/interfaces que você pode ver da seguinte forma:

cat /etc/network/interfaces

Uma configuração bastante padrão e básica para o interfaces arquivo é algo assim:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 123.456.789.1
netmask 255.255.255.0

Isso se correlaciona diretamente com o que você vê no /etc/hosts. o face lo inet loopback se conecta ao que você vê na linha 127.0.0.1 localhost e a face eth0 inet static conecta-se ao 123.456.789.1 nameOfMachine linha.

Em geral, você não brinca com o /etc/hosts Arquivo. E você definitivamente não muda 127.0.0.1 localhost. o 123.456.789.1 nameOfMachine é algo que pode ser auto-atribuído quando um Linux é instalado pela primeira vez em uma máquina e deve ficar lá. Isso permite que você esteja no host nameOfMachine e ser capaz de fazer algo parecido ping nameOfMachine sem falhas.


2

Eles são colocados lá pelo instalador do Ubuntu em resposta ao que você digita para o nome do host do sistema.

o /etc/hosts arquivo é possivelmente (e por padrão) usado pelo sistema Resolvedor de DNS sempre que um aplicativo quiser fazer uma pesquisa de DNS.

Antes da existência do DNS, cada máquina tinha um arquivo de hosts locais e o consultava para converter nomes de domínio em endereços IP.

Agora, normalmente, uma solicitação para um servidor DNS é executada, mas o arquivo hosts ainda existe e, se o sistema estiver configurado para usá-lo, ele procurará nomes nesse arquivo antes de fazer uma consulta DNS externa.

O nome do host da sua máquina aparece para 127.0.0.1 neste arquivo porque um servidor DNS externo não saberá seu nome de host local, a menos que ele coopere com o DHCP de alguma forma (os servidores Microsoft AD / DHCP / DNS fazem isso). Portanto, isso é feito para que uma pesquisa de DNS para "localhost", ou o nome do host do computador, retorne um resultado correto.

A resposta de @JakeGould me inspirou a adicionar isto: não remova ou mude as entradas de localhost - A MENOS que você mude seu hostname! Existem alguns programas por aí que exigem que seu nome de host local seja resolvido corretamente ( exim4 sendo um deles).

E @Hennes está certo, o endereço IP não existe no hardware, apenas o MAC faz.


1

Primeiro de tudo, não o endereço IP não está escrito em hardware. O endereço MAC é.

E sim, você pode editá-los. Você censurou os IPs reais, mas eu suspeito que pelo menos um deles é 127.0.0.1, que você não deve mudar. Muitas coisas dependem de poder alcançar o próprio computador "via rede".

Essas chamadas para um computador podem ser para outros computadores reais ou podem voltar ao computador em si. Por uma questão de eficiência, é muito bom se você não precisa realmente enviá-los através da rede quando eles são destinados a você, então usamos uma interface de loopback. Para essa interface de loopback, atribuímos o intervalo 127.0.0.0/8, geralmente implementado como 127.0.0.1.

Para recapitular:

  • Sim, você pode editá-los.
  • Não, você não deve editar alguns deles.
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.