Windows XPde Remote Desktop (Uzaktan Desktop'a Erişmek)

Windows XP Professional yüklü bir bilgisayarın masaüstüne ağ üzerinden, internet'ten veya direkt modem bağlantısı ile erişebilir ve sanki o bilgisayarın başında oturuyormuşçasına kontrol edebilirsiniz. Bunun XP'de nasıl yapıldığına geçmeden önce isterseniz sistemin nasıl çalıştığına ve böyle bir şey'e neden ihtiyaç olabileceğine bir göz atalım. 

Uzak mesafeli bağlantılardaki hız problemi ve çözüm yöntemleri
A bilgisayarı üzerinde bir program var, B bilgisayarındaki kullanıcı bu programı kullanmak istiyor. Eğer bu iki bilgisayar aynı yerel ağ üzerinde ise problem yok, bildiğimiz yöntemlerle B, A'ya bağlanıp bu programı çalıştırabilir. Peki bu iki bilgisayar aynı yerel ağ üzerinde değil, aynı binada, aynı şehirde hatta aynı ülke veya kıta üzerinde değilse(kaç yıl sonra bu cümleye gezegen kelimesini de ekleyeceğiz sizce??) bu iş nasıl olur?



Hemen direkt modemle bağlanırlar veya internet üzerinden bağlanırlar dediğinizi duyar gibi oluyorum. Ancak uzak mesafeli bağlantıların yerel ağlara göre en büyük farkı ve dezavantajı, bağlantı hızlarındaki büyük faklılıktır. Yerel ağ'da saniyede 10.000.000 bit (10MBs) veri aktarımı mümkünken, modemle yapılan bağlantıda bu hız 56.000 bit'e düşüyor.



Eğer kullanılacak program, yüksek miktarda veri aktarımı gerektiren bir programsa, yerel ağ üzerinden kullanırken 1-2 saniyede açılan program penceresi, uzak bağlantıda belkide 10-20 dakika sürecektir.



Şöyle bir örnek verelim, elimizde adres defteri ya da ona benzer salak bir veritabanı programı olsun. Bu program kabaca iki modülden oluşuyor. Birincisi program kısmı, yani çalıştırdığımız adresdefteri.exe dosyası, bu dosyanın 3 Mega Byte olduğunu varsayalım. İkinci modül ise verilerin tutulduğu, veri.mdb isimli bir dosya, bu dosya da 10 Mega Byte olsun.



Program A bilgisayarı üzerinde yüklü, B bilgisayarı yerel ağdan, A'ya erişiyor, B bilgisayarı üzerinde çalışan kullanıcı, adresdefteri.exe üzerine tıkladığı anda, önce bu 3 MB'lık exe dosya ağ üzerinde B'nin belleğine aktarılıyor ve sonra program çalışıyor. Yerel ağ'dan bahsettiğimiz için 3 MB'lık dosya 3-5 saniyede aktarılıyor ve kullanıcı kısa bir beklemeden sonra program ekranını görüyor. Daha sonra program, yine ağ üzerinden veri.mdb dosyasını açıyor(burda tüm dosyanın A'dan B'ye aktarılması gerekmiyor) ve kullanıcı kayıtlar arasında dolaştıkça veri.mdb içideki veri gerektikçe B'ye gidiyor.



Örneğin bu adres defterinde 50 bin kişi kayıtlı ise, B üzerindeki kullanıcı "bana Hulusi Arman'ın kaydını bul" komutunu verdiğinde, program tüm kayıtları inceleyip bu kaydı bulmaya çalışıyor.



Her ne kadar veri.mdb'nin tamamının B'ye aktarımı gerekmese de, ilk başta exe'nin aktarımı, sonrasında veri dosyasının açılma işlemi büyük bir veri aktarımını gerektiriyor. Hele ki çeşitli sorgulamalar yapıldığında, tüm veri dosyasının aktarımı veya server üzerindeki koca dosyanın taranması gerekebiliyor. Ve unutmayın bir çok program bu örnektekinden daha karmaşık yapıya sahiptir, birden fazla veri dosyası kullanır. Yerel ağ'da sıkıntı yaratmayan bu işleyiş, uzak mesafeli bağlantılarda imkansız hale geliyor.



Bu probleme karşı geliştirilen bir kaç çözüm var. Bunlardan birincisi, şu anki konumuzla alakalı değil, ama kısaca değinelim. Client-Server programlar diye adlandırılan yapıdan bahsediyorum.



Buradaki Client-Server kelimelerini hiç kafanıza takmayın, sistem şöyle işliyor: Yukarıdaki örnekte, exe dosyamız sabit bir dosya. Yani bu dosya hep aynı kalıyor, hiç değişmiyor. Eğer bu program uzak mesafeli bağlantıyla kullanılacaksa, bir defalık bu exe dosyasını uzaktaki kullanıcıya ulaştırırız. Veri dosyasına gelince, işin inceliği de o noktada. Server tarafında, yani verinin tutulduğu yerde, artık tek bir veri dosyası söz konusu değil. Onun yerine bir veri tabanı yönetim sistemi -DBMS(data base management system)- çalışıyor. Bu piyasada isim yapmış bir kaç programa örnek olarak ORACLE, MS SQL Server verilebilir.


Kullanıcı bir kayda ulaşmak veya birden fazla kaydı içeren bir sorgulama yapmak istediğinde server'daki tek bir dosyanın içinde bunu kendi bulmaya çalışmaktansa, server'a yapılacak işlemi belirten kısa bir kod yolluyor. Az önceki örnek için (select * where ad="hulusi" soyad="arman") gibi çok kısa bir kodu server'a yollaması yeterli oluyor. Server kendi üzerindeki data'dan bu kritere uyan kayıtları bulup, sadece bu bulunan kayıtları client'a, yani uzaktaki kullanıcıya yolluyor. Böylece mümkün olan en az veri aktarımı ile işlem gerçekleşmiş oluyor.




Peki elimizdeki program client-server yapıda bir program değilse ne olacak? İşte o zaman karşımıza terminal emülasyonu programlar çıkıyor.




Soldaki bilgisayar uzaktan erişen bilgisayarı, sağdaki ise programı üzerinde barındıran bilgisayarı temsil ediyor.

Uzaktan bağlanan bilgisayar, karşı tarafın ekran görüntüsünü alıyor, kendi klavye ve mouse hareketlerini karşı tarafa yolluyor. Böylece çalıştırılan program hiçbir yere gitmiyor, kendi üzerinde bulunduğu bilgisayarda çalışıyor, ama ekran görüntüsü uzaktaki kullanıcıya gidiyor. Böylece kullanılan program ne kadar büyük veri aktarımı gerektirirse gerektirsin, farketmiyor.

XP'nin uzaktan bağlantı özelliği ile yapılabilecek bir kaç örnek uygulama
Örnek 1 Gün boyunca şirketin muhasebe programında çalıştınız. Akşam oldu evinize gitmeniz gerekiyor. XP yüklü bilgisayarınızı açık bırakın. Eve gidince, evdeki XP yüklü bilgisayarınızla, iş yerindeki bilgisayara modem ile bağlanın. XP uzaktan bağlantı (Remote Desktop Access) özelliği sayesinde, artık evinizdeki bilgisayarda, iş yerindeki bilgisayarın ekran görüntüsü var. Klavye ve mouse ile verdiğiniz komutlar ise, iş yerindeki bilgisayarda yerine getiriliyor. İstediğiniz gibi çalışabilirsiniz. Dikkat ederseniz, iş yerinde kurulu sistem, programın özelliği vs. hiçbirşey bizi ilgilendirmiyor. Eğer iş yerindeki bilgisayarda bir program çalışıyorsa, siz evden de onu kullanabiliyorsunuz.



Örnek 2 Bilgisayarınızda bir problem var, şirketinizdeki veya sistem destek aldığınız yerdeki teknisyenden rica ediyorsunuz, aynı yöntemle bilgisayarınıza bağlanıyor ve sanki gelip sizin koltuğunuza oturmuş gibi bilgisayarınızı kullanıyor ve problemi çözüyor.



Unutmayın Remote Desktop bağlantıları hem yerel ağ üzerinden hem de internet üzerinden yapılabiliyor.

Remote Desktop Access'in Windows XP Pro üzerinde kurulumu

Control-Panel>System Veya My Computer üzerine sağ tık>Properties

tab : Remote

Üstte Remote Assistance seçeneğini görüyoruz. Bu hem Home hemd Pro versiyonunda mevcut.

Bizim ilgilendiğimiz Remote Desktop ise sadece Pro versiyonunda bulunuyor.

İlk başta bu özellik kapalı durumda, Administrator yetkisinde bir kullanıcı ile login olmuşsak Allow users to connect remotely to this computer seçeneğinin yanına bir tik koyalım.

Bu uyarı penceresinde iki önemli bilgi var;

Remote desktop bağlantısı yaparken elbette bu bilgisayar üzerinde tanımlı bir kullanıcı adı kullanılacak, bu kullanıcının muhakkak şifresi olmalı
Eğer internet veya WAN üzerinden bağlanılacaksa, ve ağ'da firewall varsa(dial-up bağlantının firewall'ı mesela) Remote desktop'un kullandığı port'lar açık olmalı


Şimdi de bu bilgisayara uzaktan bağlanacak kullanıcıları seçmemiz gerekiyor.

Select Remote Users

Administrator yetkisindeki tüm kullanıcılar bu listede olmasalar bile bağlanabiliyorlar. Administrator olmadığı halde bağlanacak bir kullanıcı varsa Add ile ekleyin

Bağlanacak sistemin kurulumu
Bir XP Pro bilgisayarına Remote Desktop ile bağlanmak için illaki XP Pro kullanmanız gerekmiyor. Windows95, 98, ME, NT4, 2000 ile de bağlanabilirsiniz. Ancak bu versiyonlarda Remote desktop client programını yüklemeniz gerekiyor. Windows XP Home ve Windows XP Pro varsa, Remote desktop client zaten yüklü durumdadır.

Şimdi Windows95, 98, ME, NT4, 2000 için bu Remote desktop client'i nerden ve nasıl yükleyeceğimize bakalım.

Remote desktop client'ı yüklemek istediğiniz bilgisayara (W9x, me, 2000) XP kurulum CD'sini takın.

CD otomatik çalışacaktır. Açılan menüden Perform additional tasks üzerine tıklayın.

Set up Remote Desktop Connection

Kurulumu devam ettirin ve tamamlayın

Şimdi Start>Accessories>Communications altında Remote Desktop Connection çıkacaktır. Bizde tıklayalım.



Bağlanmak istediğiniz Windows XP Pro'nun IP adresini girin.

Options >> ile de bazı ayarlar yapacağız.

Tab : General

Bu ekranda bağlanacağınız XP Pro için kullanıcı adı ve şifreyi girebilirsiniz. Girmezseniz, bağlanırken soracaktır.

Bu bağlantı ayarlarını Save As.. ile kaydedip sonra tekrar kullanmanız da münkün.

tab : Display

Eğe yerel ağ üzerinden bağlanıyorsanız bu ayarlar aynı kalabilir, ama modem bağlantısında, çözünürlüğü ve renk derinliğini düşürmek performansı arttırır.


tab : Local Resources

Remote computer sound Burada da bağlanılan bilgisayardaki sesli uyarıların aktarımını ayarlıyoruz.

Local devices Bağlantığınız bilgisayarın disk, yazıcı ve seri portuna da bağlanılıp bağlanılmayacağı.


tab : Experience

Bağlantı şeklinizi seçin.

Ayrıca Wallpaper, animation gibi öğeler seçilmemiş olmalı.
Daha Sonra Connect Bağlan Diyoruz..


Bu uyarı ekranında bağlandığınız bilgisayarın disk ve seri portlarına erişim sağlanabileceğini söylüyor.


Eğer kullanıcı adı ve şifre önceki ekranda girilmediyse şimdi girelim.




Uyarı

Bağlantı kurulduğu anda, bağlanılan bilgisayar kullanıma kapanır.

Bağlantı kurulunca, bir pencere içinde bağlandığımız sistemin masaüstünü görmeye ve kullanmaya başlıyoruz

My Computer'a girersek, önce o bilgisayarın(bağlanılan) disk, cd-rom'unu görüyoruz. Bunların altında da bağlanan -yeni bizim şu anda kullanmakta olduğumuz- bilgisayarın disk sürücüleri görünüyor (A, B, C, D, E on Helmig).

Not: Evet, hem bağlanan, hemde bağlanılan bilgisayarın diskleri burada görünüyor. Ama unutmayın bu diskler arasında yapılacak bir dosya kopyalama işlemi, aradaki bağlantının hızıyla sınırlı olacaktır.

İşimiz bitince, Start>Disconnect ile bağlantıyı kesebilirsiniz.




Saygılar..

Bilgisayarı Klavye veya Mouse'dan Açmak

Bilgisayarı çalıştırmak için kullanılan en yaygın yöntem power düğmesine basmaktır.
Ancak bu olay size zor geliyor ya da bilgisayarınızı çalıştırmak için farklı yöntemler arıyorsanız işte size bir kaç yöntem...
Bu yöntemlerle bilgisayarınızı Mouse sağ tuşu ya da klavyeden girilen bir parola ile çalıştırmanız mümkün.
Bütün bu ayarlar için önce BIOS 'a girmemiz gerekecektir.
Bunun için bilgisayarınız açılırken DELETE tuşuna basmanız yeterli olacaktır.
BIOS da 'INTEGRATED PERIPHERALS' bölümüne girin ve 'Power On Function' ayarını bulun.
Burada genel olarak 'Button Only' seçeneği seçilidir.
Bu kısmı 'Mouse Right' yapmanız halinde artık bilgisayarınız Mouse sağ tıklamasıyla açılacaktır.
Bir diğer alternatif ise bu bölümü 'Password' olarak ayarlarsanız 'KB Power On Password" kısmında belirttiğiniz herhangi beş karakterlik bir parola ile makinenizi açabilirsiniz.
Bütün bu yöntemler size saçma geliyor, "Ben power tuşuma basarım makinemi açarım" diyorsanız söyleyecek bir söz yok! Ama bir düşünün; tek bir tıklama ile bilgisayarınızın çalışmasını istemez miydiniz?



NOT:alıntıdır


bu başlığı açmamın sebebi geçenlerde benim power düğmesi bozulmuştu ve baya kafayı yemiştim böyle bi sorun yaşayan arkadaşlar için değişik bi alternatif olabilir diye düşündüm

test sonuçları

Boardun kullandığı Bıos : Phoenix - AwardBIOS

Bıos'a girildiğinde 'INTEGRATED PERIPHERALS' bölümünde değil

Power Management Setup ana başlığı altındaPower On Function bölümünde aşağıdaki tercihler çıkmaktadır

- Password
seçerseniz, hemen alt kısımda KB Power On Password ENTER aktifleşiyor. burada Türkçe karakter kullanmayınız.

- Hot Key
seçerseniz, Hot Key Power On aktifleşiyor ve karşısında Ctrl-F1 CtrlF12 arası tercihler var.

- Mouse Left
- Mouse Right
seçerseniz, en altta Restore on AC Power Loss bölümünü ON yapınız.

- Any Key

- Button Only
bu tercih, düğmeden açma için kullanılan ve tanımlı olan tercih.

- Keyboard 98

ve sonuç , klavyeye uyan yazdığımda PC açılıyor.

Resimli Windows 2003 üzerinde SMTP Mail Server Kurulumu

Windows 2003 ile bir çok servisin kurulumu çok daha basit oldu. Makalede adım adım bir kaç ufak ipucu ile Windows 2003 Server üzerinde SMTP Mail Server kurulumunu anlatacağız. (Muhtemelen Windows XP Professional işletim sistemi üzerinde de bu yollar izlenerek benzer bir mail sunucuya sahip olabilirsiniz)

Neden bir mail server gerekli ?
  • <LI class=MsoNormal style="mso-list: l0 level1 lfo1; tab-stops: list 36.0pt">ASP ve ASP.NET ve lokal hostumuzda geliştirdiğimiz projeler için gerçek bir test ortamı sağlar. <LI class=MsoNormal style="mso-list: l0 level1 lfo1; tab-stops: list 36.0pt">Yüklü şekilde e-mail gönderimi yapıyor olabiliriz, dolayısıyla bu tip bir işlemde gönderimleri kendi bilgisayarımız üzerinden yapmamız bize ciddi bir hız kazancı sağlayacaktır. <LI class=MsoNormal style="mso-list: l0 level1 lfo1; tab-stops: list 36.0pt">Kişisel olarak gönderdiğimiz e-maillarımızı lokalhostumuzdan çıkararak hem daha hızlı gönderebiliriz hemde daha az bilgisayar üzerinden geçirerek daha az takipçiden emaillarımızı uzak tutmuş oluruz. (Bu konuda daha fazla bilgi için sniffer, sniffing ve PGP konularında araştırma yapabilirsiniz)
  • Sadece eğlence ve test için...

1. Adım – SMTP Serverımızı Kuralım

Eğer zaten bilgisayarınızda SMTP Server Component’ ı kurulysa bu adımı geçebilirsiniz.

“Control Panel > Add/Remove Programs > Add/Remove Windows Components” ı açın.

“Application Server > Internet Information Server (IIS) > SMTP Service” ü ekleyin ve kurulumu tamamlayın.

. Adım – SMTP Serverımızı çalıştıralım
“Control Panel > Administrative Tools > Internet Information Services Manager” ı çalıştırın.

Management Console’ un sol kısmında Default SMTP Server’ ı görüyor olmalısınız. Üzerine bir defa tıklayın ve yukarıdaki “Start / Stop” özellikllerinden “Start” edilmiş olduğundan emin olun.

3. Adım – SMTP Mail Server Ayarları

“Default SMTP Virtual Server” üzerine sağ tuş ile tıklayıp “Properties” i seçin.

“General” tabındaki alt kısımda “Enable Logging” i seçerek işlemlerin loglanmasını sağlayabilirsiniz.



Loglama özelliklerinde “Log File Directory” göreceksiniz. Bu dizini eğer varsa sistemin çalıştığı değilde daha farklı bir Fiziksel harddisk yada partition üzerinde belirtin. Bu sayede özellikle yüklü işlemlerde daha fazla performans kazanacaksınız.


Bu loglama prosedürü özellikle web serverlarda ve işletim sistemlerinde de bu şekildedir. Her tip loglama işlemini sistemin çalıştığı partitionda değil farklı bir partitionda tutmak çok önemlidir. Hem performans hem de olası log şişmelerinden oluşacak hatalar çalışan sisteme daha az yansıyacaktır. Bu arada eğer çok yüklü e-mail trafiği oluşturacaksanız bu opsiyonu açmamanız tavsiye edilir.
4. Adım – E-mail Client Ayarları ve Test

Evet şimdi Mail Serverımız hazır olmalı. Test etmek için Outlook veya benzeri bir POP3 mail programı kullanabiliriz. E-mail programınızı açın ve bir E-mail hesabınızın giden mail “Outgoing Mail” SMTP adresine “localhost” u girin. (127.0.0.1 yada bilgisayarınızın DNS adını kullanabilirsiniz önemli olan resolve edilen sonucun IP adresinize ulaşmasıdır).


Şimdi ayar yaptığınız e-mail hesabından bir mail göndermeye çalışarak mail server’ı test edebilirsiniz. Sorunsuz bir şekilde e-maillarınızın yerine ulaşması gerekiyor. Tabii ki internete bağlı olmalısınız.



Ek olarak bu süreç içerisinde firewall’unuz sizi uyarabilir IIS uygulamasına mail atmak için ve server hakları için izin vermelisiniz.
5. Adım – Biraz ekstra güvenlik

Eğer e-mail sunucumuzu bu şekilde bırakırsak bir çok spamci bizi yakalayabilir ve mail serverımızı kötü amaçlarına alet edebilirler. Bunu engellemek için e-mail serverımıza yeni bir hesap açacağız ve gönderilen maillar içinde kullanıcı adı ve şifre isteyeceğiz.



Eğer mail server sadece lokal bilgisayardan kullanılacaksa ve uzaktan bağlanılmayacaksa basit şekilde sadece lokal IP adresine izin verebiliriz.



“SMTP Virtual Server” özelliklerine girin (sağ tuş > Properties), “Access” tabına gelin “Connection” a tıklayın.

Burada yapılacak bağlantılar için kabul edilen ve edilmeyen IP / IP aralıkları belirleyebiliriz.
  • <LI class=MsoNormal style="mso-list: l2 level1 lfo3; tab-stops: list 36.0pt">“Only List Below” u seçin <LI class=MsoNormal style="mso-list: l2 level1 lfo3; tab-stops: list 36.0pt">“Add” butonuna tıklayın
  • “IP” kısmında “127.0.0.1” nolu IP’ yi girin.


“Relay” tabı içinde aynı işlemleri yapınız.



Artık sadece localhost üzerinden yani sadece sizin bilgisayarınızda e-mail atılması mümkün. Bu ekranda daha fazla vakit harcayarak kendinize uygun daha gelişmiş çözümler bulabilirsiniz.
6. Adım – Ama Uzaktan da Bağlanalım

Eğer mail sunucunuzu başka bir bilgisayar üzerinden de kullanmak isterseniz ve gene de bir güvenlik isterseniz bunu da yapabiliriz. Mesela ofisinize basit bir mail sunucu kurabilir ve tüm ofis içerisindeki mail gönderme işlemlerini bu sunucu üzerinden gerçekleştirebilirsiniz.

  • <LI class=MsoNormal style="mso-list: l1 level1 lfo4; tab-stops: list 36.0pt">“SMTP Virtual Mail Server” özeliliklerini açın <LI class=MsoNormal style="mso-list: l1 level1 lfo4; tab-stops: list 36.0pt">“Access” tabındaki , “Authentication” ı açın <LI class=MsoNormal style="mso-list: l1 level1 lfo4; tab-stops: list 36.0pt">“Anonymous Access” ı kaldırın, “Basic Authentication” u aktif edin
  • Pencereleri onaylayıp çıkın

Unutmayın ki bu tip bir işlemden sonra lokal bilgisayar harici bilgisayarların uzaktan size bağlanabilmesi için “ Connection” ve “Relay” daki ayarlarda bu kullanıcılara / IPlere izin vermelisiniz yada tüm trafiğe izin verebilirsiniz.



Şimdi E-mail clientınızda “Outgoing Server” özelliklerine girin ve kullanıcı adı ve şifre tanımlayın. Kullanıcı adı ve şifre sistemdeki herhangi bir geçerli kullanıcıya ait olmalıdır. (My Computer > Sağ Tuş > Manage > Local Users and Groups > Users)



Artık dışarıdan bilgisayarlarda sizin bilgisyarınıza login olarak e-mail gönderebilir.



Not 1 : İşlemleriniz ve testleriniz bittikten sonra eğer ki sürekli olarak bu sunucuyu kullanmayacaksanız IIS üzerinden SMTP Virtual Server’ ı durdurmanız faydalıdır. Gereksiz yere sistemde bir servis çalıştırmamız gerek yok.



Not 2 : Kendi mail sunucunuzu açmak ve dışarıdan bir mail almak biraz daha komplike bir konudur, bunu da umarım bir zaman DNS, Kişisel bir Web Hosting, FTP Server ve Virtual Domain gibi konularla birlikte yazabiliriz.

Ve işte Yazının Sonu..
Uzun bir Anlatım Oldu ama beklenen ve Faydalınılacak bir anlatım olduğu kanısındayım.
Not: Buradaki Anlatım Kesinlikle BENDEN! İzin Alınmadan Başka Bir Sitede Yayımlanamaz!

Windows2000 Datacenter Server

Windows 2000 Server ve Advanced Server içindeki özelliklere ilave olarak her makine başına daha fazla CPU ve daha fazla hafızayı desteklemesi bir ek özellik olarak söylenebilir. DataCenter Server’ın kullanılabileceği yerler ise çok fonksiyonlu server işlemleri yapan ve yüksek ölçeklenme ihtiyacı duyan sistemlerdir. Bunlara ek olarak çok büyük veritabanlarında da bu sistemin kullanılması düşünülmektedir. Data Center Server Win2K Advanced Server’in sınırlarını 8GB’tan 64GB RAM’a, 8 işlemciden 32 işlemciye çıkartmiştır. 64GB bellek işleyebildiği gibi 32 işlemcili SMP (Symetric Multi-Processing – Simetrik Çoklu İşleme) desteğini de yanında getirmektedir. Microsoft, bu işletim sistemini ise hala çıkartmış değil. (PC MAGAZIN-Abdulden)
Ölçeklenebilirlik
Büyük firmalarda bir çok işlem aynı anda yürütülmekte ve çoğu zaman tek bir işlemcinin bütün bu uygulamaların altından kalkması mümkün olmamaktadır. Onu için birden çok işlemcisi bulunan donanımlarda çalışabilen işletim sistemleri, oldukça iyi bir performans sağlamaktadır. (Ders Notları).
Birden çok işlemcinin kullanıldığı bilgisayara simetrik(sysmetric) bilgisayar denir. Simetrik işleme olanağı, iki işlemcinin uygulama yazılımı ve işletim sistemi tarafından aynı anda kullanılmasını sağlar. Diğer bir değişle iki işlemci ortak olarak kullanılır. Asimetrik çok işlemlilik ise işlemcilerden birisinin işletim sistemini, diğerinin uygulama tarafından kullanılmasını sağlar.(Çubukçu:1997,97)
Ölçeklenebilirlik uygulamalarına örnek verecek olursak, Unisys firması, en düşük maliyetli hava yolu bilet ücretlerini hesaplayan 32 CPU'lu bir sistemi geliştirdi. Unisys tarafından geliştirilen sistem günde 8.5 milyar uçuş dilimini analiz edecek ve 200.000 terminalden internet erişimi sağlayabilecek kapasitede bir sistemdir. Firmaya göre, sistemin CPU'ları 16'dan 32'ye çıktığında, hesaplama uygulaması, hemen hemen lineer bir ölçeklenebilirliğe erişiyor. Bu doğrusal gelişme, sunucuyu yükseltme (upgrade) ve sunucu ekleme fikrini karşı karşıya getiren eski tartışmayı yeniden canlandırıyor. Örneğin, size göre bir uygulama 16 CPU'luk tek bir sistemle mi, yoksa dört adet 4 CPU'luk sunucu kümesiyle (cluster) mi daha iyi durumda olur? Bu sorunun anahtarı yükü dengelemektir. Sisteminiz bir uygulamayı kümenin birden fazla düğümü arasında kolayca dengeleyebiliyor mu? Yanıt evet ise, yük dengelemeyi kümeleme ya da genişleterek ölçekleme yoluyla gerçekleştirebilirsiniz. Yanıt hayır ise, büyük SMP (Symetric Multi - Processing) sistemleri kullanmak (sekizden fazla CPU içeren sistemler) ya da yükselterek ölçekleme yolu tek alternatifinizdir.
Her iki yaklaşımın artılarını ve eksilerini ortaya koyacak olursak, büyük SMP sistemlerini savunanlar, 32 CPU'lu tek bir sistemin bakımının ve yönetiminin sekiz adet 4 CPU'lu sistemde yük dengelemekten daha kolay olduğunu söyleyeceklerdir. Kümelemeyi savunanlar ise, en yüksek performansın elde edilmesinin ve hatadan korunmanın sekiz adet 4 CPU'lu sunucuyla daha kolay olduğunu söyleyeceklerdir. Kümeleme yöntemi taraftarlarının sorunu, sekiz düğüm kümesinin yönetimini, tek bir sunucuyu yönetmek kadar kolaylaştırmaktır ve Microsoft, bu soruna çözüm olarak Application Center Server (AppCenter) ürününü sunmaktadır. SMP taraftarlarının sorunu ise, uygulamaların 32 CPU'ya iyi bir şekilde ölçeklenmesi ve yeterince hata toleransı sağlanmasıdır.
Başka bir örnek olarak Microsoft SQL Server ele alınabilir. SQL Server 7.0, yük dengeleme işlemlerini kolay gerçekleştiremez, bu nedenle uygulamayı ölçeklemenin tek yolu uygulamayı daha çok sayıda CPU içeren bir sisteme taşımaktır. Zaman içinde, SQL Server yük dengeleme özellikleri ekleyecektir, ancak sistem geliştirme uzmanları için bu özellik sorunsuz bir düzeye gelinceye kadar, SQL Server'ı ölçeklemenin en iyi yolu büyük SMP sistemlerini kullanmaktır.
Her iki ölçekleme seçeneğini de sağlayan Microsoft, yükselterek ölçeklemeyle genişleterek ölçekleme arasında seçim yapmaktan kaçınmaya çalışmıştır. Microsoft'un uygulama geliştirme stratejisi, fiyata göre en iyi performansı sağlamak için yük dengelemeyi kullanmaktadır. Bu yaklaşım, şirketleri daha küçük sistemler satın almaya ve uygulamaları gerektiği gibi ölçekleyebilmek üzere sunucu eklemeye yöneltmektedir. Bu genişleterek ölçekleme stratejisi, sistem hatalarına karşı en iyi esnekliği ve korumayı sağlar.

Windows 2000 Veri Güvenliğinin Sağlanması -2 / 3

Windows 2000’de Fault-Tolerant Volume’ların Oluşturulması

Fault-Tolerant volume’lar, Disk Management aracı kullnılarak oluşturulabilir. Raid-1 veya Raid-5 volume oluşturmaya başlamadan önce kullanacağınız disklerinizin depolama tipini “basic”ten “dynamic”e upgrade etmeniz gerekir. Bunun için: My Computer’a sağ tıklayıp manage seçin. Computer Management açılacaktır. Disk Mangement bölümüne gelin. Upgrade edeceğiniz disk’e sağ tıklayıp “upgrade to dynamic disk” seçin. Diskiniz upgrade edildikten sonra şekil-4’te görüldüğü gibi bu disk üzerinde ayrılmamış(unallocated) alana sağ tıklayın ve “create volume” seçerek create volume sihirbazını çalıştırın.
 
Raid-1 için Mirrored Volume, Raid-5 için Raid-5 Volume tipini seçin(Bkz şekil-5).
 
Sırasıyla, ,fault-tolerant volume’da kullanılacak diskleri belirtin volume’da kullanılmak üzere belirttiğiniz disklerin volume’da ne kadarlık kısmının kullanılacağını belirtin, oluşturulmakta olan fault-tolerant volume için bir sürücü harfi belirleyin ve son olarak bu volume’u formatlayarak sihirbazı kapatın.
Şimdi disklerden biri bozulduğunda verilerimizi nasıl kurtaracağımızı Raid-1 ve Raid-5 için ayrı ayrı inceleyelim.
 

Raid-1 Volume Disklerinden Biri Bozulduğunda Veri Kurtarma

Mirrored Volume üyelerinden ilkine “mirrored disk” ikincisine “mirroring disk” denir. Eğer ikinci disk bozulursa bir kaç basit adımda sorun giderilebilir.
1-     Bozuk diski bilgisayardan çıkartın.
2-     Disk Management’ta hatalı volume’a sağ tıklayıp “remove mirror” seçin.
3-     Yeni bir fiziksel disk yerleştirin.
4-     Daha önce anlatıldığı şekilde yeni diskte yeni volume yaratın.
Eğer ilk disk bozulursa ve boot partition da burada ise  yapılacak işler biraz daha komplikedir. Sistem bu şekilde açılamayacağından daha önce yarattığımız boot disketi kullanacağız. Boot.ini dosyasını notepad veya bunun gibi bir metin editöründe açın. Gerekli değişiklikleri sistem partition mirroring disk(2. disk) olacak şekilde yapın ve kaydedin. Bir örnek verelim. Diyelim ki ilk mirror(aynı zamanda boot partition) 1. diskin 1. partitionunda, ikinci mirror’da 2. diskin 2. partitionunda yer alsın. Bu durum da 1. diskimiz zarar gördüğünde boot.ini dosyasını notepad ile açar;
 
………………………………………………………………………………………………..
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
……………………………………………………………………………………………….
şeklinde olan boot.ini dosyamızı,
………………………………………………………………………………………………..
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(1)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(1)partition(2)\WINNT="Microsoft Windows 2000 Server" /fastdetect
……………………………………………………………………………………………….
şeklinde modifiye edip, değişiklikleri kaydettikten sonra, modifiye edilmiş boot disketimiz ile sistemimizin yeniden açılabilmesini sağlayabiliriz.

Raid-5 Volume Disklerinden Biri Bozulduğunda Veri Kurtarma

Disklerden bir bozulduğunda yapılacak iki işlem vardır. Bunlardan ilki hiç bir şey yapmamaktır. Fault-tolerance driver ftdisk.sys parity bilgisini kullanarak bozuk diskteki veriyi her seferinde tekrar üretir. Tabi performans düşüklüğüne katlanacaksanız bu yöntemi kullanabilirsiniz. Daha güvenli bir yöntem de şudur: Bozuk diski çıkarıp yenisini takın. Disk Management ı açın. Failed Redundancy altında Volume üzerine sağ tıklayıp Repair Volume seçin. Bozulan diskin yerine kullanabileceğiniz disk adaylarının listelendiği bir dialog box açılır.Buradan istediğiniz diski seçip OK’e basın. Bozulan diskteki veri ve parity bilgileri tekrar üretilir ve yeni diskin üzerine yazılır. Performans normale döner.
Daha iyi performans elde etmek ve günün birinde ikinci diskin de bozulma ihtimalini göz önünde bulundurarak daha sağlıklı olan ikinci yöntem tercih edilmelidir.

Gelişmiş Startup Seçenekleri

Windows 2000, boot problemleri yaşandığında problemin giderilebilmesi için bir çok startup seçeneğiyle gelmiştir. Bunlar; VGA Mode, Safe Mode, Directory Services Restore Mode, Debugging Mode ve Last Known Good Configuration Mode’dur (Bkz. Şekil-7 ).
 
Şimdi bu seçenekleri bir bir inceleyelim.

 

VGA Mode

Bu seçenek seçildiğinde Windows 2000 standard ekran kartını yükler. Ekran ayarlarına yanlış müdahale yapıldığında bu fonksiyon hayat kurtarıcı olabilir. Çok sık karşılaşılan bir durum; Monitor refresh rate, donanım desteklemeyecek kadar yüksek seçildiğinde monitör hiç bir şey göstermez. Açılışta VGA Modunu seçerek standard ekran kartı driverlarının yüklenmesini sağlarız ve ardından refresh rate’ i eski haline getirerek sorunu gidermiş oluruz.

Safe Mode

“Safe Mode” ile boot yapıldığında Windows 2000 sadece temel driver’ları yükler. Sistemde problemli bir donanım bileşeni varsa ve bu problem windows’un başlamasına engel oluyorsa, sistemi bu modda boot ederek bu problemli donanımın driver’ının yüklenmemesini sağlar ve sistem açıldığında problemi giderme şansını elde ederiz.
“Safe Mode with Networking” moduyla boot edildiğinde; Safe modda yüklenen klavye, fare, Standard VGA, HDD controller driver’ları ile birlikte network bileşenlerin driverları da yüklenir.
“Safe Mode with Command Prompt”  modunda ise temel driverlar yüklenir fakat sistem boot ettiğinde sizi, GUI arabirimi yerine komut satırı karşılar.

Directory Services Restore Mode

Windows 2000’le gelen yepyeni bir özelliktir ve sadece Server versiyonunda vardır. Domain Controller’larda Active Directory’nin tekrar kurulabilmesini mümkün kılan bir açılış modudur. 

Debugging Mode

Bu mod da sadece Server versiyonunda bulunur. Debugging yapılması istendiğinde bu mode seçilebilir. Bu modda açılan bilgisayar seri kablo vasıtasıyla başka bir bilgisayara debug bilgisi gönderir. Özellikle yazılım geliştiriciler bu modu kullanır.

Last Known Good Configuration

Bilgisayarı son kapatıldığında kaydedilen registry bilgisi ile açar. Sadece hatalı konfigurasyon durumunda kullanılmalıdır. Sistemde bozuk, kayıp veya uyumsuz driver veya dosyalar bulunduğunda sorunu çözmez.

Boot Logging

Sistem bu modda açıldığında, Windows 2000 boot sırasında yüklenen driver ve servisleri ntbtlog.txt dosyasına raporlar. Start-up probleminin kaynağı, bu mod ile boot edildiğinde ntbtlog.txt dosyası incelenerek bulunabilir.

Windows 2000 Veri Güvenliğinin Sağlanması -3 / 3

RECOVERY CONSOLE

Kullanıcının Windows 2000 yüklü bilgisayarın hard disk’ine erişebilmesini sağlayan bir text-mode komut yorumlayıcısıdır.Recovery Console kullanılarak, hizmetlerin kapatılıp başlatılması, MBR ve boot sector’de bir hata varsa düzeltilmesi mümkündür. 2 şekilde başlatılabilir.
1-     Eğer  bilgisayar hiç açılmıyorsa Windows 2000 setup disketleri veya Windows 2000 CD’si ile başlatılabilir.
2-     Bu programı bilgisayarınıza kurabilir ve gerektiğinde çalıştırabilirsiniz. Kurulduğunda boot menude diğer işletim sistemleri ile birlikte yer alır. 

 Kurulumu

Windows 2000 CD’sini takın.
1-     Upgrade etmek ister misiniz sorusunu hayır diye yanıtlayın.
2-     Komut satırında CD-ROM drive’ ına geçip aşağıdaki komutu yazın:
          \i386\winnt32.exe /cmdcons
Enter’a bastıktan sonra karşınıza çıkan uyarı mesajını evetle yanıtlayarak recovery console kurulumunu başlatın.

Kullanım

Recovery Console’u; hizmetleri durdurup başlatmak, bozuk MBR veya boot sector onarmak, sistem dosyalarını bir disket veya cd’den kopyalamak için kullanabilirsiniz.
1-     Bilgisayarı başlatın ve boot menu’de Windows 2000 Recovery Console’u seçin.
2-     Yönergeleri uyguladıktan sonra karşınıza komut satırı çıkacaktır.
3-     Artık istediğiniz değişiklikleri yapabilirsiniz. Kullanabileceğiniz komutlar hakkında bilgi almak için komut satırında help yazın. 

WINDOWS 2000 BACKUP

Basit fakat en önemli veri kurtarma yöntemidir. Daha önceden bahsedilen veri koruma ve kurtarma teknikleri pratikte her zaman işe yaramaz. Bu nedenle kritik ve hayati verilerin muhakkak yedeklerinin alınması gerekir. Bir bankada 10.000 müşterinin hesaplarının tutulduğu depolama biriminin arızalandığını düşünsenize. Alınan yedeklerin de muhakkak farklı bir ortamda tutulması gerekir. Yedek ile yedeği alınmış birimin yanyana durduğu bir mekan yangın veya sel felaketi ile karşılaştığında yedek almış olmak ne yazık ki bir işe yaramayacaktır.Yedeklerin, verinin kritikliğine göre mümkünse su ve ısı geçirmez özel kasalarda bulundurulmasında fayda vardır. 
Windows Backup çalıştırmak için start>run> ntbackup yazın ve karşınıza şekil-8 deki görüntü gelir.
 

Backup Seçenekleri

Windows 2000, NT 4.0’da da olduğu gibi 5 backup seçeneği ile gelir. Bunlar: Normal, Differential, Incremental, Copy ve Daily Backup.

Normal Backup

Seçtiğiniz bütün dosya ve klasörlerin yedeği alınır. Var olan tüm marker’ları siler.En hızlı geri yüklemeye (Restore) sahip fakat yedeklemede en çok zaman tüketen ve en çok yer işgal eden backup tipidir.

Differential Backup

Normal Backup kullanılarak alınan yedeklerden sonra dosya veya klasörlede yapılan değişikliklerin yedekleri alınır. Her Differential backup alındıktan sonra bir marker konur ve bir sonraki differential backup bu marker’dan sonraki değişiklikleri yedekler. Backup ve Restore işlemleri çok hızlıdır.

Copy Backup

Seçilen tüm dosyaların yedeği alınır. Normal Backup’tan farkı marker’ları silmemesidir.

Incremental Backup

Differential backup’tan farkı marker’ları silmesidir. Böylece aynı dosyaların backup’ları alınmaz.

Daily Backup

Var olan marker’lara dokunmaz, gün içinde değişikliğe uğrayan dosyaların yedeği alınır.

Backup Wizard Kullanarak Yedek Alınması

Eğer hangi dosya ve klasörlerin yedeğini alacağınıza ve hangi backup tipini kullanacağınıza karar verdiyseniz Backup Wizard butonuna basın ve hoşgeldiniz ekranını next diyerek geçin. Şekil-8’de görülen pencere açılacaktır.
 
Size neyi yedeklemek istediğinizi belirtmenizi isteyen 3 seçenek çıkacaktır. Yedeklenecek dosyalarınızı belrileyin ve yedekleme ortamını da belirterek sihirbazı tamamlayın.

Yedeklenen Dosyaların Geri Yüklenmesi

Hangi dosyalarınızın geri yükleneceğine karar verin. Restore Wizardı çalıştırın. Geri yüklenecek  dosyaları seçin. Sihirbazı tamamlayın. Dosyanız geri yüklenmiş olacaktır.

EMERGENCY REPAIR DISK (ERD) OLUŞTURULMASI

Eğer sisteminiz açılmıyor ve safe mode veya recovery console kulanmak ta işe yaramadıysa ERD’yi kullanmayı deneyebilirsiniz. Sisteminiz sağlıklı bir şekilde çalışıyorken bu disketi oluşturmanız şiddetle tavsiye edilir. Bu disketi yaratmak için ilk adım olarak Windows Backup penceresinde (bkz. Şekil-7)  Create an Emergency Repair Disk butonuna tıklayın. Karşınıza şekil-9’daki pencere çıkacak.
 
Sürücüye formatlanmış boş bir disket takın ve eğer registry’nin yedeğinin de alınmasını istiyorsanız onay kutusunu işaretleyip OK tuşuna basın.

EMERGENCY REPAIR DISK (ERD) KULLANIMI

Safe Mode ve Recovery Console ile onarılamayan sistemler için son çare ERD ile onarım yöntemidir. Şimdi oluşturduğumuz bu disketi nasıl kullanacağız ona bakalım.
1-     Bilgisayarınızı Windows 2000 kurulum disketleriyle veya CD’siyle başlatın.
2-     Kurulum aşamasında “Repair” seçeneğini seçin. Size iki onarım seçeneği; Recovery Console ve Emergency Repair Process sunulacak, R tuşuna basarak Emergency Repair Process’i seçin.
3-     Size onarım tipi sorulacak. Bunlardan ilki, kullanıcı müdahalesi gerektiren ve üst düzey kullanıcıların kullanması tavsiye edilen manual repair; diğeri, kullanıcı müdahalesi gerektirmeyen fast repair seçeneğidir. Fast Repair; registry, sistem dosyaları, boot sector ve startup sorunlarını gidemeye çalışır.


4-     Artık onarım işlemi başlamak üzere. Windows 2000 kurulum CD’si ve daha önce oluşturduğunuz ERD elinizin altında bulunsun. Onarım bittikten sonra bilgisayarınızı yeniden başlatın.

Windows 2000 Veri Güvenliğinin Sağlanması -1 / 3



Ağ yöneticilerinin en önemli görevlerinden biri veri güvenliğini sağlamak ve verilerin ilerde olası bir felaketle karşılaşabileceğini öngörerek önceden gereken önlemleri almaktır. Kritik sistem dosyalarının zarar görmesi veya yanlışlıkla silinmesi, HDD’lerin MBR veya boot sector’lerinin zarar görmesi veya fiziksel olarak bozulmaları (sel,yangın vs..) , sistemin açılmamasına neden olacaktır. Bu bölümde de, Windows 2000’in bize sağladığı veri koruma ve kurtarma araçları  “Disk Fault-Tolerance”, “Gelişmiş Startup Seçenekleri”, “Recovery Console” ve “Windows Backup”  anlatılacaktır.

Windows 2000 Boot Disketi Oluşturmak

Windows 2000’le gelen veri koruma ve kurtarma araçlarını kullanmadan önce, bilgisayarın olası açılmama durumuna karşı bilgisayarı çalıştıracak ve işletim sistemini boot ettirecek Windows 2000 boot disketini oluşturmalıyız. Bunun için:
1-     Windows 2000 yüklü bir bilgisayarda boş bir disketi formatlayın.
2-     Bu diskete sistem partisyonundaki “Ntldr”, “ntdetect.com”, “boot.ini” ve eğer SCSI bios veya bios disable edilmemiş SCSI controller kulanıyorsanız “ntbootdd.sys” dosyalarını kopyalayın.

Linux ve NAT - Çıkabilecek Problemler 4 / 4

CIKABILECEK PROBLEMLER
 Tip 1: -W parametresi donusumun yapılacagı interface'i belirtir. Muhtemelen eth0 ve eth1 olarak iki network kartınız olacaktır. eth0 real ip eth1 ise local ip oldugunu varsayarsak siz muhtemelen kural eklerken -W eth0 olarak kullandınız ve local networkten test etmeye calisiyorsunuzdur. Unuttugunuz bir nokta sadece eth0 icin donusum gerceklesecektir. Yani aslinda icerden real ip'sine baglanamıyorsunuz ama dısardan baglanılıyordur. Ve sizde muhtemelen calismadıgını dusunuyorsunuz. ya -W parametresini kullanmayın yada -W eth1 'ide ekleyerek aynı rule'ları tekrar yazın.Ama en mantıklısı -W yi kullanamamaktır. Tavsiye etmiyorum....
 Tip 2: Proxy Arp kullandıgınızdan emin olmalısınız. Bos olan gercek(real) ip yi makinanıza attach etmeniz gerekmektedir. Proxy arp ipaliases'e benzer bir sekilde davranarak o ip'yi makinanıza(firewall) assign eder. ARP kullanmak islerinizi garantiye almaktır.
Tip 3: Route ayarlarınızda eksiklikler vardır. Router'ınıza ve Nat Gateway makinanıza nat icin kullanacaginiz bos olan real(gercek) ip'leri firewall makinanıza yonlendirmelisiniz. Ornegin router  ip: 195.182.123.225 firewall ip: 195.182.123.229 bos ipleriniz: 195.182.123.226 ve 228 cisco router sahibi iseniz ;
telnet 212.55.22.11
ROUTER$ en
PASSWORD
ROUTER# conf  t
ROUTER [confıg] # route add 195.182.123.226 255.255.255.255 195.182.123.229
ROUTER [confıgl] # route add 195.182.123.228 255.255.255.255 195.182.123.229
ROUTER# exit
ROUTER# wr
ROUTER# reload
ReWriting Configuration....#################################
komutlarıyla router'inizin setup'larını da yapmıs olursunuz. Route kurallarır cok onemlidir. Bazen Firewall uzerindede route tanımları yapmanız gerekebilir. Bu hem performans icin hem de calisması icin gerekli olabilir. Performans konusunu test etmeniz sizin icin en saglıklısıdır ... Firewall'a boyle bir durumda ekleyebileceginiz route ayarları soyle olabilir. Eger local 1 server ip: 10.1.1.10 server2 ip:10.1.1.11 server3ip: 10.1.1.12 server4ip:10.1.1.13 olursa;

FIREWALL # route add –host 212.55.22.12  gw 10.1.1.10FIREWALL # route add –host 212.55.22.13  gw 10.1.1.11FIREWALL # route add –host 212.55.22.14  gw 10.1.1.12FIREWALL # route add –host 212.55.22.15  gw 10.1.1.13
gibi bir route tablosu eklemeniz soz konusu olabilir. Bu belirttigim gibi performansınızı etkileyebilecegi gibi problem de cikartabilir veya problemlerinizi cozebilirde.
Tip4: Nat icin kullandıgınız ip adresi firewall'ın real ip adresiyle aynı sub-networkte olmalıdır.
Tip5: Bir ipnatadm kuralı koyduktan sonra calismiyorsa, deneyebileceginiz bir yontemde ARP'tır ki bunu yukardaki orneklerde gorebilirsiniz.

  SONSÖZ
Sanıyorum NAT ile ilgili yeteri kadar bilgi aktardım. Ama unutmayın bukadarlada bitmiyor isin ozu. Buralara gelene kadar bircok TCP/IP kavramından geciyorsunuz. Burada bahsedilenlerden cok daha karmasık yapılar kurmak isteyebilirsiniz. Orumcek agı gibi olabilir hersey. Oturup kagıt uzerinde yukarıda verdigim tabloya benzer bir sema cizip once teorilerinizi kagıt uzerinde pratik de gerceklestirmenizi oneririm. Genede problem yasayanlar icin e-mail adresim 24 saat acik... Yardimci olabildiysem ne mutlu bana...
Iyi calismalar...
  28/09/2000Egemen BAL
ebal@tradesoft.com.tr
IBM Aix v4.3 System Support Specialist

Linux ve NAT - Uygulamalar ve Örnekler 3 / 4

UYGULAMALAR ve ORNEKLER
Gerekenler
Oncelikle bir firewall ve aynı subnet’te bulunan ve kullanılmayan bos real(gercek) iplere ihtiyacınız var. Bir tek real ip uzerinden birkac tane local makinıza server bazında map to map translate yapamazsınız. 2. gerekli sey ise client'larınız tabiki. Hepsi bu. Bundan sonrası inanın cok basit.
IPNATADM ve Paremetreleri

Kullanımı :
ipnatadm -I komut [secenekler] (input NAT)
ipnatadm -O komut [secenekler] (output NAT)
ipnatadm -F (Onceden yaratılmıs tum kurallar siler. Flush.)
ipnatadm -h (yardimci konfigurasyon gorunulenir.)

Komutları:
-i  Yeni bir rule eklemek.(Insert Rule)
-a Varolan bir rule eklemeler yapar (Append Rule)
-d Bir rule siler (Delete Rule)
-l Varolan koyulmus kuralları listeler. (List rules)

Secenekler:
-Y   id numarası
-P   Protokol tcp,udp,icmp veya hepsi
-S   adres[/mask] [port  ....] (Kaynak(source) tarafi icin)
-D   adres[/mask] [port] (Hedef(destination) tarafi icin)
-M  adres[/mask] [port] (Yeni kaynak adresi ve/veya Port)
-N   adres[/mask] [port] (Yeni hedef adresi ve/veya Port)
-V   Network kartının adresi. Bu Hardware adresi anlamına geliyor.
-W  Network kartının ismi. Bu eth0 , eth1 , ppp0 , wan olabilir.
-X   [roro|byte|conn] (Virtual Server kuralı)
-w   Numara agırlıgı (dogrusu hic kullanmadım)
-t     Zamanaşımı(timeout). Belirlediginiz sure icinde paket alısverisi olmazsa istemci ve sunucu arasındaki baglantı kopacaktır.
       Bu paremetreyi kullanmanız performansınızı iyi yonde etkileyecektir. Bir zamanasimi belirlemenizi oneririm.
-b    bidirectional kural. Boylece yeni kaynak ve hedef adresi icin rule tanımlamadan sadece -S ve -M paretmetreleriyle donusum yapılır.
-s    NAT'ı atla(skip nat). Belirli paketleri donusturmeme.
-n    Adres ve portların rasyonel bazda ekran cikislari.
-o    Belirtilen paketler icin kernel logunu kapatır.
-v    ne yaptıgınızı gorme modu(Verbose mode). BUNU HERZAMAN KULLANIN....! Ne yaptıgızı herzaman gorun...


Many to One


Bu klasik bir nat uygulamasıdır. Local agınızdaki butun makinaları masq mantıgına benzer bir sekilde real bir ip uzerinden internette dolasımını saglar. Tum makinaların NAT ile belirttiginiz real ip ile local iplere donusturulmesi saglanır.
ipnatadm –O –i –b –S 212.23.13.0/24 –M 192.168.1.0/24
veya
ipnatadm –I –i –b –D 212.23.13.0/24 –N 192.168.1.0/24

Yukaridaki iki kural 212.23.13.0 Networkundeki tum ipleri(254 ip eder) , local kullanıcılarınız icin ihtiyac duyuldugunda bos olanı kullanarak internet cıkısını saglar. Bu iki kural da birbirnin aynısıdır. Bidirectional (-b) kullanıldıgında hedef(destination) , kaynak(source) , ag(network) kurallarını ayrı ayrı belirtmenize gerek yok. Sadece Source(kaynak) ve –M paremetresini kullanmanız yeterli. Tavsiyem –b paremetresini kullanmanız olucaktır. –b kullanılmadıgı tatirde 2 kural belirtmeniz gerekir buda –M –N –S –D yapılarıdır. Bunu tek bir real ip lede gerceklestirebilirsniz. Yani sınırlı sayıda ipniz varsa tum client'larınızı tek bir real ip uzerinden cikartabilirsiniz asagidaki kuralla ;

ipnatadm -O -i -b -S 212.23.13.44/32 -M 192.168.1.0/24

Boylelikle tum clientler internette 212.23.13.44 olarak gozukeceklerdir. Burda masquerading'i tercih etmemenizin iyi tarafını bir kez daha soylemek istiyorum. Firewall'ınız isin icine girmiyor. Baskalarının firewall'dan mumkun oldugu kadar az haberdar olması gerekir. Masquerading'i biraz daha performans sagladıgı icin terchi edebilirsiniz ama inanın bu fark buyutulecek kadar degil. Zaten ilk baglantı sırasında bir performans dusuklugu hissedeceksiniz.
Network Address Port Translation (NAPT)
Paketler sadece belirlenen portlar icin donusturulur. Boylelikle bir nevi firewall korumasıda yapmis olursunuz. En basit ve en etkileyicisi de bu. Kullanmanız gerekende budur bence cunki belirli portları actıgınız icin ipchains’le port kısıtlamaları yapmak zorunda kalmazsınız. Server’ınızın ihtiyacı olan portları acmanız en saglıklı ve akıllıca bir karar olur. Kullanımı ise ;
ipnatadm –v –O –i –D 192.168.1.10/32  80  –N 212.23.23.1/32 8888
ipnatadm –v –O –i –S 212.23.23.1/32 8888  –N 192.168.1.10/32 80
                                    veya
ipnatadm –v –O –i –D 192.168.1.10/32  80  –N 212.23.23.1/32 80
ipnatadm –v –O –i –S 212.23.23.1/32 80  –N 192.168.1.10/32 80
Komutları ile local makinanın 80. portunu real ip'nin 8888. portuna translate etmis oldugumu gosterir. Boylelikle sanki o real ip'nin 8888. portundan servis yapiyormus gibi olur sunucu. Yanıltıcı ha....? Bunu 80. porta karsılık 80. port da yapabilirsiniz.(ikinci ornek) Karar sizin ama en guzeli bu elbetteki.

Iki Network Aynı Subneti paylasiyorsa
Bunu en guzel cizecegim sekil uzerinde gosterebilirim sanırım.(cizdigim tablonun cirkinligi icin ozur)

+-------------+                                    +-------------+                                        +-------------+
 |    Net A       |  10.1.2.0            eth0    |       NAT      |  eth1                10.1.3.0    |     Net B       |
 |   10.1.1.0     | -----------------------  |       Router   |--------------------------- |     10.1.1.0   |
+-------------+                                    +-------------+                                        +-------------+
                                                              Route Tablosu                    
Net A(local): 10.1.1.0                            10.1.2.0 eth0                                            Net B(local) : 10.1.1.0
Net B          : 10.1.3.0                            10.1.3.0 eth1                                            Net A          : 10.1.2.0
Sanırım boyle bir kombinasyon oluyor. Iki aynı network kullanılan iki sube diyebiliriz bunlara ve biz onların ag yapisni degistirmeden araya bir Nat router koyup(linux) isimizi hallebiliyoruz. Hemen aklıma gelmisken soyleyeyim bazıları boyle bir yapinin henuz beta anlamda kullanılmasi gerektigini soyluyorlar. Evet boyle bir agı birlestirmemiz gerekirse sonuc olarak su iki rule isimizi gorecektir.

ipnatadm -I -b -W eth0 -S 10.1.1.0/24 -M 10.1.2.0/24
ipnatadm -I -b -W eth1 -S 10.1.1.0/24 -M 10.1.3.0/24

Boyle bir yapıyı 3-4-5-6-??? kadar aynı subnet kullanan network'ler icin kullanabilecegimiz konunun uzmanları tarafından soyleniyor.
Bu konuyla ilgili henuz deneme yapmadım baskalarının yalancısı olmak istemem.IPNATADM'yi yazmıs bile olsalar. Deneyip nasıl oldugunu gordukten sonra sizi bilgilendirecegimden emin olabilirsiniz. Ornek bir 3'lu subnet verirsek
Linux NAT

Map to Map
Bu tam bir NAT klasigidir. Belirlenmis bir Real ip(gercek) , icerdeki networkunuze ait illegal bir ip'ye birebir map edilmistir. Port sınırlaması vesaire yoktur(belirtmedikten sonra).Illegal ipnizi sanki Real bir ip kullanıyormus gibi hissedersiniz. Tam bir routing diyebilirim.. Harika..! Ama gene tekrarlıyorum. Sadece ihtiyacınız olan portları acinki hem performansta artıs gorun hemde guvenlik acısından acik vermemis olun. Yani NAPT.

ipnatadm -v -O -i -b -S 10.1.1.100/32 -M 134.102.124.222/32

kuralı ile 10.1.1.100 cikan paketler icin 134.102.124.222 ip adresini , gelen paketler icinse bu ip'yi rezerve etmesini saglıyoruz. Bidirectional kural kullanmadan soyle de yapabilirdik ;

ipnatadm -O -i -S 10.1.1.100/32 -M 134.102.124.222/32
ipnatadm -I -i -D 134.102.124.222/32 -N 10.1.1.100/32

bu iki kuralda yukardaki tekli kuralın aynı gorevini yapmaktadır. Hangisini tavsiye edersin bidirec mi kullanayım yoksa iki komut mu diye sorarsanız ikisine denedim ve uzun bir sure test ettim. Ikiside aynı. Zaten -b paremetresi ile bidirect yaptıgınızda ipnat kendi icin sizin yerinize bu iki komutu veriyor gibi farzedin. Yani ikiside aynı.


Ornek bir Yapı
Muhtemelen NAT kullanmak istiyenlerin en az 2 ethernet kartına sahip bir firewall veya NAT router(linux)  makinası , en az bir local host(icerdeki makinalar) ve bir router/Internet baglantısı bulunacaktır. Bu durumda Firewall'ın ethernet kartlarından birinin real bir ip'si ve digerininde local kullanıcılar icin ayırdıgınız illegal iplerden biri olacaktır. Ve siz muhtemelen icerdeki bir makinayı real bir ip olarak gostermek isiyorsunuzdur. Boyle bir durumda yapilmasi gereken en guzel sey NAPT olucaktır ki tavsiyet ettigim sey. Bunun otesinde islerinizi biraz daha karistirmis olabilirsiniz. Ornegin bir kac, hatta sayı verelim 10 tane subnetiniz var. Ve sadece ana buronuzun lease line uzerinden internet cikisi calısyor. Ve siz diger suberinizdeki pcleri internete cikarmak hatta orda INTERNET uzerinde gorulmesini istediginiz Server'lar koymak istiyebilirsiniz. Boyle bir durum suberiniz arası hattınız hızlıysa NAT kullanmalımıyım diye dusunmenize bile gerek yoktur ki , NAT boyle bir durumda cozum olarak uretilmistir zaten.Aksi takdirde soyle buyukce bir subnet alip 5-6 parcaya bolmek zorunda kalırdınız. Hemen hatırlamısken biraz bahsedim. Eger hic bir sekilde NAT kullanmak istemiyor veya isi en temiz ve ortalıklarda sahtelik istemezseniz, Yapmanız gereken ayrı ayrı subnetler alıp bunları subelerinizle baglandıgınız router'lara assign etmek olacaktır. Boyle bir durumda NAT'tan daha karısık durumlarla karsılabilirsiniz. En buyuk probleminizde ag'larınızda kullanacagınız subnet'ler ve route ayarları olucaktır. Konuyu fazla dagıtmadan devam edersek asagıdaki bir network yapınız olabilir buyuk bir olasılıkla.
Linux NAT
 Boyle bir yapiya sahipseniz iste size cozumu... Burada ekstradan koydugum Sube1 Bolumu. Buradaki ayarları atlayıp yokmus gibi davranırsaniz baska bir ornekle karsılasirsınız. Bu ornekte iki subeyi internete baglayıp uzaktaki subeye de bir WEB Server koyduk. Boyle bir dizaynda yapilmasi gereken route ve diger ayarlar da soyle olabilir ;

FIREWALL CONFIGURATION:
route add default gw 195.182.123.225
ifconfig eth0 195.182.123.229 netmask 255.255.255.248
ifconfig eth1 10.1.1.1 netmask 255.255.255.192
route add –host 195.182.123.226  gw 10.1.1.4
route add –host 195.182.123.228  gw 10.1.1.3
route add –net 10.1.1.128 netmask 255.255.255.192 gw 10.1.1.3
arp –s 212.58.11.70  00:00:a8:c8:4v:94 pub
arp –s 212.58.11.72  00:00:a8:c8:4v:94 pub
ipnatadm –v –O –i –b –S 10.1.1.4/32 –M 195.182.123.226
ipnatadm –v –O –i –b –S 10.1.1.155/32 –M 195.182.123.228
ipchains –A forward –s 10.1.1.0  255.255.255.192 –j MASQ
ipchains –A forward –s 10.1.1.64  255.255.255.192 –j MASQ
ipchains –A forward –s 10.1.1.128  255.255.255.192 –j MASQ

Router 1 Routing Table:
ip route 0.0.0.0  0.0.0.0  10.1.1.1
ip route 10.1.1.128  255.255.255.192  10.1.1.100

Router 2 Routing Table: 
ip route 0.0.0.0  0.0.0.0  10.1.1.100
Router Net Routing Table:
ip route 195.182.123.226  255.255.255.255  195.182.123.225
ip route 195.182.123.228  255.255.255.255  195.182.123.225

Netmask 255.255.255.192 (64 bit)

             Network                                   Broadcast        Useable IPs   
-----------------------                                                                              -------------------------              -------------------------
No:1)      10.1.1.0                                  10.1.1.63                10.1.1.1 – 62
No:2)      10.1.1.64 10.1.1.127              10.1.1.65 – 126
No:3)      10.1.1.128              10.1.1.191              10.1.1.129 – 190
No:4)                      10.1.1.192              10.1.1.255              10.1.1.193 – 254

No1 Network è Ana BuroNETWORK
No2 Network 
è Ana buro - Sube1 ROUTERs NETWORK
No3 Network 
è Sube 1 NETWORK
No4 Network 
è FREE NETWORK AREA
 Real Ip Addresses 
195.182.123.224      è Network First IP (unuseable)
195.182.123.225   
è ISP’s router ip address
195.182.123.226      
è FIREWALL IP ADDRESS...!!!
195.182.123.227      
è Exchange Real NAT ip address
195.182.123.228      
è Free ip
195.182.123.229      
è http://www.teknoser.gen.tr/ (WEB Server) Real (NAT) IP Address
195.182.123.230      
è Free IPs...!!!
195.182.123.231      
è BROADCAST IP (Unuseable)
Arp Table (FIREWALL): 
eth0 : 00:80:AD:71:C5:18
eth1 : 00:80:AD:74:A3:E7

Boyle bir konfigurasyonda sadece ornek teskil edebilir ama aynı yapı duzenlendiginde %99 dogrulukla calisacak bir yapıdir. Siz bunu gelistirebilir muthis projeler de yapabilirsiniz. Emin olun Linux'un yapamayacagı hic birsey yok. En azından benim, linux'te bunu yapmanın bir yolu yok dedigim birsey yok..!

Linux ve NAT - IPNATADM Kurulumu 2 / 4

IPNATADM'nin Kurulumu
Kurulumu oldukca basittir.Eger Kernel 2.4.x kullanmıyorsanız ufak bir patch'e ihtiyacınız olucaktır ve buraya tıklayarak nat-static-2.2.4.tar.gz ve kerrnel patch'ini indirebilirsiniz. Redhat 6.2 de biraz problem yasıyoruz ama Slackware 7.1 icin patch rahatlıkla kuruluyor. Dosyayı /usr/local dizini altina kopyalayip
gzip -cd nat-static-2.2.4.tar.gz | tar xfv -
komutuyla acin. Daha sonra /usr/src/linux dizinine girip
"patch -p1 <  /usr/local/nat-static-2.2.4/kernel/patch-2.2.4-2" komutunu verin.

root *DRHP* /usr/src/linux-2.2.16=47 > patch -p1 < /usr/local/nat-static-2.2.4/
kernel/patch-2.2.4-2
patching file Documentation/Configure.help
Hunk #1 succeeded at 2350 with fuzz 2 (offset 71 lines).
patching file include/linux/ip_nat.h
patching file include/linux/proc_fs.h
patching file net/ipv4/Config.in
Hunk #1 succeeded at 12 with fuzz 1.
patching file net/ipv4/Makefile
patching file net/ipv4/ip_forward.c
Hunk #1 succeeded at 20 (offset 1 line).
Hunk #3 succeeded at 252 (offset -5 lines).
patching file net/ipv4/ip_input.c
Hunk #1 succeeded at 145 (offset 1 line).
Hunk #2 succeeded at 331 (offset 7 lines).
Hunk #3 succeeded at 489 with fuzz 2 (offset 45 lines).
patching file net/ipv4/ip_nat.c
patching file net/ipv4/ip_nat_stub.c
patching file net/ipv4/ip_output.c
patching file net/ipv4/ip_sockglue.c
Hunk #2 succeeded at 385 (offset 2 lines).
patching file net/socket.c
Hunk #2 succeeded at 1489 (offset 7 lines).

      gibi bir cikti almalisiniz. En son satırda succeeded diye bir satır okursanız tebrikler. Eger alamazsanız bana bildirin ne gibi problemler cıktıgını. Henuz bir problemle karsılasmadıgım icin cozumde yok dogal olarak. Simdi make menuconfig ile kerneli derleyecegiz. "make menuconfig" komutu ile kernel configurasyon menusune girelim. Orada "Networking Options" Bolumunde su bolumler mutlaka secilmis olmalıdır.

* Paket socket
* Kernel/User netlink socket
* Routing messages
[M] Netlink device emulation
* Network firewalls
* Socket Filtering
* Unix domain sockets
* TCP/IP networking
* IP: multicasting
* IP: advanced router
* IP: network address translation (ipnatadm) (NEW)
* IP: firewalling
* IP: firewall packet netlink device
* IP: transparent proxy support (NEW)  #İsteginize baglı
* IP: masquerading
* IP: optimize as router not host  # en onemlisi bu
* IP: tunneling  # isteginize baglı. Eger VPN kullanıcaksanız
* IP: ARP daemon support # mutlaka olmalı
* IP: Reserver ARP # Olsa cok iyi olur.

 Dikkat ederseniz yeni bir bolum ciktı karsimiza network address translation isimli. Bunu Modul olarak da yukleyebilirsiniz.Daha sonra kerneli kaydedip cikin ve sira kernel derleme isine geldi ki bunu hepimiz biliyoruzdur sanırım ama genede kısaca anlatalim.
Eger REDHAT kullanıyorsanız tam olarak hatırlamıyorum ama rc.d lerin icinde biryerde depmod -a diye bir satır olucaktır. Bu satırın basina # isaretini koymalıyız. daha sonra "make dep;make clean;make bzImge" komutuyla kerlenlimizi derleyelim. islem bittikten sonra "cp /usr/src/linux/arch/i386/boot/bzImage /vmlinuz.new" komutyla derlenmis olan yeni kernelinizi kopyalayın. daha sonra tekrar "cp usr/src/linux/arch/i386/boot/System.map /boot/System.map" komutyla kaydedin. son olarak lilo.conf dosyasında gerekli degisiklikleri yapip lilo komutunu calistirin. sonra /usr/src/linux dizininde tekrar "make modules;make modules_install" komutunu verip makinanınızı resetleyin.... Artık nat'in yuklu olması gerekmektedir. Yani bu noktadan sonrra artık "ipnatadm" isimli bir komutumuz olusmustur...