Localhost ve 0.0.0.0 için IPV6 nedir?


101

Hepimizin IPv4 adresini bildiği gibi localhostolan 127.0.0.1(geri döngü adresi). Ne için IPv6 adresi olan localhostve için 0.0.0.0bazı reklam ana engellemek gerektiğinden.

Yanıtlar:


120

Hepimizin bildiği gibi için IPv4 adresi olduğunu localhostIS 127.0.0.1(geri döngü adresi).

Aslında, içindeki herhangi bir IPv4 adresi 127.0.0.0/8bir geri döngü adresidir.

IPv6'da, geridöngü aralığının doğrudan analogu ::1/128. Yani ::1(uzun biçim 0:0:0:0:0:0:0:1) tek ve tek IPv6 geri döngü adresidir.


Ana bilgisayar adı localhostnormalde 127.0.0.1veya olarak çözümlenirken ::1, birinin onu geri döngü adresi olmayan bir IP adresine bağladığı durumlar gördüm. Bu biraz çılgınca ... ama bazen insanlar bunu yapıyor.

"Bu çılgınlık" diyorum çünkü bunu yaparak uygulama varsayımlarını kırmakla yükümlüsünüz; Örneğin, bir uygulama geridöngü IP'sinde ters arama yapmaya çalışabilir ve beklenen sonucu alamayabilir. En kötü durumda, bir uygulama yanlışlıkla güvenli olmayan bir ağ üzerinden hassas trafik gönderebilir ... ancak bunu "başarmak" için başka hatalar da yapmanız gerekebilir.


Engellemenin bir 0.0.0.0anlamı yok. IPv4'te asla yönlendirilmez. IPv6'daki eşdeğeri ::adrestir (uzun biçim 0:0:0:0:0:0:0:0) ... ve asla yönlendirilmez.

0.0.0.0Ve ::adresleri "herhangi bir adres" anlamında saklıdır. Bu nedenle, örneğin bir web hizmeti sağlayan bir program , ana bilgisayarın IPv4 adreslerinden herhangi biri aracılığıyla HTTP bağlantılarını kabul etmek için bağlantı noktası 80'e bağlanabilir0.0.0.0 . Bu adresler, bir IP paketi için kaynak veya hedef adres olarak geçerli değildir.


Son olarak, bazı yorumlar hakkında soruyorlardı ::/128karşı ::/0karşı ::.

Bu fark nedir?

Açıkçası, ilk ikisi IPv6 adresleri değil CIDR gösterimleridir. Aslında bir dizi IP adresi belirtiyorlar. Bir CIDR, bir IP adresinden ve bir ağ maskesindeki bit sayısını belirten ek bir numaradan oluşur. İkisi birlikte bir adres aralığı belirtir; yani, verilen adresten maskelenen bitlerin göz ardı edilmesiyle oluşturulan adresler kümesi.

Yani:

  • :: sadece IPv6 adresi anlamına gelir 0:0:0:0:0:0:0:0
  • ::/1280:0:0:0:0:0:0:0128 bitten oluşan ağ maskeli anlamına gelir . Bu, içinde tam olarak bir adres bulunan bir ağ aralığı verir.
  • ::/00:0:0:0:0:0:0:00 bitten oluşan ağ maskeli anlamına gelir . Bu, içinde 2 128 adres bulunan bir ağ aralığı verir .; yani, IPv6 adres alanının tamamıdır!

Daha fazla bilgi için, IPv4 ve IPv6 adresleri ve CIDR gösterimi hakkındaki Wikipedia sayfalarını okuyun:




4

Yalnızca eksiksizlik adına: IPv4 adresini bir IPv6 adresine yerleştirebileceğiniz IPv4 eşlemeli IPv6 adresleri vardır (her IPv6 ekipmanı tarafından desteklenmeyebilir).

Örnek: Makinemde, üzerinden erişilebilen bir sunucu çalıştırıyorum http://127.0.0.1:19983/solr. IPv4 eşlemeli bir IPv6 adresi aracılığıyla erişirsem, ona şu yolla erişirim http://[::ffff:127.0.0.1]:19983/solr(bu adrese dönüştürülür http://[::ffff:7f00:1]:19983/solr)


2

Bir kullanım için /etc/hostsDosya, bir etki alanının çözümlenememesine neden olan basit bir reklam engelleme tekniği olarak kullanılırsa, 0.0.0.0 adresi, geçerli veya yönlendirilebilir bir adres olmadığı için isteğin denemeden bile hemen başarısız olmasına neden olduğu için yaygın olarak kullanılmaktadır. Bu, 'bağlantı reddedildi' ile başarısız olmadan önce en azından kendi bilgisayarınızın istenen 80 numaralı bağlantı noktasını dinleyip dinlemediğini kontrol edeceği yerde 127.0.0.1'i kullanmakla karşılaştırılır. Etki alanı için ana bilgisayar dosyasında kullanılan bu adreslerden herhangi biri, herhangi bir isteğin gerçek ağ üzerinden yapılmasını engelleyecektir, ancak 0.0.0.0, yukarıdaki nedenden dolayı daha 'ideal' olduğu için avantaj kazanmıştır. "127" IP kendi bilgisayarınızı vurmaya çalışacak ve diğer herhangi bir IP yönlendiriciye yönlendirmeyi denemek için bir istek gönderilmesine neden olacaktır, ancak 0.0.0.0 için orada '

Tüm söylenenler, engellenecek etki alanı için ana bilgisayar dosyanızda listelenen herhangi bir IP'ye sahip olmak yeterlidir ve ana makine dosyanıza bir ipv6 adresi koymanıza gerek kalmaz veya bunu yapmak istemezsiniz - muhtemelen - yapmazsınız. ipv4'ü hiç etkinleştirmeyin. Yine de durum böyleyse gerçekten şaşırırdım. Yine de, ipv4'ü etkinleştirmediğinizde, ana bilgisayarın / etc / hosts dosyasında kötü bir ipv4 adresiyle görünmesinin, size hala aradığınız sonucu vereceğini düşünüyorum, hangisinin başarısız olduğunu görmek yerine say, adserver-example.com'un gerçek DNS'si ve bir v4 veya v6 IP'sini geri alma.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.