IPv6 sıkıştırma ve genişletme
Bir IPv6 adresini tek kanonik biçimine kısaltın ya da 32 rakamın tamamına genişletin; hangi sıfırların gittiğini, bir dizinin neden :: olduğunu ve yazımınızın hangi RFC 5952 kuralını çiğnediğini görün. Listeler de çalışır.
Okunan biçim: IPv6
Tek bir adres ya da her satırda bir adres olan bir liste (en fazla 100). Dönüştürme tarayıcınızda yapılır; hiçbir şey gönderilmez.
2001:db8::1:0:0:1
Kural kural RFC 5952
- Sıkıştırılmış (RFC 5952)
- Genişletilmiş (tam)
- URL içinde
- Sayı olarak
- Ondalık · hex · ikili
- Ters DNS adı
IPv6 adresi nasıl sıkıştırılır?
Adresi küçük harfe çevirin, her gruptaki baştaki sıfırları atın, ardından iki veya daha fazla sıfır grubundan oluşan en uzun diziyi :: ile değiştirin; iki dizi eşit uzunluktaysa ilkini.
Böylece yazılımların yazdırması gereken tek kanonik biçim elde edilir (RFC 5952). Programlar girdi olarak diğer tüm geçerli yazımları da kabul etmek zorundadır; yani sıkıştırma adresi asla değiştirmez, yalnızca nasıl yazıldığını değiştirir.
2001:0DB8:0000:0000:0000:FF00:0042:8329392001:0db8:0000:0000:0000:ff00:0042:8329392001:db8:0:0:0:ff00:42:8329272001:db8::ff00:42:83292239 → 22 karakter

YazdığınızBüyük harfler, baştaki sıfırlar ve diğerleri: her geçerli yazım okunur.Atılan sıfırlarBaştaki sıfırların üstü çizili, grup grup.:: olan diziEn uzun sıfır grubu dizisi; eşitlikte ilki.Kalan dizilerDiğer sıfır dizileri 0'larını korur, nedeniyle birlikte.Kural kuralYazımın kaç RFC 5952 kuralını çiğnediği; altındaki kontrol listesi her birini ve neyin değiştiğini adlandırır.IPv6 sıkıştırma kuralları nelerdir?
RFC 5952 beş kural koyar: baştaki sıfırları atın, :: olabildiğince uzun olsun, tek bir sıfır grubu için asla :: kullanmayın, en uzun diziyi sıkıştırın (eşitlikte ilkini) ve onaltılık harfleri küçük yazın.
Altıncı bir öneri IPv4 taşıyan adreslerle ilgilidir: ::ffff: gibi bir önekten sonra son 32 bit noktalı bir IPv4 adresi olarak yazılır. Araç, yazdığınız metni her kurala göre denetler ve düzelttiklerini adlandırır.
1Baştaki sıfırlar atıldı§4.1
Doğru: 2001:db8::1
Yanlış: 2001:0db8::0001
2:: olabildiğince uzun§4.2.1
Doğru: 2001:db8::2:1
Yanlış: 2001:db8:0:0:0:0:2:1
3Tek grup için :: yok§4.2.2
Doğru: 2001:db8:0:1:1:1:1:1
Yanlış: 2001:db8::1:1:1:1:1
4En uzun dizi, eşitlikte ilki§4.2.3
Doğru: 2001:db8::1:0:0:1
Yanlış: 2001:db8:0:0:1::1
5Küçük harf§4.3
Doğru: 2001:db8::a
Yanlış: 2001:DB8::A
+Noktalı IPv4 sonu§5
Doğru: ::ffff:192.0.2.1
Yanlış: 0:0:0:0:0:ffff:192.0.2.1
IPv6 adresi nasıl genişletilir?
Yazılı grupları sayın, :: sekize ulaşmak için gereken sayıda sıfır grubunun yerini tutsun ve her grubu dört haneye tamamlayın: 2001:db8::1 adresinde üç grup var, yani :: beş gruptur.
Genişletilmiş biçim, ters DNS'in rakam rakam (nibble) kullandığı biçimdir; birçok log ve tablonun metin olarak sıralama için ihtiyaç duyduğu biçim de budur. Python buna .exploded, Go ise StringExpanded der.
2001db8::13 yazılan2001db8000001+ 5 :: yerine geçen sıfır grupları20010db80000000000000000000000014 haneye tamamlandıBir IPv6 adresi kaç farklı şekilde yazılabilir?
Birçok şekilde: baştaki sıfırlar, harf büyüklüğü ve :: işaretinin yeri değişebilir; bu yüzden tek bir adresin birçok geçerli yazımı vardır ve RFC 5952, tek bir kanonik biçimi belirlemeden önce 2001:db8:0:0:1:0:0:1 için sekiz yazım sıralar.
Adresleri metin olarak karşılaştırmanın başarısız olmasının nedeni budur: aynı adresin iki yazımı eşleşmez. Bunun yerine onları 128 bitlik sayılar olarak karşılaştırın ya da önce ikisini de sıkıştırın.
2001:db8:0:0:1:0:0:12001:0db8:0:0:1:0:0:12001:db8::1:0:0:12001:db8::0:1:0:0:12001:0db8::1:0:0:12001:db8:0:0:1::12001:db8:0000:0:1::12001:DB8:0:0:1::12001:db8::1:0:0:1kanonik · RFC 5952Bir IPv6 adresi URL'de, portla veya bölgeyle nasıl yazılır?
Portun bir grupla karıştırılmaması için adresi köşeli parantez içine alın: http://[2001:db8::1]:8443/. %eth0 gibi bir bölge ise tarayıcı URL'sine hiç yazılamaz.
RFC 5952, portlu bir adresin köşeli parantez içine alınmasını söyler ve 2001:db8::1:8443 yazımını önerilmez sayar. Köşeli parantezler URL'de başka hiçbir şey için kullanılmaz. Tarayıcılar adresi ::ffff: sonrasında bile hex olarak yazdırır; bu yüzden [::ffff:192.0.2.1] adresi [::ffff:c000:201] olarak görünür.
Bölgeler tek bir makinedeki bir arayüzü adlandırır, örneğin fe80::1%eth0. RFC 9844 2025'te onları URL'lerden yeniden çıkardı ve tarayıcılar onları reddeder; yine de programlar bir bölge yazmanıza izin vermelidir.
Bölge (%eth0) · fe80::1%eth0
| Bir programın alanına yazılınca | izin verilir |
| Tarayıcı URL'sinde | reddedilir |
| inet_pton() | ayrıştıramaz |
| Küresel adresler | hiçbir zaman sahip olmaz |
Kodda IPv6 nasıl sıkıştırılır veya genişletilir?
Adresi ayrıştırıp yazdırın: Python'da .compressed, Go'da netip.Addr.String() ve MySQL'de INET6_NTOA(INET6_ATON(…)) kanonik metni, .exploded ve StringExpanded() ise tam biçimi verir.
Python'da str() da sıkıştırılmış biçimi verir ve Python bir %zone sonekini kabul eder. MySQL küçük harfle, en fazla 39 karakter ve her platformda aynı şekilde yazdırır.
› import ipaddress a = ipaddress.ip_address('2001:0DB8::0001') a.compressed, a.exploded ('2001:db8::1', '2001:0db8:0000:0000:0000:0000:0000:0001')
Python ipaddress
› a := netip.MustParseAddr("2001:0DB8::0001") fmt.Println(a.String(), a.StringExpanded()) 2001:db8::1 2001:0db8:0000:0000:0000:0000:0000:0001
Go net/netip
› SELECT INET6_NTOA(INET6_ATON('2001:0DB8::0001')); 2001:db8::1
MySQL 8.4
Sık sorulan sorular
2001:0db8:0000:0000:0000:ff00:0042:8329 adresinin sıkıştırılmış biçimi nedir?
Bir IPv6 adresinde :: iki kez kullanılabilir mi?
2001:db8:0:1:1:1:1:1 neden 2001:db8::1:1:1:1:1 olarak sıkıştırılmıyor?
IPv6 adresleri büyük harfle mi, küçük harfle mi yazılmalı?
Bir IPv6 adresindeki :: nasıl genişletilir?
En uzun IPv6 adresi kaç karakterdir?
::ffff:c000:280 neden ::ffff:192.0.2.128 olur?
Portlu bir IPv6 adresi URL'ye nasıl yazılır?
Python'da bir IPv6 adresi nasıl sıkıştırılır?
Bir IPv6 adres listesini tek seferde sıkıştırabilir miyim?
Eksik bir şey mi var?Bir özellik ya da yeni bir araç önerin
İlgili araçlar
IPv6'dan IPv4'e
IPv6 adresinin içindeki IPv4'ü bulun: eşlemeli, NAT64, 6to4, Teredo ve ISATAP, bit bit
IPv4'ten IPv6'ya
Bir IPv4 adresinin tüm IPv6 biçimleri: eşlemeli, NAT64 ve 6to4; her biri kullanımda veya nadir diye işaretli
IP'den Ondalığa Çevirici
IP adresini ondalık, hex, ikili ve sekizli sayıya çevirin ve geri alın; her oktetin basamak değerleriyle
IP Adresim Nedir
Genel IPv4 ve IPv6 adresiniz bir arada; ağ, konum ve VPN kontrolüyle
IPv6 Testi
IPv6 çalışıyor mu, tarayıcı hangi aileyi seçiyor, sitede IPv6 var mı: test edin
Alt Ağ Hesaplayıcı
Her IPv4 veya IPv6 bloğu için ağ, yayın adresi, kullanılabilir hostlar ve maskeler; VLSM, bölme ve bulut alt ağları
Ters DNS Sorgulama
PTR kayıtları ile IP adresine bağlı ana bilgisayar adlarını bulun
DNS Sorgulama
Tüm DNS kayıtları alan adının kendi ad sunucularından, Google ve Cloudflare önbelleğiyle yan yana