Vraag Waarom verschijnt mijn hostnaam met het adres 127.0.1.1 in plaats van 127.0.0.1 in / etc / hosts?


Dit is misschien een beetje een nare vraag, maar ik keek naar / etc / hosts op mijn nieuwe Xubuntu-installatie en zag dit:

127.0.0.1 localhost
127.0.1.1 myhostname

Op de meeste 'nixes' die ik heb gebruikt, is de tweede regel weggelaten en als ik mijn hostnaam wil toevoegen aan het hosts-bestand, zou ik dit gewoon doen:

127.0.0.1 localhost myhostname

Is er een verschil tussen deze twee bestanden in praktische zin?


189
2018-02-23 17:44


oorsprong


Ik vraag me af of ik gewoon de tweede regel kan verwijderen of zal een proces in debian / ubuntu de regel regenereren en weer toevoegen? - simgineer


antwoorden:


Er is niet veel verschil tussen de twee; 127/8 (Bijvoorbeeld: 127.0.0.0 => 127.255.255.255) zijn allemaal gebonden aan de loopback-interface.

De reden waarom wordt beschreven in het Debian-handboek in Ch. 5 Netwerkinstellingen - 5.1.1. De hostnaamresolutie.

Uiteindelijk is het een bug-omloop; het originele rapport is 316099.


148
2018-02-23 17:47



Precies wat ik zocht, bedankt! - Tom
De eigenlijke reden: "Het associëren van de systeemhostnaam met de laatste had het ongewenste effect van het maken van 'localhost.localdomain' de canonieke hostnaam die is gekoppeld aan de systeemhostnaam. Dat wil zeggen: 'hostnaam - fqdn' retourneerde 'localhost.localdomain'." - cmroanirgo
Ik heb het eigenlijk teruggeleid naar deze doc lists.debian.org/debian-boot/2005/06/msg00938.html en het lijkt erop dat het komt omdat Thomas de behoefte voelde om 1.1 te gebruiken in plaats van 0.1, wat gelijk is, corrigeer me als ik het fout heb, maar dat betekent dat dit antwoord eigenlijk maar een broodkruimel is? - Brian Thomas
@BrianThomas dat bericht suggereert waarom ze niet hetzelfde zijn. Zij wilden localhost en myhostname onderscheiden zijn - anders zou iemand een alias van de ander zijn. Merk op dat dit niet werkt in IPv6 waar er maar één loopback-adres is. Dit kan worden voorkomen door een NSS-module te gebruiken zoals vermeld in de thread, omdat deze flexibeler kan zijn dan / etc / hosts en verschillende canonieke namen kan retourneren, ondanks dat ze hetzelfde IP-adres hebben. Ik weet dit omdat mijn systeem is geconfigureerd met behulp van een dergelijke NSS-module. - sourcejedi


Om de gekoppelde informatie samen te vatten:

  • Het is (betwistbaar) nuttig om een ​​vermelding in je te hebben /etc/hosts vertalen van de volledig gekwalificeerde domeinnaam van de machine in zijn permanente IP-adres.
  • debian-installer, en meer specifiek, zijn netcfg component, momenteel (tot ten minste maart 2013) deze vermelding maakt.
  • Als het niet bekend is dat het apparaat een permanent IP-adres heeft, wil het debian-installer nog steeds dat type invoer hebben.
  • Het adres 127.0.1.1 gebruikt de loopback-interface, beantwoord door je eigen machine, net zoals 127.0.0.1 maar is een apart item in /etc/hosts wat los van kan worden beschouwd 127.0.0.1 indien / wanneer nodig.

Thomas Hood verklaart het toevoegen van dit bericht als volgt:

[Dit] zorgt ervoor dat als de UNIX-hostnaam is opgelost dan zal het   altijd zijn eigen canonieke hostnaam zijn

maar:

Op de lange termijn moet de UNIX-hostnaam helemaal niet in / etc / hosts worden geplaatst.


44
2018-03-22 16:53



.. en dus... ? moet ik gebruiker 127.0.0.1 gebruiken voor mijn fdqn? of 127.0.1.1? of de statische LAN IP? - realtebo
@realtebo: 1. Het is handig, en dus is het toegevoegd door het installatieprogramma. 2. Er is hier geen "must"; en het is alleen relevant als uw FQDN geen vast adres heeft. - einpoklum


Ik was zelf ook nieuwsgierig, en ik hield niet van een van de andere antwoorden omdat ze niet leken te beantwoorden waar ik naar zocht.

Het antwoord: Hiernaar terugkijken dokter het lijkt bijna alsof Thomas beweert dat het een ander specifiek IP-adres aan de loopback geeft, zodat het canoniek is.

Beide wijzen naar je loopback. Gebruik het volgende    127.0.1.1 is een werkelijke IP, tijdens de loopback, terwijl     127.0.0.1 is het apparaat zelf of een ander ip op de loopback. Beide eindigen op hetzelfde subnet, wat de loopback weergeeft, maar worden gescheiden door ip. Ze zijn equivalent dns verstandig, maar gescheiden vanwege toegewijde ip.

Het punt is dat u al uw ingangen op één regel zoals deze kunt hebben

127.0.0.1 localhost localhost.domain www.myfakednsname.com myakednsname.com 

Als uw hostnaam lokaal is, wat betekent dat er geen wereldwijd internet-DNS-item is toegewezen aan een echt internet-ip, dan zei Thomas in dit geval NODIG HEBBEN heb de 2e entry-regel, zoals deze om het daar te wijden (aan canonieke).

127.0.0.1 localhost localhost.localdomain
127.0.1.1 myfakednsname

7
2017-08-02 05:02



in alle eerlijkheid, nadat ik dit uiteindelijk had gecomposeerd op een manier die voor mij logisch was, zie ik dat het vrijwel achterhaald is wat einpoklum probeerde uit te leggen. - Brian Thomas
OK negatieve stem, niet zeker waarom. Ik geloof nog steeds dat DIT het BESTE antwoord is, of ik zou het niet gezegd hebben, na hier te landen. het oorspronkelijke antwoord hielp, maar nam niet alle details vast. Ik zou met deze gaan. - Brian Thomas