Bir ana bilgisayar adının geçerli karakterleri?


86

Bir ana bilgisayar adının geçerli karakterleri nelerdir? Bu, ağa bağlı bir bilgisayar veya web etki alanı gibi bir şey olabilir.

Bağlama koymak gerekirse, uzak bir sunucuya bağlanan bir PC oyunu yazıyorum; bu yüzden ana bilgisayar adı için bir alanım ve bağlantı noktası için bir alanım var. Açıkçası, bağlantı noktası Kısa aralıktaki bir sayıdır, ancak olası tüm ana bilgisayar adı karakterlerinin ne olduğunu bilmem gerekiyor (ve gerekli olabilecek diğer herhangi bir model - bir ana bilgisayar adının bir harfle başlaması gerekir mi?

Ana bilgisayar adı örnekleri arasında localhostveya google.com.


2
Linux sethostname komutu herhangi bir baytı kabul edecektir.
OrangeDog

Yanıtlar:


92

Bu wiki'ye , özellikle de geçerli ana bilgisayar adlarıyla ilgili kısıtlamalar bölümüne bakın

Ana bilgisayar adları, tüm alan adları gibi noktalarla birleştirilmiş etiketler dizisinden oluşur. Örneğin, "en.wikipedia.org" bir ana bilgisayar adıdır. Her etiket 1 ila 63 karakter uzunluğunda olmalı ve tüm ana bilgisayar adı (sınırlayıcı noktalar dahil ancak sondaki nokta hariç) maksimum 253 ASCII karaktere sahip olmalıdır.

Protokollere yönelik İnternet standartları (Yorum Talepleri), bileşen ana bilgisayar adı etiketlerinin yalnızca 'a' ile 'z' arasındaki ASCII harflerini (büyük / küçük harfe duyarlı olmayan bir şekilde), '0' ile '9' arasındaki rakamları ve kısa çizgiyi içerebileceğini zorunlu kılar. ('-'). RFC 952'deki ana bilgisayar adlarının orijinal belirtimi, etiketlerin bir rakamla veya kısa çizgiyle başlayamayacağını ve bir tire ile bitmemesini zorunlu kılmıştır. Ancak, sonraki bir belirtim ( RFC 1123 ), ana bilgisayar adı etiketlerinin rakamlarla başlamasına izin verdi. Başka hiçbir sembol, noktalama işareti veya beyaz boşluğa izin verilmez.


6
Bir ana bilgisayar adı mı yoksa tam nitelikli bir alan adı mı aradığınız konusunda net olduğunuzdan emin olun.
Kevin Gross

Ayrıca, katı DNS birlikte çalışabilirlik gereksinimi arayıp aramadığınız konusunda da net olun. Özellikle DNS, ana bilgisayar adı etiketlerinde alt çizgileri yasaklarken, birçok işletim sistemi yerel kullanım için bunlara izin verir. DNS sunucuları esnek olma eğilimindedir ve şu anda DNS, TXT kayıtları (DKIM vb. İçin) gibi bazı kayıt türlerinde, ana makine adı etiketleri için değil, alt çizgi gerektirir.
üçlü

26

IDN'leri IDN toASCIIalgoritmasından önce mi sonra mı işlediğinize bağlıdır (yani, alan adını παράδειγμα.δοκιμήYunanca xn--hxajbheg2az3al.xn--jxalpdlpmı yoksa olarak mı görüyorsunuz ?).

IDN'leri zayıf kod aracılığıyla işlediğiniz ikinci durumda, eski RFC 1123 kuralları geçerlidir:

U + 0041'den U + 005A'ya (AZ), U + 0061'den U + 007A'ya (az) katlanmış durumda, U + 0030'dan U + 0039'a (0-9) ve U + 002D'ye (-).

ve tabii ki U + 002E (.); etiket kuralları, etiketler arasında noktalar olacak şekilde diğerlerine izin verir.

Bunu IDN biçiminde görüyorsanız, izin verilen karakterler çok çeşitlidir, tüm geçerli karakterlerin kullanışlı bir tablosu için http://unicode.org/reports/tr36/idn-chars.html adresine bakın .

Muhtemelen ağ kodunuz zayıf kodla ilgilenecektir, ancak ekran kodunuz (hatta dizeleri diğer katmanlara ve diğer katmanlardan iletme), السعودية üzerinde hiç kimse sunucu çalıştırmadığından daha insan tarafından okunabilir formda olacaktır. alan, sunucusunun açık olarak listelendiğini görmek istiyor .xn--mgberp4a5d4ar.


1
Vay canına, IDN ve Ponycode'u hiç görmedim! Şu anda sadece bir evcil hayvan projem olduğu için sadece İngilizce desteği almayı planlıyorum, ancak cevabınızdan kesinlikle bir şeyler öğrendim!
Ricket

2
Punycode'un çalışma biçimiyle ilgili harika olan şey, belirli bir seviyenin altında (ağ oluşturduğunuz yer) hepsinin ASCII olmasıdır. Bu, bir ASCII'nin yalnızca teknolojinin başka metinlerle çalışabileceğini varsaymanın bir yoludur (önceden izin verilmeyen bazı İngilizce kelimeler dahil). Tüm kelimeye bir yükseltme yolu vermenin yanı sıra, size de bir tane sağlar: RFC 1123'ün söylediği gibi yapın ve daha sonra IDN desteği eklerseniz, ağ kodu aynı kalır ve üstte RFC 3490 için destek eklersiniz (kütüphaneler de yardımcı olmak için birçok dilde mevcuttur).
Jon Hanna

2
@Ricket, yazım hatası olup olmadığını veya ad ("ponycode") hakkında şaka yapıp yapmadığını bilmiyor. Onlara kişisel olarak "zayıf düşmüş" diyorum.
Camilo Martin

4

Bir "ad" (Ağ, Ana Bilgisayar, Ağ Geçidi veya Etki Alanı adı), alfabe (AZ), rakamlar (0-9), eksi işareti (-) ve noktadan (.) Çizilen 24 karaktere kadar bir metin dizesidir. Noktalara yalnızca "alan stili adlarının" bileşenlerini sınırlandırmaya hizmet ettiklerinde izin verildiğini unutmayın. (Arka plan için bkz. RFC-921, "Alan Adı Sistemi Uygulama Programı"). Bir adın parçası olarak boşluk veya boşluk karakterine izin verilmez. Büyük ve küçük harf arasında ayrım yapılmaz. İlk karakter bir alfa karakter olmalıdır. Son karakter eksi işareti veya nokta olmamalıdır. GATEWAY olarak hizmet veren bir ana bilgisayar, adının bir parçası olarak "-GATEWAY" veya "-GW" olmalıdır. İnternet ağ geçidi işlevi görmeyen ana bilgisayarlar, adlarının bir parçası olarak "-GATEWAY" ve "-GW" kullanmamalıdır. TAC olan bir ana bilgisayarda "

Bu, http://support.microsoft.com/kb/149044 adresinde sağlanır.


Bu, aynen RFC 952'den [ tools.ietf.org/html/rfc952] alıntılanmıştır . Yanıltıcıdır - ana bilgisayar adları yukarıda belirtildiği gibi 1 ila 63 karakter uzunluğunda olabilir.
Craig S. Anderson

Maalesef bağlantı koptu.
Eugene Mayevski'nin Callback

0

Aaron Hathaway'in dediği .comgibi bir alan adı kaydediyorsanız ve sonlandırma (örn. ) IDN değildir : Ana bilgisayar adları, tüm alan adları gibi noktalarla birleştirilmiş etiketler dizisinden oluşur. Örneğin , bir ana bilgisayar adıdır. Her etiket 1 ila 63 karakter uzunluğunda olmalı ve tüm ana bilgisayar adı (sınırlayıcı noktalar dahil ancak sondaki nokta hariç) maksimum 253 ASCII karaktere sahip olmalıdır.en.wikipedia.org

Protokoller için Internet standartları (Açıklama İstekleri) bileşeni hostname etiketleri yalnızca ASCII harf içerebileceğini zorunlu aaracılığıyla z(küçük harf duyarlı bir şekilde), rakam 0yoluyla 9ve tire -. RFC 952'deki ana bilgisayar adlarının orijinal belirtimi, etiketlerin bir rakamla veya kısa çizgiyle başlayamayacağını ve bir tire ile bitmemesini zorunlu kılmıştır. Ancak, sonraki bir belirtim (RFC 1123), ana makine adı etiketlerinin rakamlarla başlamasına izin verdi. Başka hiçbir sembol, noktalama işareti veya beyaz boşluğa izin verilmez.

Daha sonra onunla İspanya oluyor .es, .com.es, .org.es, .nom,es, .gob.esve .edu.esTld biriyse, IDN TLD'leri tanıtıldı .esveya herhangi bir karakter kullanılabilir desteklerin herhangi bir başka, ama bir hostname Latin, Yunan veya Cyril gibi alfabeler kombine edilemez, ve başlangıçta ya da sonunda gidemeyen şeylere saygı duyuyor.

Kayıtlı olmayan tlds kullanıyorsanız, yalnızca yerel DNS veya ana bilgisayar dosyalarında olduğu gibi yerel ağ için, hepsini IDN olarak ele alabilirsiniz.

Bazı programların, özellikle eski, modası geçmiş ve popüler olmayan programların iyi çalışamayacağını unutmayın.

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.