Forum
PXE Booting Teknolojisi hakkinda
Bu makale PXE booting ve (Baslatma) teknolojilerin hakkinda genel bilgi sunmaktadir.
Provisioning (OS saglama) tekniginin temel sartlarindan birisi donanimsal olarak serverin (sunucunun) network(ag) üzerinden provisioning(OS-Saglamaya) muktedir yapiya sahip olmasidir. Bilgisayarlarin networkler üzerinden boot (Yükleme,baslatma) edilebilmesine olanak saglayan bir sürü yol vardir ve PXE (Preboot execution Environment-Önyüklemeli yürütme/isletme ortami) bunlardan bir tanesidir.PXE acik kaynak endüstriyel bir standarttir ve bir sürü yazilim ve donanim üreticisi tarafindan desteklenmektedir.
PXE, 1998‘de Intel ve Microsoft tarafindan belirlenen daha genis kapsamli PC98 sartlarinin/özelliklerinin (spesifikasyon) bir parcasi olup, “Wired for Management” (WfM-yönetim icin kablolanmis) özelliginin bir parcasidir.
PXE özelligiyle ilgili daha detayli bilgi icin http://www.pix.net/software/pxeboot/archive/pxespec.pdf
PXE Sisteme ait PXE’ye muktedir (PXE özelligine sahip kartlarin) boot aparat olarak atanmasiyla calismaktadir.PXE’ye muktedir client (istemci) network karti cikis icin DHCP servere bir sinyal gönderir, gönderilen broadcast-sinyal DHCP serverden geriye hem Client (istemci) bilgisayara atanmis bir IP adresi ve de beraberinde TFTP servere ait adresle ve Boot (baslatma,yükleme) dosyalarinin TFTP serverdeki lokasyonlarinin oldugu bir sinyalle geri döner.
Asagidaki adimlar sürecin nasil isledigini adim adim göstermektedir.
- Sürücüsü olmayan ya da sürücüsünde boot sector (ön yükleme sektörü) olmayan hedef (target) istemci bilgisayar calistirilir.
- Cliente (istemci bilgisayara) ait NIC, bir DHCP istegini tetikleyerek baslatir.Yani DHCP serverden IP isteminde bulunur.
- DHCP sunucusu gelen istegi algilar ve gerekli standart bilgileri cevap olarak(IP, subnet mask, gateway, DNS vs.) broadcastin geldigi adrese yani istemci bilgisayara ait NIC e geri gönderirir. Ayriyeten DHCP serverin geri gönderdigi sinyalde TFTP sunucusu ve Boot image (pxelinux.0) dosyasina ait bilgiler bulunmaktadir.
- Istemci bilgisayar gelen mesajda gereken TFTP bilgilerini alirsa TFTP sunucu ile kontakta gecip yükleme (boot) image dosyasini edinir.
- TFTP sunucusu Pxelinux.0 boot imaj dosyasini alir ve isletmeye/yürütmeye baslar.
- "Default" yani Varsayilan standart durumda boot imaj dosyasi olan “pxelinux.0” TFTP sunucusunda kendisine gereken pxelinux.cfg boot konfigurasyon dosyasini aramak icin asagidaki metodu kullanir.
Ilk olarak imaj dosyasi olan “prelinux.0” (boot image) istemcinin MAC adresine temsili olarak ayni sekilde atanmis olan kücük harfli MAC adresli “prelinux.cfg” konfigurasyon dosyasini arar.
Örnek verecek olursam, diyelim ki MAC Addressi "88:99:AA:BB:CC:DD" olan istemci NIC ‘i icin temsili MAC olan 88-99:aa:bb:cc:dd icin “01-88-99-aa-bb-cc-dd” dosyasini arar.
Sonrasinda boot dosyasi boot edilen istemci bilgisayara ait IP adresini büyük harfli Hezadecimal sayiya cevirerek gerekli configurasyon dosyasini arar.Bunuda örneklersem mesela istemci DHCP serverden 192.0.2.91 diye bir IP almis olsun boot image bunu hezadesimale cevirerek C000025B adli bir konfigurasyon dosyasi arayisina girer.
Ip adresinin Hezadesimal yani onaltilik sisteme acilimi söyledir 192->(C0) .->(0) 0->(0) .->(0) 2->(2) 91(5B)
Ondalik sistemde ki 192.0.2.91 IP adresinin onaltilik sitemdeki karsiligi C000025B dir. Kolalik icin su adresten faydalandim bende http://www.binaryhexconverter.com/decimal-to-hex-converter
Eger aranan C000025B adli configurasyon dosyasi bulunamazsa hekzadesimal son hanedeki sayi silinir ve tekrar aranir yani bu durumda C000025 adli dosyayi arar, Görüldügü gib son heksadesimal sayi olan "B" silindi. Bu islem bu sekilde dosya bulunana kadar azaltmali olarak, sondan hane silerek araya araya devam eder. Zira arama sonucu basarisiz olursa sistem bu durumda ““default” (varsayilan) olarak belirlenmis dosyayi sorgular.
Konfigurasyon dosyasinin bulma yöntemini daha dogrusu yaklasimini sistem dilinde incelersek (Görülecektir ki, dahasi benim sahsimin algiladigi, bir nevi deneme yanilma-tüme varim gibi);
Boot image dosyasinin adi /tftpboot/pxelinux.0
Istemciye ait MAC adresi 88:99:AA:BB:CC:DD
Client IP addresi de 192.0.2.91 (DHCP Server tarafinda bu MAC adresli istemciye atanan IP) olsun. Bu durumda boot imaj dosyasi sirasiyla su yaklasimlarda bulunarak gereken konfigurasyon dosyasini bulmaya calisacaktir.
/tftpboot/pxelinux.cfg/01-88-99-aa-bb-cc-dd
/tftpboot/pxelinux.cfg/C000025B
/tftpboot/pxelinux.cfg/C000025
/tftpboot/pxelinux.cfg/C00002
/tftpboot/pxelinux.cfg/C0000
/tftpboot/pxelinux.cfg/C000
/tftpboot/pxelinux.cfg/C00
/tftpboot/pxelinux.cfg/C0
/tftpboot/pxelinux.cfg/C
7. Istemci bilgisayar kendine gerekli olan tüm dosyalari, ki bunlar ” kernel and root file system” (cekirdek ve kök dosya sistemi) dosyalaridir, bunlari yükler.
8. Istemci (Target/client) sonunda boot eder (yüklemeye baslar)
Kisca buradada Subnet OS sunum Kullanim durumuna (Subnet Provisioning Usecases) bir örnekle deginmek istiyorum
Subnet of size 256
IP Prefix: 192.168.1.0
Hex value: C0 A8 01 00
Trimmed Hex Value: C0 A8 01
Covers IPs from 192.168.1.0 - 192.168.1.255
Subnet of size 16
IP Prefix: 192.168.1.16
Hex value: C0 A8 01 10
Trimmed Hex Value: C0 A8 01 1
Covers IPs from 192.168.1.16 - 192.168.1.31
Evet sevgili ilgili arkadaslar böylece ceviride olsa ilk makalemi sizlerle paylasmis oldum, bu bir nevi benim bugün Forumda sordugum sorular icinde bir ön bilgilenme tercümesi oldu. Umarim faydali olur birileri icin.
Bu makalenin orjinal ingilizce sürümü asagidaki adreste mevcuttur. Meydana gelmis olabilecek olasi ceviri hatalarim icin simdiden özür dilerim.
Kaynak: http://docs.oracle.com/ cd/E17559_01/em.111/e16599/appdx_pxeboot.htm
Emeğiniz için teşekkürler. İnşallah çevirinin haricinde tamamen size özgün yazılarınızın olacağı makaleride bekliyoruz.