Alt alan adlarının (alan adları) alt çizgileri olabilir _
mi?
Alt alan adlarının (alan adları) alt çizgileri olabilir _
mi?
Yanıtlar:
Burada verilen cevapların çoğu yanlıştır . Bir alan adında alt çizgiye sahip olmak tamamen yasaldır. Standart RFC 2181, bölüm 11, "Ad sözdizimi" ni belirteyim :
DNS, kaynak kayıtlarını tanımlamak için kullanılabilen belirli etiketlere yalnızca bir kısıtlama koyar. Bu bir kısıtlama, etiketin uzunluğu ve tam adı ile ilgilidir. [...] DNS protokollerinin uygulamaları, kullanılabilecek etiketlere herhangi bir kısıtlama getirmemelidir. Özellikle, DNS sunucuları bazı DNS istemci programları tarafından kabul edilemeyecek etiketler içerdiğinden bir bölgeye hizmet vermeyi reddetmemelidir.
Ayrıca bkz. Orijinal DNS belirtimi, RFC 1034 , bölüm 3.5 "Tercih edilen ad sözdizimi", ancak dikkatle okuyun.
Alt çizgileri olan alanlar vahşi doğada çok yaygındır. Kontrol _jabber._tcp.gmail.com
veya _sip._udp.apnic.net
.
Burada bahsedilen diğer RFC farklı şeylerle ilgilenir. Asıl soru alan adları içindi . Soru, ana bilgisayar adları (veya bir ana bilgisayar adı içeren URL'ler için) ise, bu farklıdır, ilgili standart, ana bilgisayar adlarını letter-digit-tire ile sınırlayan RFC 1123 , bölüm 2.1 "Ana Bilgisayar Adları ve Sayıları" dır .
_jabber._tcp.gmail.com
bir alan adı değil, bir FQDN. URL'lerde alt çizgi bulunamayacağından, muhtemelen alt çizgisi olan bir alan adı satın alamazsınız. Bu nedenle, tho alan adlarının DNS sözdizimi açısından alt çizgileri de olabilir, yerel bir alan olmadığı sürece hiçbiriyle karşılaşmazsınız.
Tanımlar konusunda net olunmalıdır. Burada kullanıldığı gibi:
Hostname ait kısıtlamalara tabidir RFC 952 ve RFC 1123 hafif gevşeme
RFC 2181 , bir etki alanı adı ile ana makine adı arasında bir fark olduğunu açıkça belirtir:
... herhangi bir ikili etiketin bir MX kaydına sahip olabilmesi, herhangi bir ikili adın bir e-posta adresinin ana bilgisayar parçası olarak kullanılabileceği anlamına gelmez ...
Bu nedenle, ana makine adlarındaki alt çizgiler hayırdır, etki alanı adlarındaki alt çizgiler tamamdır.
Uygulamada, alt çizgileri olan ana makine adları görülebilir . As Gürbüzlük İlke diyor ki: "Eğer kabul ne, ne göndermek muhafazakar liberal olun".
21. yüzyılda, alan adlarının yanı sıra ana bilgisayar adlarının uluslararasılaştırılabileceği ortaya çıkıyor! Bu , izin verilen kümenin dışında karakterler içeren etiketlerde kodlamalara başvurmak anlamına gelir .
Özellikle, tek kodlamak için izin verir _
de ana bilgisayar adlarının (. Güncelleştirme 2017-07: Bu, yorumları görmek şüphelidir _
.. Hala ana bilgisayar adları içinde kullanılamaz Gerçekten de, hatta uluslararası etiketlerde kullanılamaz)
Uluslararasılaştırma için ilk RFC , "Uygulamalarda Alan Adlarını Uluslararasılaştırma (IDNA)" Mart 2003 tarihli RFC 3490 idi. Bugün, elimizde:
Wikipedia Girişini de kontrol etmek isteyebilirsiniz
RFC 5890 tanıtır süreli LDH (Letter Haneli-hypen) etiketi için etiket kullanılan ana bilgisayar adlarının ve der ki:
Bu, ana bilgisayar adlarında bazı ek kısıtlamalarla da olsa kullanılan klasik etiket formudur (RFC 952). Sözdizimi, RFC 1123 tarafından değiştirildiği şekliyle RFC 1034'ün 3.5 numaralı bölümünde "tercih edilen ad sözdizimi" olarak tanımlananla aynıdır. Kısaca, kısa çizgi ASCII harfleri, rakamlar ve kısa çizgiden oluşan kısa çizgiden oluşan bir dizedir dizenin başında veya sonunda görünür. Tüm DNS etiketleri gibi, toplam uzunluğu 63 sekizli'yi geçmemelidir.
Daha basit zamanlara dönersek, bu İnternet taslağı ana bilgisayar adı uluslararasılaşması için erken bir tekliftir . Uluslararası karakterlere sahip ana bilgisayar adları, örneğin 'RACE' kodlaması kullanılarak kodlanabilir .
'RACE kodlaması' teklif notlarının yazarı:
RFC 1035'e göre, ana bilgisayar parçaları büyük / küçük harfe duyarlı olmamalı, bir harf veya rakamla başlamalı ve bitmeli ve yalnızca harf, rakam ve kısa çizgi karakteri ("-") içermelidir. Bu, elbette, uluslararası karakterleri ve ASCII karakter repertuarındaki diğer birçok karakteri hariç tutar. Ayrıca, alan adı bölümleri 63 sekizli veya daha kısa olmalıdır. Uluslararasılaştırılmış karakterler içeren tüm dönüştürülmüş ad bölümleri "bq--" dizesiyle başlar. (...) "bq--" dizesi seçildi çünkü bu spesifikasyon üretilmeden önce konak parçalarda bulunması son derece düşük.
bar.baz.
altına hiyerarşik olan alan adlarının sadece toplama (örneğin) olduğu bar.baz.
, örneğin a.bar.baz.
, f.g.bar.baz.
, h.bar.baz.
Bu "alt alan adı" gerçek ana bilgisayar adlarını içerebilir veya içermeyebilir .
a.bar.baz
(etki alanı adı) "dizenin alt bar.baz
etki alanı (başka bir etki alanı adı)" olarak adlandırmak yanlış olabilir . Etki alanı adları (DNS veritabanı kaynakları) a.bar.baz
ve ana makine adlarıbar.baz
olabilir veya olmayabilir .
Bilmeniz gerekebilecek ek bir şey daha vardır: URL'nin ana bilgisayar veya alt alan adı alt çizgi içeriyorsa, IE9 (diğer sürümleri test etmediyse) çerez yazamaz.
Bu yüzden dikkatli olun. :-)
Netleştirilmesi bortzmeyer ve David TONHOFER , alan adı ve alt etki isim etiketleri başka hiçbir yerde öncü alt çizgilerden, ancak.
As David TONHOFER yazdığı, etiketler arasında kalan-dönemler parçalardır ve LDH kuralı takip etmeli dışında düzenli etiketler ayırmaktır hizmet etiketleri ve liman etiketleri belirtirken. Daha sonra etiketin başında, Hizmet Adı ve Bağlantı Noktası Numarası Kayıt Defteri'nden "Kısa Adlar", baştaki 0'ları olmayan bağlantı noktası numarası veya protokol (yani, tcp, udp) olmalıdır. Bu servis etiketleri ayrıca 15 karakterle sınırlıdır.
David Tonhofer'ın aksine cevabının , IDN alt çizgiyi ('_' U + 005F DÜŞÜK HAT) veya başka bir geçersiz ASCII karakterini kodlamaya izin vermez.
Gönderen RFC5890
[..] IDNA'nın tanıtılmasıyla iki yeni LDH etiketi alt kümesi oluşturulmuştur. Bunlara Ayrılmış LDH etiketleri (R-LDH etiketleri) ve Ayrılmamış LDH etiketleri (NR-LDH etiketleri) denir. Diğer bazı bağlamlarda "etiketli alan adları" olarak bilinen ayrılmış LDH etiketleri, üçüncü ve dördüncü karakterlerde "-" içerdikleri ancak LDH etiket kurallarına uyduğu özelliğe sahiptir .
Punycode, alt çizgi dahil tüm ASCII kod noktalarını doğrudan ASCII olarak kodlar. Ortaya çıkan R-LDH, LDH etiketi kurallarına uymayacaktır. Örneğin , kuralları ihlal ettiği Σ_.com
şekilde kodlanır xn--_-zmb.com
. Bir eşyazımlı kod noktası olabilir ki yasal olarak kodlanmış (belki de, '_' u + FF3F düşük hat Fullwidth), ancak codepoints bu tür tarafından izin olarak kategorize edilebilir edilebilir bir alt çizgi gibi görünüyor RFC5892 bir Noncharacter_Code_Point olarak 2.3 IgnorableProperties altında.
RACE (önerilen diğer IDN kodlama şeması) IETF tarafından standart olarak kabul edilmemiştir ve kullanılmamalıdır.
RFC1034 bağlantısını izledim ve çoğunu okudum ve bunu görünce şaşırdım:
Etiketler ARPANET ana bilgisayar adlarına ilişkin kurallara uymalıdır. Bir harfle başlamalı, harf veya rakamla bitmeli ve iç karakter olarak yalnızca harf, rakam ve kısa çizgi içermelidirler. Uzunluğunda bazı kısıtlamalar da vardır. Etiketler 63 karakter veya daha az olmalıdır.
Açıklığa kavuşturmak için, bir alan adı "." Noktalarıyla ayrılmış etiketlerden oluşur. Alt çizgilerin kullanılmasından bahsetmediği için bu özellik eski olmalıdır. Birisi bu spesifikasyonun eskimiş olduğunu bilmeden tökezliyorsa karışıklığı anlayabilirim. Eski, değil mi?
RFC2181 bağlantısını takip ettim ve bir kısmını okudum. Özellikle, yetkili veya kanonik olanın ne olduğu ve geçerli bir DNS etiketi yapan şeyin ne olduğu konusuyla ilgilidir.
Daha önce yayınlandığı gibi, özetlemek için sadece bir uzunluk kısıtlaması olduğunu belirtir:
(adlar ve geçerli etiketler hakkında)
Bunlar zaten yeterince belirtilmiş olsa da, teknik özellikler bazen göz ardı edilmiş gibi görünmektedir. Mevcut spesifikasyonları güçlendirmeye çalışıyoruz.
Biraz "sadece bir uzunluk kısıtlaması" "yeterli" olup olmadığını merak bırakır. @ # $% Gibi alan adlarını görmeye başlayacak mıyız !! yakında? İnternet yeterince berbat değil mi?
Son zamanlarda CAB forumu (*)
Herhangi bir dNSName girdisinde alt çizgi karakteri içeren ve geçerlilik süresi 30 günden fazla olan tüm sertifikalar 15 Ocak 2019 tarihinden önce iptal edilmelidir. Https://cabforum.org/2018/11/12/ballot-sc-12- sunset-of-çizgi-içinde-dnsnames /
Bu, artık ssl / tls sertifikasına sahip alan adlarında alt çizgi kullanmanıza izin verilmediği anlamına gelir.
(*) Sertifika Yetkilisi Tarayıcı Forumu (CA / Tarayıcı Forumu), önde gelen Sertifika Veren kuruluşların (aşağıdaki Bölüm 2.1 (a) (1) ve (2) 'de tanımlandığı gibi)) ve Internet tarayıcı yazılımı ve diğer uygulamaların gönüllü olarak bir araya getirilmesidir. sertifikaları kullanın (aşağıdaki Bölüm 2.1 (a) (3) 'de tanımlanan Sertifika Tüketicileri).
Bireysel TLD'ler , yerel dilleri karşılamak gibi uygun gördükleri alan adlarına kendi kurallarını ve kısıtlamalarını yerleştirebilir .
Örneğin, CIRA'ya , Kanada'nın .ca
alan adlarına izin verilir:
harfler
a
yoluylaz
ve aşağıdaki aksanlı karakterler:é ë ê è â à æ ô œ ù û ü ç î ï ÿ
. Alan Adlarının büyük / küçük harfe duyarlı olmadığını unutmayın. Bu, büyük harfler ile küçük harfler arasında bir ayrım yapılmayacağı anlamına gelir (A
=a
);Sayılar
0123456789
veKısa çizgi karakteri ("
-
) (o her ne kadar can not başlatmak veya Alan Adı sonlandırmak için kullanılabilir).
Maksimum uzunluk 63 karakterdir, ancak her aksanlı karakter bu sınırı 4 karakter azaltır .
( Kaynak )
Bu arada, nokta-ca alan adları için yaklaşık 4 Quadragintillion alan adı olasılığına (alt alanları saymaz) izin verir .
İşte Java dünyasından 2 sentim:
Java 8 ile bir Spark Scala konsolundan:
scala> new java.net.URI("spark://spark_master").getHost
res10: String = null
scala> new java.net.URI("spark://spark-master").getHost
res11: String = spark-master
scala> new java.net.URI("spark://spark_master.google.fr").getHost
res12: String = null
scala> new java.net.URI("spark://spark.master.google.fr").getHost
res13: String = spark.master.google.fr
scala> new java.net.URI("spark://spark-master.google.fr:3434").getHost
res14: String = spark-master.google.fr
scala> new java.net.URI("spark://spark-master.goo_gle.fr:3434").getHost
res15: String = null
Kesinlikle kötü bir fikir ^^
Sadece yerel proje (vagrant ile) oluşturdu ve ip adresi üzerinden erişildiğinde mükemmel çalışıyordu. Sonra hosts dosyasına some_name.test ekledim ve bu şekilde erişmeye çalıştım, ama her zaman "kötü istek - 400" alıyordum. Sadece domain-some-name.test olarak değiştirilmesinin problemi çözdüğünü anlayana kadar saat kaybettim. Yani en azından Mac OS'de yerel olarak çalışmıyor.
Hayır, alt alanda alt çizgi kullanamazsınız, ancak hiper (tire) kullanırsınız. yani my-subdomain.agahost.com kabul edilebilir ve my_subdomain.agahost.com kabul edilemez.
İnternette çözülmesini istiyorsanız değil.
Sahip olamazsınız: http://my_subdomain.example.com geçersiz.
Şunlara sahip olabilirsiniz: http://my-subdomain.example.com kısa çizgi ile.