Güncel sürüm durumu
2 Ekim 2026 itibarıyla en son kararlı sürüm, 12 Eylül 2026'da yayımlanan UnrealIRCd 6.2.7'dir. Bu sürüm web sunucusu modülündeki birden fazla sorunu düzeltir ve aynı düzeltmeler için hot-patch de sunulmuştur. Yapılandırma değişikliklerine başlamadan önce sunucunuzun güncel olduğundan emin olun.
Varsayılan olarak hangi karakterlere izin verilir?
Belgelere göre her zaman izin verilen temel karakterler şunlardır:
CODE TERMINAL
a-z A-Z 0-9 [ \ ] ^ _ - { | } `Ayrıca nick'ler rakamla, eğik çizgiyle veya tire ile başlayamaz. Bu kümenin dışındaki harfler için ek bir karakter kümesi tanımlamanız gerekir.
Karakter kümeleri
UnrealIRCd iki aile sunar: UTF-8 kümeleri ve UTF-8 olmayan (tek baytlı kod sayfası) kümeleri. Türkçe için tanımlayıcılar şunlardır:
| Kodlama | Türkçe küme adı | Not |
|---|---|---|
| UTF-8 | turkish-utf8 | Günümüz istemcileri için önerilen seçim |
| Tek baytlı | turkish | Eski kod sayfası kullanan ağlar için |
Belgede listelenen diğer UTF-8 kümeleri arasında latin-utf8, german-utf8, french-utf8, spanish-utf8, dutch-utf8, polish-utf8, greek-utf8, hebrew-utf8, russian-utf8, ukrainian-utf8 ve cyrillic-utf8 bulunur. UTF-8 olmayan kümeler arasında ise latin1, latin2, windows-1250, windows-1251, greek, hebrew ve chinese-simp, chinese-trad, chinese-ja, chinese, gbk gibi Çince kümeler yer alır.
Türkçe nick desteğini açma
Ayarın sözdizimi bir liste bloğudur. Türkçe ve İngilizce kullanan bir ağ için tek satır yeterlidir; ASCII temel karakterler zaten her zaman izinlidir:
CODE TERMINAL
set {
allowed-nickchars { turkish-utf8; };
};Belgedeki örnek, Batı Avrupa dillerinin harflerini kapsayan latin-utf8 kümesini kullanır:
CODE TERMINAL
set {
allowed-nickchars { latin-utf8; };
};Kümeleri birleştirirken dikkat
Birden fazla küme aynı blokta listelenebilir, ancak belgeye göre bazı birleşimler sorun çıkarır ve hata verir. Örneğin latin* ile chinese-* kümelerinin birleşimi sunucu tarafından düzgün işlenemez ve UnrealIRCd bu yapılandırmayı reddeder. Pratik kural: yalnızca gerçekten ihtiyaç duyduğunuz en az sayıda kümeyi tanımlayın.
Bilinen sınırlamalar
- Büyük/küçük harf eşlemesi yalnızca US-ASCII'ye göre çalışır. Belgede verilen örneğe göre ö ve Ö "aynı" karakter olarak tanınmaz. Bu, ASCII dışı harflerin büyük ve küçük biçimlerinin farklı nick'ler oluşturabileceği anlamına gelir; Türkçe harfler için de durumu test ortamında denemeniz önerilir.
- Services desteği sınırlıdır. Belgeye göre çoğu Services yazılımı UTF-8 nick'lerin kaydına izin vermez. NickServ kullanan bir ağda Türkçe harfli nick'lerin kaydedilip kaydedilemediğini canlıya almadan önce sınayın.
- Görsel benzerlik ve taklit riski. Belgeye göre Kiril alfabesini (ör. russian-utf8) açarsanız Kiril A ile Latin A aynı görünür ve bu, başka bir kullanıcıyı taklit etmek için kötüye kullanılabilir. İhtiyacınız olmayan alfabeleri açmayın.
Nick uzunluğu: set::nick-length ve set::min-nick-length
set::nick-length, nick'in azami uzunluğunu belirler. Varsayılan ve üst sınır 30'dur (NICKLEN); bu ayar yalnızca daha kısa bir sınır koymak için kullanılabilir. set::min-nick-length ise asgari uzunluğu belirler; varsayılanı 0'dır (sınır yok) ve nick-length değerinden küçük veya ona eşit olmalıdır. Tek karakterli, akılda kalıcı nick'leri sınırlamak isteyen ağlar için örnek:
CODE TERMINAL
set {
nick-length 20;
min-nick-length 3;
};UTF-8 harfler birden fazla bayt kapladığı için sınırın Türkçe harfli nick'lerde nasıl uygulandığını test ortamında doğrulayın.
Kanal adları: set::allowed-channelchars
Kanal adlarında hangi karakterlerin kabul edileceğini bu ayar belirler. Üç değer vardır:
| Değer | Anlamı |
|---|---|
| utf8 | Geçerli tüm UTF-8 karakterler; varsayılan değer |
| ascii | Yalnızca a-z, A-Z, 0-9 ve birkaç ASCII karakter; 127 üzeri değerler hariç |
| any | En gevşek seçenek; neredeyse tüm karakterlere izin verir |
Hangi değer seçilirse seçilsin 32'nin altındaki kontrol karakterleri, boşluk, virgül ve iki nokta her zaman reddedilir. Varsayılan utf8 değeri #çaylak gibi Türkçe kanal adlarına zaten izin verir. Taklit riskini azaltmak için kanal adlarını ASCII ile sınırlamak isteyen ağlar şu ayarı kullanabilir:
CODE TERMINAL
set {
allowed-channelchars ascii;
};İlgili uzunluk ayarları
Aynı set bloğunda mesaj uzunluklarına ilişkin sınırlar da bulunur:
| Ayar | Varsayılan | Üst sınır |
|---|---|---|
| set::topic-length | 360 | 360 |
| set::away-length | 307 | 360 |
| set::quit-length | 307 | 395 |
| set::kick-length | 307 | 360 |
Önerilen uygulama sırası
- Ayarı önce test sunucusuna ekleyin ve yapılandırmayı ./unrealircd configtest ile sınayın.
- Yalnızca turkish-utf8 gibi ihtiyaç duyulan kümeyi açın; Kiril gibi benzer görünen alfabeleri gerekmedikçe eklemeyin.
- Services kullanıyorsanız Türkçe harfli bir nick'i kaydetmeyi deneyin.
- Büyük/küçük harfli Türkçe nick çiftleriyle bağlanarak çakışma davranışını gözlemleyin.
- Çok sunuculu ağlarda değişikliği canlıya almadan önce tüm sunucularda test edin; belgeler sunucular arası farklı ayarların davranışını açıklamadığı için varsayımda bulunmayın.
Türkçe karakterli nick için çoğu ağda gereken ayar tek satırdır. Asıl iş; büyük/küçük harf eşlemesinin ASCII'ye bağlı olduğunu, Services'in UTF-8 nick kaydında sınırlı olduğunu ve benzer görünen karakterlerin taklit için kullanılabileceğini bilerek ayarı bilinçli açmaktır.
Kaynaklar
- UnrealIRCd belgeleri, Nick Character Sets: https://www.unrealircd.org/docs/Nick_Character_Sets
- UnrealIRCd belgeleri, Set block: https://www.unrealircd.org/docs/Set_block
- UnrealIRCd resmî sitesi: https://www.unrealircd.org/
TR Siber Ekibi