Bir bilgisayarın sahip olabileceği iki tane isim vardır. Bunlardan biri host, diğeri netbios adıdır. Öncelikle netbios ve host adı neyi ifade ediyor onu açıklayalım. Host adı, bir network ortamındaki bilgisayarın tam adını, Netbios adı ise o bilgisayarın kendi adını ifade eder. Her ikisinin de kendine özgü isim çözümleme mekanizmaları vardır. Host isimlerini çözmek için DNS, netbios isimlerini çözmek içinse WINS Server adı verilen yapılar kullanılır. İsim çözümlemekten kastedilen verilen isme sahip bilgisayarın IP adresini bulmak işidir. Host ve NetBios isimlerinn genel özellikleri şunlardır.
1- Host isimleri 255 karaktere kadar destekler fakat NetBios isimleri 15 karakter isim ve 1 karakter sonekten oluşur. Verilen NetBios ismi 15 karakterden az ise 15 karaktere tamamlanıncaya kadar sonuna boşluk eklenir.
2- Host ve NetBios ismi aynı olmamalıdır.
3- www.yazilimgrubu.org adresinde "www" Host adını"yazilimgrubu.org" domain adını ifade eder. Her ikisinin beraber kullanılmasına FQDN(Full Qualified Domain Name) denir.
Bilgisayarlar iki şekilde ağa dahil edilebilirler. Bunlardan birincisi WORKGROUP adı verilen sistemdir. Bu sistemde ağa dahil olan bilgisayarlar arasında güven yoktur. Her bilgisayar kendi güvenliğinden sorumludur. Ayrıca her bilgisayarın kendi yerel yönetici hesabı vardır bunlar merkezi olarak yönetilemez ve kullanıcılar birbirlerinin yetkilerini kısıtlayamaz. Küçük çaplı ağlar kullanılır. İkinci yöntem ise DOMAIN yapısıdır ki en çok kullanılan ve en mantıklı yöntem budur. Domain'e yani ağa dahil olan bilgisayarlar arasında güven vardır. Merkezi yönetim mümkündür. Sunucu-İstemci ilişkisi esas alınmıştır. Tam yetkiye sahip bir veya daha fazla yönetici hesabı olabilir. Orta ve büyük çaplı ağlarda rahatlıkla uygulanabilir.
Bazı temel bilgileri verdikten sonra konumuza dönebiliriz. Makalenin başında da bahsettiğimiz gibi konum isim çözümleme şekilleri ve aşamaları. Ağ ortamlarında bilgisayarlar birbirleriyle veri alışverişi yaparlar. Bunu yaparken daha önceki makalelerimizde bahsettiğimiz IP adresleri ve MAC adreslerini kullanırlar. Büyük bir ağ ortamında olduğunuzu düşünün. Bütün bilgisayarların IP adreslerini ezberlemenin imkansız olduğu apaçık ortada. Bir dosyaya veya kağıda da not almanız da bir o kadar imkansız. 3-5 bilgisayarın olduğu bir ağ ortamında olabilir ama 100-200 veya binlerce bilgisayarın olduğu bir ortamda mümkün değildir. Peki erişmek istediğimiz bilgisayarın IP adresini nasıl elde edeceğiz? İşte burada host ve netbios isimlerini kullanıyoruz. Akılda tutulması zor IP adresleri yerine daha akılda kalıcı isimler (192.168.2.5 yerine yazilimcihasan gibi) kullanmak daha kullanışlı ve daha mantıklı bir çözümdür. Fakat bu beraberinde bir de sorun getirmiştir. Bildiğimiz gibi iki bilgisayarın birbiriyle haberleşebilmesi için birbirlerinin IP adreslerini bilmeleri gerekiyor. Yani host veya netbios ismi bilgisayarlar için hiç birşey ifade etmiyor. Bu da bize bu isimleri IP adreslerine çevirecek bir sistemin geliştirilmesini zorunlu kılıyor.
Bunu sadece yerel ağlar için düşünmeyin. Bugün hemen herkesin kullandığı internet içinde aynı şey söz konusudur. Biz tarayıcı adresine www.yazilimgrubu.org yazıyoruz ama bilgisayarın bu siteye bağlanabilmesi için "yazilimgrubu.org" sitesinin IP adresine sahip olması gerekiyor. Her site için bu şart ama internet ortamında milyonlarca site olduğunu düşünürseniz her birine ait IP adresini ezberlemek mümkün değil. sadece onları değil çok sık kullandığınız 9-10 tane sitenin bile IP adreslerini ezberlemeniz çok zor olacaktır. Bir gün girmeseniz belki de unutacaksınız.
Eskiden bu isim çözümleme işi host isimleri için "HOSTS" netbios isimleri için "LMHOSTS" dosyası adı verilen metin dosyalarına yazılarak yapılıyordu. Herkeste aynı dosya vardı ve sık sık güncellenmesi gerekiyordu. Eğer güncel bir dosyaya sahip değilseniz yeni açılan sitelere erişemiyordunuz. İnternetin bugün geldiği noktada milyonlarca sitenin adresini tek bir dosyada tutmak için kaç GB'lık dosya gerektirir kim bilir. Bu sistem hala geçerliliğini korumakla birlikte yerini daha verimli ve hızlı çalışan sistemlere bırakmıştır.
Peki bu isim çözümleme işi nasıl yapılıyor hangi aşamalardan geçiyor. Bu konuyu hem host isimleri hem de netbios isimleri için anlatacağız. Bir host ismi çözümlemesi 7 aşamadan oluşur.
1- Local Host Name
2- HOSTS Dosyası
3- DNS
4- NetBios Cache
5- WINS
6- Broadcast
7- LMHOSTS Dosyası
Bu aşamalardan herhangi birinde isim çözümlemesi başarı ile sonuçlanırsa işlem o noktada bitirilir diğer aşamalara devam edilmez. Örneğin www.yazilimgrubu.org sitesine girmeye çalıştığımızı varsayalım.
1- www.yazilimgrubu.org ismi istek gönderecek bilgisayarın kendi host ismiyle karşılaştırılır. Eğer eşleşmezse diğer aşamaya geçilir.
2- Hosts dosyası içindeki kayıtlarda eşleşme olup olmadığı kontrol edilir. Bu dosya \Windows\System32\drivers\etc klasöründe bulunur. Bu dosyanın uzantısı yoktur. Uzantı verilirse çalışmaz. Not defteriyle açılıp okunabilen veya değiştirilen bu dosyada IP adresi ve isim çifti satır satır yazılır. Örneğin;
94.102.14.166 www.yazilimgrubu.org
gibi. Biz www.yazilimgrubu.org yazdığımızda 94.102.14.166 IP adresine gideceğiz. IP adresi olarak farklı bir adres yazsaydık o adrese gidecektik. Bu dosyada da eşleşme bulunmazsa üçüncü aşamaya geçilir.
3- Tanımlanmış olan DNS sunucuya host ismi isim-IP çözümlemesi için gönderilir. DNS kayıtlarında eşleşme bulunamazsa dördüncü aşamaya geçilir.
4- Bu aşamada daha önce sorgulanan ve erişimi başarıyla sağlanmış netbios isimleri kontrol edilir. Burada da eşleşme bulunmazsa beşinci aşamaya geçilir.
5- Bu aşama da tanımlanan WINS sunucusuna isim-IP çözümlemesi için başvurulur. Yine eşleşme bulunamazsa altıncı aşamaya geçilir.
6- Bu aşamada istek gönderecek bilgisayar içinde erişilmek istenen host ismininde olduğu bir Broadcast paketi yayınlar. Yani ağdaki veya internetteki bütün bilgisayarlara sorar ve cevap bekler. Eğer bir cevap gelmezse yedinci ve son aşamaya geçer ancak şöyle bir durum var. Eğer broadcast neticesinde bir sonuç alınmamışsa verilen host ismi çok büyük ihtimalle yanlıştır veya host ismine sahip bilgisayar kapalıdır.
7- HOSTS dosyası ile aynı klasörde olan ve aynı HOSTS dosyası gibi kullanılan bir dosyadır. Host dosyasından farkı içinde host isimlerini değil de netbios isimlerini barındırıyor olmasıdır. Bu dosya varsayılan olarak .SAM uzantısına sahiptir. Bu dosyayı kullanabilmek için uzantısının silinmesi gerekir.
Host isimlerinin çözümlenmesi sırasında hangi aşamalarıdan geçtiğini kısaca gördük şimdi sıra NetBios isimlerinin nasıl çözümlendiğine. Aynı yöntemleri kullanarak yapılan bu çözümleme işinde sıralama değişiktir. Aynı işi farklı öncelik sıralarına göre yaparlar. O yüzden bu kısımda sadece aşamaların isimlerini yazacağım. NetBios isim çözümlemesi 6 aşamadan oluşur.
1- NetBios Cache
2-WINS
3-BroadCast
4-LMHOSTS Dosyası
5-HOSTS dosyası
6- DNS
Yukarda NetBios isimlerinin 15 karakter isim ve 1 karakter sonekten oluştuğunu söylemiştik. Aşağıdaki resimde örnek bir NetBios isim listesi görünmektedir. Bu ekran görüntüsüne "nbtstat -n" komutuyla ulaşabilirsiniz. Altı kırmızı renkli çizili olan kısımlar soneklerdir. Bu sonek bilgisayarla ilgili bazı bilgileri ifade eder. Bu eklerin anlamları aşağıdaki tabloda gösterilmiştir. Gerçek metne ise http://support.microsoft.com/kb/163409/tr adresinden ulaşabilirsiniz.
Name Number(h) Type Usage
--------------------------------------------------------------------------<computername> 00 U Workstation Service
<computername> 01 U Messenger Service
<\\--__MSBROWSE__> 01 G Master Browser
<computername> 03 U Messenger Service
<computername> 06 U RAS Server Service
<computername> 1F U NetDDE Service
<computername> 20 U File Server Service
<computername> 21 U RAS Client Service
<computername> 22 U Microsoft Exchange Interchange(MSMail Connector)
<computername> 23 U Microsoft Exchange Store
<computername> 24 U Microsoft Exchange Directory<computername> 30 U Modem Sharing Server Service
<computername> 31 U Modem Sharing Client Service
<computername> 43 U SMS Clients Remote Control
<computername> 44 U SMS Administrators Remote Control Tool
<computername> 45 U SMS Clients Remote Chat
<computername> 46 U SMS Clients Remote Transfer<computername> 4C U DEC Pathworks TCPIP service on Windows NT
<computername> 42 U mccaffee anti-virus
<computername> 52 U DEC Pathworks TCPIP service on Windows NT<computername> 87 U Microsoft Exchange MTA
<computername> 6A U Microsoft Exchange IMC<computername> BE U Network Monitor Agent
<computername> BF U Network Monitor Application
<username> 03 U Messenger Service
<domain> 00 G Domain Name
<domain> 1B U Domain Master Browser
<domain> 1C G Domain Controllers
<domain> 1D U Master Browser
<domain> 1E G Browser Service Elections
<INet~Services> 1C G IIS
<IS~computer name> 00 U IIS
<computername> [2B] U Lotus Notes Server Service
IRISMULTICAST [2F] G Lotus Notes
IRISNAMESERVER [33] G Lotus Notes
Forte_$ND800ZA [20] U DCA IrmaLan Gateway Server Service
U ==> UNIQUE
G ==> GROUP
Resim ve tabloyu karşılaştırdığınızda
YG ==> <00> UNIQUE değeri Workstation Service olarak ifade ediliyor. Yani bilgisayarımın NetBios adı.SISTEM ==> <00> GROUP değeri Domain Name olarak ifade ediliyor. Yani bilgisayarımda bir domainin üyesi olduğunu gösteriyor.
SISTEM ==> <1C> GROUP değeri Domain Controllers olarak ifade ediliyor. Yani bilgisayarımının üyesi olduğu ağı yönetebilecek durumda olduğunu gösteriyor.
YG ==> <20> UNIQUE değeri File Server Service olarak ifade ediliyor. Yani bilgisayarımda File Server rolünün yüklü oldıuğunu yani dosya paylaşımı yönetimi araçlarının yüklü olduğunu gösteriyor.
SISTEM ==> <1B> UNIQUE değeri Domain Master Browser olarak ifade ediliyor. Yani bilgisayarımın domain master rolüne sahip olduğunu gösteriyor.





