Pertanyaan Mengapa nama host saya muncul dengan alamat 127.0.1.1 daripada 127.0.0.1 di / etc / hosts?


Ini mungkin sedikit pertanyaan noobish, tapi saya melihat di / etc / hosts pada instalasi Xubuntu saya yang baru dan melihat ini:

127.0.0.1 localhost
127.0.1.1 myhostname

Pada kebanyakan 'nixes yang saya gunakan, baris kedua dihilangkan, dan jika saya ingin menambahkan nama host saya ke file host, saya hanya melakukan ini:

127.0.0.1 localhost myhostname

Apakah ada perbedaan antara kedua file ini dalam arti praktis?


189
2018-02-23 17:44




Saya heran dapatkah saya menghapus baris kedua atau apakah beberapa proses di debian / ubuntu akan meregenerasi garis dan menambahkannya kembali? - simgineer


Jawaban:


Tidak banyak perbedaan antara keduanya; 127/8 (misalnya: 127.0.0.0 => 127.255.255.255) semuanya terikat ke antarmuka loopback.

Alasan mengapa didokumentasikan dalam manual Debian di Ch. 5 Pengaturan Jaringan - 5.1.1. Resolusi hostname.

Pada akhirnya, ini adalah solusi bug; laporan asli adalah 316099.


148
2018-02-23 17:47



Persis apa yang saya cari, terima kasih! - Tom
Alasan sebenarnya: "Mengasosiasikan sistem hostname dengan yang terakhir memiliki efek yang tidak diinginkan membuat 'localhost.localdomain' nama host kanonis yang terkait dengan hostname sistem. Yaitu, 'hostname --fqdn' kembali 'localhost.localdomain'." - cmroanirgo
Saya benar-benar melacaknya kembali ke daftar dokumen ini.debian.org/debian-boot/2005/06/msg00938.html dan tampaknya itu karena Thomas merasa perlu menggunakan 1,1 bukannya 0,1, yang setara, benar saya jika saya salah, tapi itu berarti jawaban ini benar-benar hanya breadcrumb? - Brian Thomas
@BrianThomas pesan itu menunjukkan mengapa mereka tidak setara. Mereka ingin localhost dan myhostname menjadi berbeda - jika tidak, seseorang akan menjadi alias dari yang lain. Catatan ini tidak berfungsi di IPv6 di mana hanya ada satu alamat loopback. Ini dapat dihindari dengan menggunakan modul NSS seperti yang disebutkan di utas, karena dapat lebih fleksibel daripada / etc / hosts dan mengembalikan nama kanonis yang berbeda meskipun mereka memiliki alamat IP yang sama. Saya tahu ini karena sistem saya dikonfigurasi menggunakan modul NSS seperti itu. - sourcejedi


Untuk meringkas informasi terkait-ke:

  • Hal ini (bisa diperdebatkan) berguna untuk memiliki entri di Anda /etc/hosts menerjemahkan nama domain lengkap mesin ke alamat IP permanennya.
  • debian-installer, dan lebih khusus lagi, itu netcfg komponen, saat ini (hingga Maret 2013 setidaknya) membuat entri ini.
  • Jika mesin tidak diketahui memiliki alamat IP permanen, debian-installer masih menginginkannya memiliki entri semacam itu.
  • Alamat 127.0.1.1 menggunakan antarmuka loopback, dijawab oleh mesin Anda sendiri, sama seperti 127.0.0.1 tetapi merupakan entri yang berbeda di /etc/hosts yang dapat dianggap terpisah dari 127.0.0.1 bila perlu.

Thomas Hood menjelaskan menambahkan entri ini sebagai berikut:

[Ini] akan memastikan bahwa jika nama host UNIX aku s diselesaikan maka itu akan terjadi   selalu menjadi nama host kanonis sendiri

tapi:

Dalam jangka panjang, nama host UNIX tidak boleh dimasukkan ke / etc / hosts sama sekali.


44
2018-03-22 16:53



.. dan sebagainya... ? haruskah saya menggunakan 127.0.0.1 untuk fdqn saya? atau 127.0.1.1? atau ip lan statis? - realtebo
@realtebo: 1. Ini berguna, dan karena itu ditambahkan oleh penginstal. 2. Tidak ada "keharusan" di sini; dan itu hanya relevan ketika FQDN Anda tidak memiliki alamat permanen. - einpoklum


Saya sendiri penasaran, dan saya tidak suka jawaban lain karena mereka tampaknya tidak menjawab apa yang saya cari minimal.

Jawabannya: Melihat kembali hal ini dokter hampir tampak seolah-olah Thomas sedang menyatakan memberikan ip lain yang berdedikasi pada loopback memungkinkannya menjadi kanonik.

Keduanya mengarah ke loopback Anda. Menggunakan yang berikut ini    127.0.1.1 adalah IP yang sebenarnya, pada loopback, sedangkan     127.0.0.1 adalah perangkat itu sendiri, atau ip lain di loopback. Keduanya berakhir di subnet yang sama, mewakili loopback, tetapi dipisahkan oleh ip. Mereka setara dns bijaksana, tetapi terpisah karena memiliki ip khusus.

Intinya adalah, Anda dapat memiliki semua entri Anda pada satu baris seperti ini

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

Jika nama host Anda bersifat lokal, artinya tidak memiliki entri internet DNS global yang dipetakan ke ip internet yang sebenarnya, maka dalam hal ini Thomas mengatakan Anda PERLU memiliki baris masuk ke-2, seperti ini untuk mendedikasikannya di sana (untuk kanonik).

127.0.0.1 localhost localhost.localdomain
127.0.1.1 myfakednsname

7
2017-08-02 05:02



dalam segala kejujuran, setelah saya akhirnya menyusun ini dengan cara yang masuk akal bagi saya, saya melihat banyak sekali apa yang ingin dijelaskan oleh einpoklum sepertinya di belakang. - Brian Thomas
OK suara negatif, tidak yakin mengapa. Saya masih percaya ini adalah jawaban TERBAIK, atau saya tidak akan memasukkannya, setelah mendarat di sini. jawaban asli membantu, tetapi tidak menangkap semua detail. Saya akan pergi dengan yang ini. - Brian Thomas