Senin, 03 Desember 2012

formasi bintang rata kiri (C)

#include <stdio.h>
#include <conio.h>


main() {
    int a,b,c,d;
   
    for(a=1;a<=6;a++){
    printf("\n");
    for(b=1;b<=a;b++){
    printf("*");
   
                }
            }
        }
       
       

formasi bintang rata tengah (C)

 1 lagi nih :

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>


main() {
    int a,b,c,d;
   
   
    for(a=1;a<=5;a++){
    printf("\n");
    for(b=5;b>=a;b--){
    printf(" ");
    }
    for(b=1;b<=a;b++){
   
    printf("*");
    if(b>1){
        printf("*");   
    }
                }
        }

   
    }
   
CMIIW


beberapa source code yang sering digunakan buat ngetes algoritma :D

postingan kedua :D

/* Tugas ALProg
Nama : Rahmat Yani Hidayat
NIM : 12.11.6570
Kelas : 12.S1TI.12 */

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>

int main() {
//variabel
int p,n,x,jmlhkt; //int1
int a,b,c,d=7; //int2
int jlmhkt; //int3
char r[255];
char klmt[100];
char a1;

//fungsi
system("cls");
printf("Masukkan pilihan : \n\n1.Membalik String\n2.Menghitung Jumlah Karakter\n3.Tampilan Angka1\n4.Tampilan Angka2\n");
scanf("%d", &p);
getch();

//if func balik string
if ( p == 1 ) {
    system("cls");
    printf("Masukkan Kata yang akan di reverse : ");
    gets(r);
    printf("Kebalikkannya : ");
    printf((strrev(r)));
    printf("\n");
    system("pause");
    system("cls");
    main();
    }

//if hitung jumlah huruf dlm klimat
/* Still failing else if ( p == 2 ) {   
    int i1 = 0, b1 = 0, c1 = 0;                                                    
    char klmt1[100];                                                             
    char a1;
   
    system("cls");                                                                                                                                     
    printf ("Masukkan kalimat : ");                                            
    scanf ("%s", &klmt1);                                                       
                                                                            
    getch();                                                                   
                                                                        
    printf ("Masukkan Huruf yang akan di cari : ");                            
    scanf("%s",&a1);                                                            
    for(i1=0; i1 <= strlen(klmt1); i1++){                                            
    if(klmt1[i1] == a1){                                                          
    c1 = c1+1;                                                                 
    }                                                                          
}                                                                          
                                                                        
    printf("Huruf yang anda cari %s ",&a1);                                        
    printf(", Muncul : %i kali \n\n",c1);                                       
                                                                            
    getch();
    system("pause");                                                                    
    }                                                                                     
                   
                  
*/                   
//if hitung semua karakter
else if ( p == 2 ) {
    system("cls");    
    printf("Hitung karakter dalam kalimat : ");
    gets (klmt);      
    n = strlen(klmt); 
    printf("%i\n", n);
    system("pause");  
    main();           
                   
    }                    
//if angka1        
else if ( p == 3 ) {
    //yeaaaaaaaah     
    system("cls");    
    for(a=1;a<=b;a++){
              
    printf("%d", a);
   

            }
       

}
   

   
//if angka2
else if ( p == 4 ) {
 //yeaaaaaaaah
    system("cls");
    for(c=6;c<=d;c--){
    for(d=1;d<=c;d++){
    printf("%d", c);
       

        }           
    }
}

else {
    printf("Menu salah !\n");
    main();

    }
}

//created by Rahmat Yani Hidayat
//nim 12.11.6570


maaf jika masih banyak salah nya :D. mohon bimbingannya

Formasi Bintang Rata Kanan (C)

udah lama gak posting, hahahha. nih source code formasi bintang, semoga membantu, maaf jika masih ada salahnya, maklum newbie :D

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>


main() {
    int a,b,c,d;
   
   
    for(a=0;a<=5;a++){
    printf("\n");
    for(b=5;b>=a;b--){
    printf(" ");
    }
    for(b=1;b<=a;b++){
   
    printf("*");
    if(b>1){
        printf("*");   
    }
                }
        }

   
    }
   


Rabu, 22 Agustus 2012

Cara Mengetahui Karakter Sifat Dari Bicara


Cara mengetahui sifat seseorang ini sangat mudah untuk anda fahami.perhatikan teori yang di bawah.tapi ingat..ini berlaku jika anda sudah mendengar orang tersebut berbicara atau anda berbicara dengannya
1.  TIDAK MAU MENDENGAR DAN HANYA MAU DI DENGAR
pastinya anda pernah jumpa orang seperti ini,misalnya dia berbicara berkobar kobar dan berbicara terus tanpa memberi orang lain bicara,dan kita hanya sebagai pendengar.ketika giliran kita berbicara,dia malah gak mau mendengarkan.nah sifat dan karakter tipe orang seperti ini adalah:
-pemalas
-cerdik
-pembohong/pembual.
-suka merendahkan orang lain.
-sombong merasa paling hebat
-tidak bertanggung jawab
-pemarah
-keras kepala
-mau menang sendiri
-pengecut,berani cuma dirumah,dah kayak guk..guk..
2.  SELALU MEMOTONG PEMBICARAAN:
anda pasti pernah mengalaminya.ketika anda sedang berusaha menjelaskan cerita atau berbagi pendapat,tiba-tiba pembicara’an anda di potong atau di bantah,maka sifat dan karakter dari orang seperti ini adalah;
-matrealistis
-suka nyuruh nyuruh
-keras kepala
-tidak dapat di bantah
-tidak ada toleransi
-penjilat,licik.
-bermuka dua/musang berbulu domba.
-kejam
-manis di depan tapi menjelek jelekan di belakang.
-keinginannya kuat dan harus tercapai apapun caranya.
-mengorbankan orang lain demi ambisi.
-egois,pelit,serakah,kikir.
-berbicara menyakitkan hati,dan sombong serta membanggakan diri sendiri.
3.  TIPE PENDENGAR
Jika anda mendapati seseorang betah menjadi pendengar,dengan ekspresi wajah sesuai dengan topik pembicara’an,serta hanya menjawab dengan anggukan,sambil tangan di dagu atau di kepala.maka sifat dan karakter tipe ini adalah:
-pemikir
-pengalah
-berwawasan
-tidak sombong
-rendah hati
-hemat,pelit
-empati tinggi
-suka melamun
-pemalu
-penyendiri
-tidak suka berdebat
-Pengalah
-punya toleransi
-keras kepala
-tidak mau di gurui
-pantang di rendahkan
-pendendam
-main tusuk belakang.
-Cerdik
-pandai memainkan peran
-susah di singkirkan
-Pemberontak pada sistem yang kaku.
-emosi labil
-jarang bicara,jika berbicara pedas,dan tajam.
-Suka protes dan kritikannya tajam dan terarah hingga target tak berkutik
-tidak berjalan sesuai pola
-susah di tebak
-tidak suka pembicara’an yang topiknya di ulang ulang.
-mudah bosan
-pemuak
4. DIAM TAPI TANPA EKSPRESI DAN TANPA UMPAN BALIK:
anda akan mendapati tipe orang seperti ini,maka tipe seperti ini punya karakter;
-penurut
-sabar
-gampang di yakinkan
-tidak punya ide
-otaknya kosong
-mengikuti sistem yang kaku
-baik
-pelit
-ramah
-mudah mema’afkan
-tulus
-berjalan sesuai pola
-tidak mau berfikir

Rabu, 09 Mei 2012

Kejadian Klo e-KTP Sudah Berjalan Secara Efektif...

Klo e-KTP sdh berjalan secara efektif, mungkin akan begini kejadiannya:

Rekaman percakapan telp pemesanan Pizza pd thn 2015.

Operator [O]: "Terima kasih anda telah menghubungi Pizza Hot, Ada yg bs saya bantu?"

Konsumen [K]: "Saya mo pesan pizza."

O: "Boleh minta nomor KTP anda?"

K: "6102049998-45-54610"

O: "Oke pak Bejo, dr database kami bpk tinggal di Jl. Merpati No 6, Tlp Rumah 021829256378, Kantor 021666535872673 Hp 0818763784022."

K: "Betul Mbak...Apa saya bisa pesan Seafood Pizza?"

O: "Itu bukan ide yang bagus Pak. Dari medical record Bapak, Bapak punya tekanan darah tinggi dan kolestrol yang berlebihan. Mungkin saat ini Bapak bisa memesan Low Fat Hokkien Mee Pizza."

K: "Dari mana kamu tahu kalo saya bakal suka itu?"

O: "Hm...minggu lalu Bapak baru pinjam buku dengan judul "Popular Hokkien Dishes" di Perpustakaan Nasional."

K: "Oke terserah...sekalian saya pesan paket keluarga, jadi berapa semuanya?"

O: "Total semua Rp. 290.000,-"

K: "Boleh saya bayar dengan Credit Card?"

O: "Bapak harus bayar cash, kartu kredit Bapak sudah over limit dan Bapak punya utang di bank sebesar Rp. 5.350.000,- sjk bulan Juni tahun lalu, itu belum termasuk denda tunggakan kredit kendaraan Bapak."

K: "Ya sudah kalo begitu, saya ke ATM dulu ambil uang sebelum orang mu datang."

O: "Dari data Bapak, sepertinya itu juga nggak bisa Pak, record Bapak menunjukkan bahwa batas penarikan uang di ATM Bapak sudah habis."

K: "Busyet..! Sudahlah anterin aja pizzanya kesini, saya akan bayar cash disini, dan berapa lama Pizza diantar?"

O: "Sekitar 45 mnt Pak, tp kalo Bapak tidak mau menunggu, Bapak bisa mengambilnya sendiri dengan motor bebek butut Bapak."

K: "Waduuuuuh...?"

O: "Di data terlihat Bapak memiliki motor bebek thn 1995 dgn nopol B3344CD betul kan?"

K: "Sialan...nggak sopan buka-buka record gue, blom pernah ngerasain ditonjok ya?"

O: "Oh hati-hati dengan ucapan Bapak. Apa Bapak ingat 15 Mei 2010 Bapak pernah di bui 3 belan karena mengucapkan kata-kata kotor pada polisi?"

O: Ada yg lain pak?

K: "Kaga ada. Batalin aja pesanan gw...!!!"


source : kaskus

Trik Tersembunyi dari Mouse

Trik Tersembunyi dari Mouse. Jika agan pengguna komputer, pasti sudah tidak asing lagi dengan yang namanya mouse. Mouse adalah salah satu pendamping setia dari komputer. Hampir semua jenis mouse memiliki 3 buah tombol. Tombol kiri, tombol kanan dan tombol scroll yang ada di tengah.


Nah, tombol scroll ini biasanya hanya kita gunakan untuk melakukan scrolling halaman, baik pada saat berinternet maupun mengerjakan sesuatu dengan komputer kita. Padahal ternyata sebenarnya ada beberapa fungsi penting dan tersembunyi dari tombol scroll mouse yang bisa anda manfaatkan. Berikut ini akan ane tunjukin beberapa hal yang bisa anda gunakan dengan memanfaatkan tombol scroll mouse yang sering dilupakan orang, yaitu:

 1. Menutup tab browser dengan cepat
saat berinternet dengan membuka tab-tab browser dan ingin menutupnya, biasanya hal yang agan lakukan adalah mengarahkan kursor mouse ke tanda X yang ada di kanan atas untuk menutup tab tersebut. agan bisa lebih cepat menutup tab browser agan dengan menggunakan scrool mouse. Caranya adalah sebagai berikut :Tekan scroll mouse di tab browser agan di manapun lokasinya..maka browser agan akan tertutup dengan cepat. agan tidak harus mengarahkan mouse dan klik di tanda “X”, cukup klik scroll mouse di bagian manapun tab browser anda. Menghemat waktu bukan ???


2. Membuka tab baru
saat agan browsing dan ingin membuka link di tab baru, maka biasanya agan melakukannya dengan klik kanan link tersebut dan memilih menu “open in new tab” . Agan bisa lebih cepat melakukannya dengan cara klik link tersebut menggunakan scroll mouse. Cukup tekan scroll mouse di link yang agan inginkan, maka link tersebut akan otomatis terbuka di tab baru. Sangat menghemat waktu.


3. Membuka kumpulan link bookmark sekaligus
Jika agan memiliki situs – situs favorit yang sering agan kunjungi atau ingin agan kunjungi setiap hari, maka biasanya agan melakukan klik di satu per satu link situs tersebut di bookmark agan. Namun ternyata ada cara yang lebih cepat yaitu dengan melakukan klik di folder bookmark dengan scroll mouse. Maka secara otomatis semua link-link situs favorit agan di folder tersebut akan terbuka seluruhnya secara otomatis. agan tidak perlu lagi membuka satu per satu, karena jika bookmark agan berjumlah banyak akan memakan banyak waktu. Scroll mouse mempercepat semuanya untuk agan.


4. Scroll otomatis dokumen atau halaman yang sedang agan buka
Jika agan membuka sebuah halaman situs atau sebuah dokumen yang panjang di program – program seperti Word, Excel, Adobe reader, firefox atau explorer, maka untuk melakukan scrolling, biasanya agan lakukan dengan cara memutar scroll mouse dengan jari. Namun jika halaman tersebut panjang sekali..maka hal ini akan membuat jari agan capek . Untuk menghindari hal itu, cukup klik dan tahan sebentar tombol scroll mouse agan. Maka agan akan masuk di fitur autoscroll dimana agan bisa menggerakkan dan melakukan scrolling halaman yang sedang agan buka hanya dengan sedikit menggerakkan mouse tanpa harus memutar – mutar tombol scroll. Jari agan tidak akan capek karena membuka sebuah dokumen yang amat sangat panjang.

Beberapa Peluang Bisnis Online di Dunia

Beberapa Peluang Bisnis Online di Dunia
By: Bambosi.Com

Berbicara tentang bisnis online Indonesia maka pikiran kita akan terbatas pada PPC lokal, pulsa online dan E-Book. Bagaimana dengan bisnis online dunia? Fakta telah menunjukkan setiap tahun muncul beberapa program baru penghasil duit yang berkembang secara cepat baik itu hasil dari modifikasi program lama maupun hasil inovasi beberapa ide kreatif pemuda masa kini.

Jika dijabarkan secara keseluruhan, maka tidak akan ada habisnya, karena hingga saat ini ada ratusan kategori bisnis online yang diikuti oleh ribuan program. Namun kali ini saya akan coba menjabarkan beberapa peluang bisnis online yang saya ketahui dan sangat memungkinkan menambah pundi-pundi kekayaan anda. Beberapa diantaranya sudah tentu tidak asing bagi anda, namun saya akan mencoba menyegarkan kembali, dan sisanya mungkin belum anda ketahui. Mari kita mulai dari beberapa program yang sudah tidak asing lagi bagi kita semua.

#1. Google Adsense

Google AdsenseGoogle Adsense adalah sebuah bisnis online berbasis Paid Per Click atau anda akan dibayar per klik yang anda hasilkan. Google Adsense adalah salah satu bisnis online terfavorit di Indonesia, dan sebagian besar pebisnis online Indonesia memilih Google Adsense sebagai program utama mereka.

Komisi yang diberikan bervariasi, tergantung dari topik iklan, asal pengunjung yang melakukan klik pada iklan Adsense dan beberapa faktor lainnya.

#2. Make Money Blogging

Saya agak bingung untuk menggunakan bahasa Indonesia yang tepat Make Money Blogginguntuk kata-kata di atas. Pada intinya, kita akan mendapatkan uang melalui blog kita. Yang harus kita lakukan adalah tetap mengupdate konten, melakukan optimasi blog dan bergabung dengan beberapa program bisnis online yang berhubungan.

Ada banyak peluang bisnis melalui kegiatan blogging ini, antara lain sebagai berikut:

a. Payperpost.Com - Anda akan di bayar $5 - $20 per post

b. Reviewme.Com - Tugas anda adalah mereview products, websites dan jasa

c. Sponsoredreviews.Com - Ini adalah program paid review terfavorit untuk para pebisnis online di Indonesia

d. Smorty.Com - Salah satu program Paidreview yang bagus

e. Blogitive.Com - Program yang memberikan komisi flat $5 untuk seluruh pekerjaan

#3. Menulis E-Book dan Menjualnya

Apabila anda memiliki hobby menulis dan mempunyai pengetahuan Jual Beli E-Booktentang bisnis online baik secara general maupun spesifik, maka ada baiknya anda menuangkannya dalam bentuk E-Book lalu menjual pengetahuan tersebut. Anda dapat menggunakan software dari primopdf.com untuk memproses artikel anda menjadi sebuah E-Book pdf.

Ada banyak situs yang menawarkan kemudahan dalam bisnis jual beli E-Book ini, antara lain:

a. Paydotcom.Com - Program yang menggunakan paypai sebagai Payment Processor. Situs ini adalah alternatif dari Clickbank

b. ClickBank.Com - Salah satu program terbaik untuk berbisnis E-Book

c. TradeBit.Com - Alternatif lain menjual E-Book

#4. Jual Beli Domain

Jual Beli DomainIni adalah bisnis yang sangat mencengangkan, karena bila dilihat dari segi Return Of Investment, bisnis ini dapat dibilang yang paling tinggi. Karena menurut pengalaman, saya mendapatkan hasil di atas 8000% hanya dalam waktu 3 bulan.

Beberapa situs penyedia layanan jual beli domain:

a. Sedo.Com - Situs yang paling populer untuk berbisnis jual beli domain

b. Aftermarket.com - Salah satu alternatif berbisnis domain

c. RickLatona.com - Salah satu pelaku bisnis domain yang juga merupakan penjual dan pembeli domain

#5. Jual Keahlian Anda

Apabila anda seorang designer logo, banner, dll.. atau anda seorang programmer, anda dapat menjual keahlian anda di beberapa situs di bawah ini.

a. RentaCoder.Com - Pusatnya penyedia jasa programmer freelance

b. Elance.Com - Penyedia jasa programmer alternatif

c. LogoWorks.Com - Khusus bagi anda para desainer logo untuk web maupun untuk perusahaan

d. DesignOutpost.Com - Untuk para desainer

#6. Marketplace untuk para Fotografer

Dunia fotografi juga merupakan bidang yang tepat untuk memulai bisnis online, karena ada beberapa penyedia jasa jual beli Foto. Diantaranya:

a. ShutterStock.Com - Membayar anda $0.25 setiap foto anda di download

b. BigStockPhoto.Com - Membayar $0.5 hingga $1 per download

c. DreamsTime.Com - Anda akan dibayar sebesar 50% s/d 80% untuk setiap penjualan Foto

d. Fotolia.Com - Salah satu Marketplace favorit

#7. Desain Grafis untuk T-Shirt

Apabila anda hobby dalam mendesain kaos, cobalah jual desain anda, jika beruntung anda akan mendapatkan loyalty dari setiap penjualan yang dihasilkan. Beberapa situs yang siap membeli desain kaos anda

a. Zazzle.Com

b. SpreadShirt.Com

c. PrintMojo.Com

d. 99dogs.Com

#8. Menjadi Penulis di About.Com

Anda dapat menjadi penulis tetap di About.Com. Apabila disetujui minimal anda akan dibayar sebesar $725 / Bulan, angka yang lumayan bukan?

Apabila tertarik, cukup mendaftar di http://beaguide.about.com/index.htm
#9. Memberikan Saran nama Domain

Benarkah judul di atas? Yup, anda dibayar hanya dengan memberikan saran nama domain yang bagus. Anda akan dibayar $25 untuk setiap nama domain premium dan diminati. Apabila tertarik join sekarang di PickyDomains.Com

#10. Review Product

Tugas yang dilakukan untuk program ini secara teori dapat dibilang mudah. Namun apabila tidak sesuai dengan yang diinginkan maka anda tidak akan dibayar. Daftarkan segera di:

a. ReviewStream.Com - Anda akan dibayar $2 untuk setiap review yang disetujui

b. SoftwareJudge.Com - Anda akan dibayar diatas $50 per reviewsource : kaskus

Kamis, 26 April 2012

GNU/Linux 101 : all the basic stuffs

Sering sekali pengguna Linux baru membuat pertanyaan seperti "distro AA vs distro BB enakan mana", atau "bedanya KDE & Gnome dimana?". Supaya forum rapi, lebih baik disatukan di thread ini. Jadi kalau mau bikin thread, liat dulu thread ini, siapa tau udah ada jawabannya. Thread2 baru yg menanyakan pertanyaan yg sudah dijawab di thread ini akan dilock.

Nah sekarang ke topiknya, dibikin model tanya jawab aja yak biar gak terlalu ribet.


Q : Apa sih gnu/linux itu ?

A : linux adalah sebuah kernel / inti suatu sistem operasi komputer yang berisi baris kode perintah untuk menjalankan semua aplikasi pada komputer. Sedangkan kernel linux dibuat oleh Linus Torvalds pada tahun 1991. lebih lengkap mengenai kernel dan gnu linux silahkan klik link sbb :

gnu/linux : http://en.wikipedia.org/wiki/Linux atau http://www.linux.org/info/index.html
kernel : http://en.wikipedia.org/wiki/Kernel_...mputer_science)
Linus Torvalds : http://en.wikipedia.org/wiki/Linus_Torvalds

Q : Bagaimana dengen istilah distro linux ?
A : distro linux adalah kumpulan paket-paket software tambahan semisal pengolah gambar, office suite, firewall, aplikasi voip dsb yang ditambahkan pada kernel linux itu sendiri...

perbedaan paket dan sistem pengoperasiannya itulah yang disebut dengan distro. contoh yang terkenal adalah Debian, Slackware, OpenSuse, Gentoo, Ubuntu, dan lain-lain. Lebih lengkap mengenai daftar distro linux bisa dilihat pada situs www.distrowatch.com

Q : Gnome, KDE dan XFCE apakah merupakan distro linux ?
A : ketiga nama tersebut merupakan window manager yang digunakan pada banyak distro linux, semisal Gnome pada Ubuntu, KDE pada Mandriva dan XFCE pada Zenwalk.

Selain itu masih banyak jenis window manager yang ada, semua mempunyai kelebihan dan kekurangannya masing-masing. jenis berbagai window manager bisa dilihat pada link http://xwinman.org dan http://en.wikipedia.org/wiki/Compari...p_environments

Q : Apakah kalimat "free" pada tiap distro berarti gratis ?
A : kalimat "free" yang dimaksud tidak selalu gratis, kalimat free tersebut diambil dari kalimat "Freedom" yang berarti merdeka / bebas. akankah berarti juga gratis ? tidak juga, programmer atau distro berhak meminta bayaran / sumbangan yang pantas akan produknya. biasanya dalam bentuk dukungan korporat dan sumbangan bagi proyek software terkait

Dalam artian lain sebagai pengguna distro tersebut, pengguna berhak menambah, mengurangi bahkan merubah susunan kode program dari distro yang bersangkutan. standar umum yang diterapkan ialah GPL (General Public License). keterangan mengenai lisensi tersebut bisa dilihat pada link : http://en.wikipedia.org/wiki/Gpl


Q : Saya ingin mencoba migrasi ke OS berbasis *nix demi alasan legalitas, apakah yang harus saya persiapkan ?

A : pertama-tama pastikan bahwa anda sebelumnya telah memahami / sedang mempelajari cara kerja sistem operasi *nix (termasuk linux) dan menguasai software-software-nya semisal openoffice.org untuk office suite, Blender sebagai aplikasi grafis 3D, GIMP sebagai pengolah gambar menggantikan Photoshop, VLC Player, Pidgin, dan sebagainya. hal ini untuk memudahkan anda dalam menggunakan aplikasi tersebut dalam lingkungan OS *nix, selain itu jangan lupa untuk selalu mencari informasi terkait dengan software alternatif lain.

salah satu contoh mengenai daftar software cross-platform linux-windows bisa di-unduh di sini http://romisatriawahono.net/2007/01/...windows-linux/

Kedua... pastikan spek komputer anda mencukupi untuk menggunakan linux hal ini juga harus diperhatikan dalam memilih distro linux pilihan anda dan paket software pelengkapnya. Sekali lagi, referensi mengenai distro linux bisa dilihat pada situs www.distrowatch.com

ketiga... rajin-rajinlah mengikuti milis atau forum berkaitan dengan linux bahkan distro linux pilihan anda. tetapi harap diingat biasakanlah membaca panduan atau mencari referensi lain sebelum anda bertanya pada mereka dan juga pastikan bahwa pertanyaan anda bukanlah hal yang terlalu awam.

bila pertanyaan anda seperti itu maka dapat dipastikan anda akan dicuekin atau yang terburuk anda dimaki-maki oleh mereka. bukan bermaksud untuk menakuti tapi untuk membiasakan agar anda tidak malas mencoba terlebih dahulu.


Q : Bagaimana bila software alternatif di linux tidak ada yang sesuai dengan kebutuhan komputasi saya dan bagimana bila software saya di windows tidak dapat dijalankan pada platform *nix


A : jawabannya hanya satu. emulator. software emulator tersebut semisal Wine, CrossOver dan Cedega. dari ketiga aplikasi tersebut hanya CrossOver dan Cedega yang berbayar.

Namun software emulasi tersebut pun tidak 100 % mendukung aplikasi pada windows... sebelumnya carilah informasi dukungan software yang berhasil di emulasikan oleh ketiga software tersebut.

Namun bila masih mandek gunakanlah alternatif dual-boot / virtualisasi windows pada komputer anda.

Q : Yang anda maksud dengan dual boot dan virtualisasi ?

A : dual boot adalah istilah yang digunakan dalam komputasi jika anda menggunakan 2 jenis sistem operasi (OS) disebut dual karena berjumlah 2, selebihnya ada istilah triple & quad-boot (3 atau 4 OS dalam sebuah PC)

cara yang lazim digunakan menggunakan dual boot adalah menginstall OS Window terlebih dahulu lalu diikuti dengan instalasi distro linux pilihan anda, namun hal sebaliknya juga bisa dilakukan dengan mengubah setting pada boot loader (dijelaskan lebih lanjut nantinya)

sedangkan virtualisasi adalah menjalankan OS lain didalam suatu OS yang sedang berjalan menggunakan software virtualisasi semisal virtualbox.

misalkan anda mempunyai sistem operasi utama pada PC anda (biasa disebut 'Host' pada beberapa software virtualisasi) dan anda ingin mencoba OS yang lain pada PC anda tanpa harus capek-capek merubah partisi hard disk anda dan tanpa harus menyetel beberapa opsi lainnya (sistem operasi kedua ini biasa disebut sebagai 'Guest'). Yang hanya anda ingin lakukan adalah memasang operating sistem tersebut dalam OS yang telah ada pada PC anda. Nah cara inilah yang disebut dengan virtualisasi

yang perlu diperhatikan dalam proses virtualisasi ini ialah resource atau beban kerja komputer yang bertambah dikarenakan software virtualisasi tersebut akan membuat sebuah OS lain didalam OS pada komputer anda. Dari beberapa info disarankan anda memiliki prosesor dengan kecepatan minimal 1.8 Ghz, RAM minimal 1 Ghz dan ruang kososg pada Hard Disk sekitar 8 - 15 Gb.

Andaikan dirasa terlalu berat bagi anda opsi dual-boot lebih disarankan. Perlu diketahui juga ada distro linux yang mempunyai opsi instalasi bagaikan sebuah aplikasi, pada distro Ubuntu dan variannya diketahui mempunyai fitur yang disebut Wubi.

Cara kerja Wubi tersebut adalah membuat distro linux tersebut bagaikan sebuah aplikasi biasa dan seperti sebelumnya pada teknik virtualisasi, menggunakan Wubi juga membutuhkan sumber daya yang besar terutama space kosong pada HDD.

info lain mengenai virtualisasi, virtualbox dan wubi bisa dilihat pada :

- http://wubi-installer.org
- http://www.virtualbox.org
- http://en.wikipedia.org/wiki/Virtualization

Q: Distro Linux ada banyak: Debian, Open Suse, Slackware, Fedora, Ubuntu, dst. Mengapa demikian? Kenapa gak dibuat jadi 1 saja?

A: Itulah kelebihan Linux, yaitu bisa di-custom sesuai kebutuhan. Tidak semua orang suka menginstall 1 distro besar/lengkap, padahal kebutuhannya spesifik saja, misal untuk mengatur router, membuat media center, atau menghidupkan kembali PC tua dimana Windows versi terbaru nggak bakal jalan disitu.

Q: Kalau begitu, distro mana yang sebaiknya saya pakai?

A: Salah satu guideline adalah "pilihlah distro yg dipakai orang-orang di sekitar anda". Jadi kalau anda ada masalah, anda bisa bertanya pada orang-orang tersebut. Terlepas dari itu, tiap2 distro memiliki target sendiri, misal:
- Debian, Red Hat, Centos: server
- Open Suse, Debian, Fedora, Slackware: desktop
- GeeXboX: media center
- Knoppix: live CD (gak perlu repot nginstall, cocok buat testing atau yg pengen distro yg bisa dibawa-bawa)
- dst

Distro-distro besar seperti Ubuntu, Slackware, Open Suse, dst punya komunitas yang besar. Kalau anda ada pertanyaan soal Linux, coba bertanya di forum Linux, seperti linuxquestions.org, dan jangan khawatir: newbie tidak akan diserang dengan "RTFM" atau semacamnya.

: Benarkah Linux bebas dari virus?

A: Sebenarnya Linux bukan bebas dari serangan virus, namun kasus infeksi virus atau malware sangat jarang terjadi pada Linux. Ini disebabkan karena konfigurasi dan struktur modul pada distribusi Linux dapat dirubah2 oleh siapapun sesuka kehendak hati, menyebabkan kinerja virus menjadi tidak efisien/efektif pada sistem operasi Linux. Misal, ketidak tersediaan shared library yg dibutuhkan oleh virus untuk berjalan karena tidak terinstal secara default. Selain itu versi sebuah distro Linux sangat sering dirilis dalam 1 tahun sehingga menambah dinamika perubahan struktur distribusi.


Q: Gan, bagi dong beberapa perintah console/terminal/CLI dasar yg berguna!

A: Haduh2...... belajar linux diperlukan bisa bahasa english jg nih kayaknya
ls = dir (di windoz) = melihat daftar (list) isi direktori
man <nama perintah> = melihat manual page perintah bersangkutan
<perintah> -h / --help = parameter help perintah bersangkutan
free = melihat penggunaan RAM dan swap file
top = melihat service yg berjalan secara live
cat = melihat isi sebuah text file
uname = melihat spesifikasi sistem
netstat = melihat statistik koneksi internet
fd = melihat available free space pada HDD
cp = mengkopi file
mv = memindahkan file
mount / umount = melakukan mounting / unmounting pada sebuah drive
pwd = melihat kita sedang berada di dalam folder/ direktori mana?
whoami = untuk melihat kita login dgn username apa?
whereis = mencari letak file tertentu
clear = membersihkan layar

source : kaskus

Selasa, 14 Februari 2012

Membangun DNS Server dengan BIND

Konsep DNS dan tutorial instalasi BIND

Asfihani (asfik@cakraweb.com)

16 Februari 2003

Tutorial ini ditujukan untuk membantu memahami konsep dan cara kerja dari DNS (Domain Name System) serta tutorial instalasi software DNS menggunakan BIND (Berkeley Internet Name Domain). Tutorial ini mencakup instalasi BIND step by step, membuat zone dari sebuah domain beserta record-recordnya, PTR, serta mengkonfigurasi secondary DNS secara simple. BIND yang digunakan adalah versi 9.2.2rc1 (versi yang paling baru ketika tulisan ini dibuat). Tidak ada copyright apapun dalam dukumen ini, anda bebas menyalin, mencetak, maupun memodifikasi (dengan menyertakan nama penulis asli). Masih banyak kekurangan ataupun mungkin kesalahan pada tulisan ini, oleh karena itu saran, koreksi, kritik, maupun kesalahan ketik silakan dikirimkan ke email tersebut diatas. Terima Kasih.




1. Pendahuluan

Setiap kali anda meggunakan internet dalam kegiatan anda sehari-hari, maka setiap kali itu pula secara tidak langsung anda menggunakan DNS (Domain Name System). Penggunaan DNS meliputi aplikasi email (electronic-mail), browsing, ssh/telnet, ftp, maupun aplikasi yang lain yang ada kaitannya dengan internet. Fungsi utama dari sebuah sistem DNS adalah menerjemahkan nama-nama host (hostnames) menjadi nomor IP (IP address) ataupun sebaliknya, sehingga nama tersebut mudah diingat oleh pengguna internet. Fungsi lainnya adalah untuk memberikan suatu informasi tentang suatu host ke seluruh jaringan internet. Sebelum kita mulai instalasi BIND kita flashback dulu dengan sejarah internet, DNS dan BIND, serta konsep DNS.

Sejarah Internet

Pada akhir tahun 1960, US. Department of Defense Advanced Research Projects Administration (ARPA/DARPA) mendanai percobaan dan riset tentang jaringan komputer secara luas yang saling menghubungkan antar hampir semua organisasi di Amerika yang akhirnya dikenal dengan sebutan ARPAnet. Hasil dari riset tersebut email (electronic-mail) mulai digunakan.
Pada awal tahun 1980 protokol TCP/IP (Transmission Control Protocol/Internet Protocol) mulai dikenalkan dan akhirnya menjadi protokol standar dalam struktur jaringan ARPAnet. Jaringan ARPAnet berkembang pesat jumlahnya menjadi ribuan host dan masih menggunakan standar protokol TCP/IP, dan akhirnya jaringan tersebut dikenal dengan internet.
Pada tahun 1988, DARPA digantikan oleh National Science Foundation (NSF) dalam pendanaan riset diikuti dengan penggantian dari ARPAnet menjadi NSFnet sebagai tulang punggung (backbone) jaringan internet. Kemudian pada musim semi tahun 1995, backbone internet melakukan transisi dari NSFnet (yang didanai oleh publik) ke beberapa backbone komersil, dimana memungkinkan interknoneksi antar jaringan bisa menjadi lebih jauh jaraknya. Penyedia backbone komersil tersebut diantaranya adalah MCI dan Sprint serta pemain lama seperti UUNet dan PSINet.
(DNS and BIND 3rd Edition, Paul Albitz & Cricket Liu, 1998 Hal 2)

Sejarah DNS

Pada tahun 1970an jaringan ARPAnet hanya terdiri dari beberapa ratus host saja. Pada waktu itu, sebuah file HOSTS.TXT yang berisi tentang semua informasi host-hosts tersebut masih bisa melayani setiap permintaan query dan menerjemahkan nama ke alamat IP (name-to-address-mapping).Pada sistem operasi berbasis UNIX, file /etc/hosts merupakan hasil dari pengolahan file HOSTS.TXT tersebut. File HOSTS.TXT pada waktu itu dikelola oleh Stanford Research Insitute Network Information Center (SRI-NIC) di Menlo Park, California. File tersebut tersebut didistribusikan ke semua host dan penggunanya hanya dengan menggunakan satu buah host (mesin/komputer) saja. Petugas administrasi dari ARPAnetbiasanya mengirimkan email kepada SRI-NIC tentang perubahan (termasuk penambahan maupun pengurangan) tentang informasi suatu host, dan dalam periode tertentu, mereka melakukan transfer file HOSTS.TXT yang paling baru (biasanya diperbaharui sekali dalam seminggu) dengan menggunakan protokol ftp. Seiring dengan berkembangnya jaringan ARPAnetdan penggunaan protokol TCP/IP, ukuran dari file HOSTS.TXT menjadi besar dengan bertambahnya jumlah host yang bergabung dengan jaringan ARPAnet. Kemudian timbul beberapa masalah dengan penggunaan file HOSTS.TXT ini, misalnya :

  • Trafik dan Beban (Traffic and load) Beban mesin dan trafik (bandwith) di SRI-NIC dalam mendistribusikan file menjadi lebih berat dan besar
  • Penamaan yang saling bentrok (name collisions) Pada file HOSTS.TXT tidak diperkenankan adanya dua buah nama host yang sama. Namun pada prakteknya, tidak ada cara untuk mencegah seseorang untuk menambahkan nama yang sama sehingga kemungkinan bisa menjadi bentrok dan pada akhirnya merusak skema yang telah ada
  • Keaslian (consistency) Mengelola keaslian dan keutuhan sebuah file antar beberapa jaringan yang sedang berkembang pesat merupakan sesuatu hal yang sulit dilakukan
Berangkat dari masalah-masalah tersebut diatas, ARPAnet membentuk suatu sistem alternatif pengganti dari sistem lama yang menggunakan file HOSTS.TXT. Tujuannya adalah untuk memecahkan masalah dalam pengelolaan tabel host yang sangat beraneka ragam dan masih menggunakan metode sentralisasi. Pada sistem yang baru, seorang sistem administrator memungkinkan untuk mengelola data secara loka, namun akan selalu update secara global di internet. Sistem yang menggunakan metode desentralisasi ini diharapkan akan mengurangi beban dan trafik, serta pengelolaan data dan proses update dari sebuah informasi akan menjadi lebih mudah.
Paul Mockapertis dari University of Southern California Information Science Institute di Marina del Rey, California, dipilih sebagai orang yang bertanggung jawab terhadap rancangan, desain, arsitektur dan implementasi dari sistem pengelolaan data host yang baru. Pada tahun 1984 beliau merilis RFC (Request For Comment) 882 dan RFC 883 yang menjelaskan tentang Domain Name System (DNS). Kemudian disusul dengan RFC 1034 dan RFC 1035 yang juga menambahkan tentang masalah kemanan DNS, penerapan (implementasi), pengelolaan (adminstrative),mekanisme pembaharuan data secara dinamis, serta kemanan data dalam sebuah domain dan lain-lainnya.
(DNS and BIND 3rd Edition, Paul Albitz & Cricket Liu, 1998 Hal 3)

Konsep dan hirarki DNS

DNS adalah suatu bentuk database yang terdistribusi, dimana pengelolaan secara lokal terhadap suatu data akan segera diteruskan ke seluruh jaringan (internet) dengan menggunakan skema client-server. Suatu program yang dinamakan name server, mengandung semua segmen informasi dari database dan juga merupakan resolver bagi client-client yang berhubungan ataupun menggunakannya.
Struktur dari database DNS bisa diibaratkan dengan dengan struktur file dari sebuah sistem operasi UNIX. Seluruh database digambarkan sebagai sebuah struktur terbalik dari sebuah pohon (tree) dimana pada puncaknya disebut dengan root node. Pada setiap node dalam tree tersebut mempunyai keterangan (label) misalnya, .org, .com, .edu, .net, .id dan lain-lainnya, yang relatif rerhadap puncaknya (parent).Ini bisa diibaratkan dengan relative pathname pada sistem file UNIX,seperti direktori bin, usr, var, etc dan lain sebagainya. Pada puncak root node dalam sebuah sistem DNS dinotasikan dengan "." atau "/" pada sistem file UNIX.
Pada setiap node juga merupakan root dari subtree, atau pada sistem file UNIX merupakan root direktori dari sebuah direktori. Hal ini pada sistem DNS disebut dengan nama domain. Pada tiap domain juga memungkinkan nama subtree dan bisa berbeda pula, hal ini disebut subdomain atau subdirektori pada sistem file UNIX. Pada bagian subdomainjuga memungkinkan adanya subtree lagi yang bisa dikelola oleh organisasi yang berbeda dengan domain utamanya.
(DNS and BIND 3rd Edition, Paul Albitz & Cricket Liu, 1998 Hal 4)

Sejarah BIND

Program DNS yang bernama JEEVES pertama kali diimplementasikan dan ditulis sendiri oleh Paul Mockapertis. Kemudian diteruskan oleh BIND (versi 4.8.3) yang diimplementasikan pada sistem operasi 4.3 BSD UNIX yang ditulis oleh Douglas Terry, Mark Painter, David Riggle dan Songnian Zhou dari Computer Systems Research Group (CSRG) pada Universitas California di Berkeley. Pada tahun antara 1985-1987, Kevin Dunlap seseorang dari Digital Equipment Corporation (DEC) bergabung dengan CSRG yang kemudian diikuti oleh Doug Kingston, Craig Partridge, Smoot Carl- Mitchell, Mike Muuss, Jim Bloom dan Mike Schwartz. Pemimpin dari proyek ini adalah Mike Karels dan O. Kure.
BIND versi 4.9 dan 4.9.1 kemudian dirilis oleh DEC (yang sekarang diakusisi oleh Compaq Computer Corporation). Pemimpin dari proyek ini adalah Paul Vixie yang merupakan karyawan dari DEC serta dibantu oleh Phil Almquist, Robert Elz, Alan Barrett, Paul Albitz, Bryan Beecher, Andrew Partan, Andy Cherenson, Tom Limoncelli, Berthold Paffrath, Fuat Baran, Anant Kumar, Art Harkin, Win Treese, Don Lewis, Christophe Wolfhugel, dan lain-lainnya. BIND versi 4.9.2 kemudian diambil alih oleh Vixie Enterprises, dan Paul Vixie menjadi arsitek dan programmernya. BIND mulai dari versi 4.9.3 dan seterusnya kemudian diambil alih oleh Internet Software Consortium (ISC) dan akhirnya untuk pertama kalinya, pada tanggal 8 Mei 1997 Bob Halley dan Paul Vixie merilis versi BIND untuk keperluan produksi. Sekarang BINDversi 4 sudah mulai jarang digunakan, dan sebagai penggantinya adalah BIND versi 8 dan versi 9.
(http://www.isc.org/products/BIND/bind-history.html)

Cara kerja DNS

Ketika anda melakukan query (bisa berupa ping, ssh, dig, host, nslookup, email, dan lain sebagainya) ke sebuah host misalnya durmagati.ee.kurowo.edu maka name server akan memeriksa terlebih dahulu apakah ada record host tersebut di cache name server lokal. Jika tidak ada, name serverlokal akan melakukan query kepada root server dan mereferensikan name server untuk TLD .edu , name server lokal kembali melakukan query kepada name server .edu dengan jenis query yang sama dan mereferensikan kurowo.edu . Name server lokal kembali melakukan query ke name server kurowo.edu dan mereferensikan query selanjutnya ke name server lokal yaitu ee.kurowo.edu . Kemudian name server lokal melakukan query kepada name server lokal yaitu ee.kurowo.edu dan akhirnya mendapatkan jawaban address yang diminta. Penamaan host durmagati.ee.kurowo.edu mungkin bisa diartikan nama sebuah komputer (durmagati) pada Electrical Engineering Department (ee) pada Universitas Kurowo (kurowo.edu) , mungkin juga salah :)

2. Instalasi BIND




Anda bisa mendapatkan softare BIND yang paling baru dari website resmi ISC dengan alamat http://www.isc.org/products/BIND. Ketika tulisan ini dibuat versi calon rils (release candidate/rc) yang paling baru adalah 9.2.2rc1 (dirilis pada tanggal 14 Agustus 2002) dan versi stable 9.2.1 (dirilis pada tanggal 1 Mei 2002). Kebetulan mesin yang digunakan untuk percobaan adalah menggunakan sistem operasi Linux dengan distro Redhat 7.2 (Enigma), tentu anda bisa menggunakan distro favorit anda yang lain :). Karena pada distro Redhat pada instalasi default sudah menyertakan BIND dalam format RPM, maka langkah pertama adalah menghapus software tersebut dari sistem. Jika anda tidak menggunakan Redhat ataupun tidak ada software BIND yang telah ada, anda bisa melewati langkah berikut ini (INGAT, jika ada BIND yang telah jalan dan anda ingin melakukan upgrade, silakan kreatif dengan membuat salinan atau backup terlebih dahulu) :

[root@wedus asfik]# for a in $(rpm -qa | grep ^bind); do rpm -e --nodeps $a; done 
[root@wedus asfik]# userdel -r named 
[root@wedus asfik]# rm -rf /var/named 
Diasumsikan anda terhubung ke internet dan terdapat utilitas wget untuk mendowload software dari ISC, jika anda telah mempunyai source BIND anda bisa melewati langkah berikut ini :

[root@wedus asfik]# wget ftp://ftp.isc.org/isc/bind9/9.2.2rc1/bind-9.2.2rc1.tar.gz 
Kemudian kita mekarkan file source, melakukan kompilasi dan menambah user yang akan menjalakan BIND, pada proses make install akan terbentuk direktori /usr/local/named sebagai direktori utama dimana software ini disimpan :

[root@wedus asfik]# tar -xzvf bind-9.2.2rc1.tar.gz 
[root@wedus asfik]# cd bind-9.2.2rc1
[root@wedus bind-9.2.2rc1]# ./configure --prefix=/usr/local/named 
[root@wedus bind-9.2.2rc1]# make 
[root@wedus bind-9.2.2rc1]# make install
[root@wedus bind-9.2.2rc1]# adduser -d /var/named -s /bin/false named 
Ganti direktori ke home direktori user named serta mendownload file named.root yang berisi tentang informasi dari root-servers :

[root@wedus bind-9.2.2rc1]# cd /var/named 
[root@wedus named]# wget ftp://internic.net/domain/named.root
Kemudian buat file untuk reverse PTR localhost (anda bisa menggunakan editor favorit anda, disini kita menggunakan vi) :

[root@wedus named]# vi db.127.0.0 
Isi file db.127.0.0 adalah :

$TTL 86400 
@       IN      SOA     localhost. root.localhost. (  
                      2003021500      ; serial
                      28800           ; refresh
                      14400           ; retry
                      3600000         ; expiry 
                      86400 )         ; minimum

        IN      NS      localhost.
1       IN      PTR     localhost. 
Kemudian salin file db.127.0.0 ke alamat network IP anda (bisa IP intranet atau IP yang anda dapatkan dari ISP anda), disini dimisalkan network yang akan kita reverse adalah 10.126.24.0/24 dan IP 10.126.24.1 adalah IP dimana software BIND akan kita install :

[root@wedus named]# cp db.127.0.0 db.10.126.24
Kemudian buat file yang berisi tentang zone dari localhost :

[root@wedus named]# vi db.localhost
Isi dari file db.localhost adalah :

$TTL 86400 
$ORIGIN localhost. 
@       IN      SOA     localhost. root.localhost. (
                        2003021500      ; serial
                        28800           ; refresh
                        14400           ; retry
                        3600000         ; expiry
                        86400 )         ; minimum

        IN      NS      localhost.
        IN      A       127.0.0.1 
Buat sebuah direktori untuk menyimpan file konfigurasi dari daemon program BIND :

[root@wedus named]# mkdir /usr/local/named/etc
Buat file /usr/local/named/etc/named.conf yang akan dijadikan sebagai file konfigurasi dari program BIND :

[root@wedus named]# vi /usr/local/named/etc/named.conf
Isi dari file /usr/local/named/etc/named.conf adalah :

options {
        directory "/var/named";
        allow-transfer { 10.126.24.2/32; };
        pid-file "/var/named/named.pid";
};

logging {
        category lame-servers { null; };
};

zone "." IN {
        type hint;
        file "named.root";
};

zone "localhost" IN {
        type master;
        file "db.localhost";
        allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "db.127.0.0";
        allow-update { none; };
};

zone "24.126.10.in-addr.arpa" IN {
        type master;
        file "db.10.126.24";
}; 
Kemudian meng-generate file konfigurasi yang akan digunakan oleh program rndc, ingat hasil dari perintah rndc-confgen bisa jadi berbeda dengan apa yang ditampilkan disini :

[root@wedus named]# /usr/local/named/sbin/rndc-confgen 
Kemudian copy-paste dari hasil perintah tersebut diatas mulai dari baris "# Start of rndc.conf" sampai dengan baris "# End of rndc.conf", simpan dengan nama file /usr/local/named/etc/rndc.conf . Kemudian copy-paste lagi dengan menghilangkan tanda "#", mulai dari baris "# key "rndc-key"..." sampai dengan baris yang hampir paling bawah diatas baris "# End of named.conf " yaitu sampai dengan baris "};" kemudian tambahkan pada file /usr/local/named/etc/named.conf . Sebagai contohnya adalah sebagai berikut ini, isi dari file /usr/local/named/etc/rndc.confmisalnya :

# Start of rndc.conf
key "rndc-key" {
        algorithm hmac-md5;
        secret "2LCJImnMimOwc1odWR6jfg==";
};

options {
        default-key "rndc-key";
        default-server 127.0.0.1;
        default-port 953;
};
# End of rndc.conf 
Sedangkan pada file /usr/local/named/etc/named.conf ditambahkan sebagai berikut :

key "rndc-key" {
       algorithm hmac-md5;
       secret "2LCJImnMimOwc1odWR6jfg==";
};

controls {
        inet 127.0.0.1 port 953
        allow { 127.0.0.1; } keys { "rndc-key"; };
};
Atau mungkin anda bisa menggunakan trik dibawah ini (tapi mungkin tidak selalu berhasil seperti yang anda harapkan, use it at your own risk :) ) :

[root@wedus named]# /usr/local/named/sbin/rndc-confgen > confgen.tmp
[root@wedus named]# grep -v "^#" confgen.tmp > /usr/local/named/etc/rndc.conf
[root@wedus named]# grep "^#" confgen.tmp | sed 1,3d | sed -e "s/\# //g" | sed -e "s/End of named.conf//g" >> /usr/local/named/etc/named.conf
[root@wedus named]# rm -rf confgen.tmp
Kemudian langkah selanjutnya adalah mengubah kepemilikan home direktori dari user named, kemudian menjalankan daemon dari program BIND :

[root@wedus named]# chown -R named.named /var/named
[root@wedus named]# /usr/local/named/sbin/named -u named -c /usr/local/named/etc/named.conf
Jika sukses anda bisa melihat pada file /var/log/messages pesan-pesan sebagai berikut :




[root@wedus named]# tail -f /var/log/messages
Feb 15 12:54:18 wedus named[25139]: starting BIND 9.2.2rc1 -u named -c /usr/local/named/etc/named.conf
Feb 15 12:54:18 wedus named[25139]: using 1 CPU
Feb 15 12:54:18 wedus named[25139]: loading configuration from '/usr/local/named/etc/named.conf' 
Feb 15 12:54:18 wedus named[25139]: no IPv6 interfaces found 
Feb 15 12:54:18 wedus named[25139]: listening on IPv4 interface lo, 127.0.0.1#53 
Feb 15 12:54:18 wedus named[25139]: listening on IPv4 interface eth0, 10.126.24.1#53 
Feb 15 12:54:18 wedus named[25139]: command channel listening on 127.0.0.1#953 
Feb 15 12:54:18 wedus named[25139]: zone 24.126.10.in-addr.arpa/IN: loaded serial 2003021500
Feb 15 12:54:18 wedus named[25139]: zone 0.0.127.in-addr.arpa/IN: loaded serial 2003021500
Feb 15 12:54:18 wedus named[25139]: zone localhost/IN: loaded serial 2003021500
Feb 15 12:54:18 wedus named[25139]: running
Untuk mengaktifkan daemon BIND setiap kali komputer direstar, tambahkan perintah "/usr/local/named/sbin/named -u named -c /usr/local/named/etc/named.conf" pada file rc.local didistro kesayangan anda. Jika anda menggunakan Redhat file rc.local terdapat pada direktori /etc, misalnya :

[root@wedus named]# echo "/usr/local/named/sbin/named -u named -c /usr/local/named/etc/named.conf" >> /etc/rc.local
Kemudian kita set resolver agar menggunakan name server localhost:

[root@wedus named]# echo "nameserver 127.0.0.1" > /etc/resolv.conf 
Testing query menggunakan name server localhost dengan perintah host :

[root@wedus named]# host 127.0.0.1
1.0.0.127.in-addr.arpa domain name pointer localhost.
[root@wedus named]# host localhost
localhost has address 127.0.0.1 
Atau dengan menggunakan perintah dig :

[root@wedus named]# dig -x 127.0.0.1
; <<>> DiG 9.2.2rc1 <<>> -x 127.0.0.1
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64212
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;1.0.0.127.in-addr.arpa.                IN      PTR

;; ANSWER SECTION:
1.0.0.127.in-addr.arpa. 86400   IN      PTR     localhost.

;; AUTHORITY SECTION:
0.0.127.in-addr.arpa.   86400   IN      NS      localhost.

;; ADDITIONAL SECTION:
localhost.              86400   IN      A       127.0.0.1

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 15 13:58:48 2003
;; MSG SIZE  rcvd: 93
Jika anda tersambung ke internet anda bisa mencoba untuk query ke suatu host misalnya :

[root@wedus named]# host www.its-sby.edu
www.its-sby.edu is an alias for ns2.its-sby.edu.
ns2.its-sby.edu has address 202.155.84.179 
Anda juga bisa mengeset client anda untuk menggunakan name server yang baru saja anda konfigurasi untuk melayani query. Untuk sistem operasi Windows 2000 Server (tm) adalah sebagai berikut : klik kanan pada "My Network Places" pilih "Properties", klik kanan pada "Local Area Connection" pilih "Properties", pilih pada "Internet Protocol (TCP/IP)" klik "Properties", klik radio button pada "Use the following DNS server addresses", isikan pada "Preferred DNS server" alamat IP dimana server DNS/BIND anda tersebut diinstall, disini diumpamakan IPnya adalah 10.126.24.1 . Untuk sistem operasi Windows98 (tm) adalah : dari menu "Start" klik "Settings", klik pada "Control Panel", klik pada "Network" klik pada "TCP/IP" pilih "Properties", pilih pada tabulasi "DNS Configuration" pilih pada "Enable DNS", kemudian pada "DNS Server Search Order" isikan alamat IP dimana server DNS/BIND anda tersebut diinstall, disini diumpamakan 10.126.24.1
Sampai pada langkah ini anda telah mengkonfigurasi BIND sebagai "caching only name server" yang akan menjawab semua query DNS dan mengingat-ingat record tersebut ketika anda melakukan query pada suatu record DNS yang sama. Hal ini mungkin akan membantu anda memperpendek waktu yang anda butuhkan untuk mengqueri suatu record jika anda berada pada koneksi internet yang pas-pasan :) (misalnya dialup atau kabel modem).
Jika anda terhubung ke sebuah ISP dan ingin membagi beban querydari client anda yang menuju ke server anda dengan server DNS ISP anda, maka anda bisa menggunakan opsi forwarder. Misalkan DNS server ISP anda mempunyai IP 10.11.12.1 dan 10.11.12.2 maka di file named.confpada seksi options, bisa anda tambahkan :

           forward first;
           forwarders {
                10.11.12.1;
                10.11.12.2;
           }; 

Menambah sebuah domain

Sebelum menambahkan sebuah zone untuk suatu domain, tentunya anda harus memiliki nama domain yang unik. Jika anda merencanakan penggunaan domain di lingkungan intranet, maka anda tidak perlu untuk membelinya ataupun menyewa IP statik dari suatu ISP. Namun jika anda juga merencanakan domain tersebut akan digunakan di internet, tentunya anda harus membeli melalui registrar-registrar yang disetujui oleh Internic dan mendapatkan IP statik dari ISP anda. Misalnya untuk top level domain (TLD) .COM/.NET/.ORG/.EDU/.BIZ/.INFO anda bisa mendaftarkan melalui Network Solutions Inc. ( http://www.nsi.com), GKG Inc. ( http://www.gkg.net), Register Inc. ( http://www.register.com), atau anda bisa melihat daftar registrar yang lengkap di website resmi Internic dengan URL http://www.internic.net/alpha.html . Atau jika anda merencanakan untuk menggunakan DTD-ID (.co.id,.or.id,.web.id,.war.net.id) anda bisa mendaftarkan melalui http://www.idnic.net.id. Setelah domain tersebut selesai anda daftarkan biasanya anda diminta mengkonfigurasi 2 buah name-server yang akan menghandle domain tersebut. Untuk TLD .COM/.NET/.ORG/.EDU/.BIZ/.INFO biasanya anda diminta untuk mendaftarkan dahulu IP statik yang akan digunakan sebagai name-server ke registrar dimana domain tersebut didaftarkan. Untuk DTD-ID sampai tulisan ini dibuat anda bisa langsung mengarahkan name-server anda ke IP statik yang anda dapatkan dari ISP tanpa perlu mendaftarkan IP tersebut.
Sebagai contoh anda sudah mendapatkan domain : kurowo.edu , sebagai rencana primary name server (ns1.kurowo.edu) , IP yang digunakan adalah 10.126.24.1 , secondary name server (ns2.kurowo.edu) : 10.126.24.2 , webserver (kurowo.edu maupun www.kurowo.edu) : 10.126.24.3 , ftp server (ftp.kurowo.edu) dialiaskan ke www.kurowo.edu,sedangkan sebagai primary mail exchanger (dursosono.kurowo.edu) : 10.126.24.4 , secondary mail exchanger / backup mail exchanger (duryudono.kurowo.edu) : 10.26.24.5 dan gateway(gateway.kurowo.edu)nya adalah : 10.126.24.6
Diumpamakan kita telah ssh ke IP 10.126.24.1 yang akan kita jadikan ns1.kurowo.edu setelah su - ke user root pindah ke direktori /var/namedkemudian kita bikin file database untuk zone kurowo.edu :

[root@wedus root]# cd /var/named
[root@wedus named]# vi db.kurowo.edu
Isi file db.kurowo.edu adalah sesuai data-data yang direncanakan seperti diatas :

$TTL 86400
@       IN      SOA     ns1.kurowo.edu. asfik.kurowo.edu. (
                2003021500 ; serial
                28800
                14400
                3600000
                86400
                )

                IN      NS      ns1.kurowo.edu.
                IN      NS      ns2.kurowo.edu.
                IN      MX      10 dursosono.kurowo.edu.
                IN      MX      20 duryudono.kurowo.edu.
                IN      A       10.126.24.3

ns1             IN      A       10.126.24.1
ns2             IN      A       10.126.24.2
www             IN      A       10.126.24.3
dursosono       IN      A       10.126.24.4
duryudono       IN      A       10.126.24.5
gateway         IN      A       10.126.24.6
ftp             IN      CNAME   www 
Kemudian pada file /usr/local/named/etc/named.conf ditambahkan :

zone "kurowo.edu" {
        type master;
        file "db.kurowo.edu";
}; 
Restart BIND, anda bisa menggunakan perintah rndc atau memberi sinyal HUP ke daemon named (killall -HUP named), disini kita gunakan rndc :

[root@wedus named]# /usr/local/named/sbin/rndc reload 
Kemudian amati file /var/log/messages, seharusnya ada pesan sebagai berikut :

Feb 15 14:29:32 wedus named[25232]: loading configuration from '/usr/local/named/etc/named.conf'
Feb 15 14:29:32 wedus named[25232]: no IPv6 interfaces found
Feb 15 14:29:32 wedus named[25232]: zone kurowo.edu/IN: loaded serial 2003021500
Feb 15 14:29:32 wedus named[25232]: zone kurowo.edu/IN: sending notifies (serial 2003021500)
Periksa apakah konfigurasi yang kita tambahkan sudah benar-benar sesuai, kita bisa menggunakan perintah host :

[root@wedus named]# host -t ns kurowo.edu
kurowo.edu name server ns1.kurowo.edu.
kurowo.edu name server ns2.kurowo.edu. 
[root@wedus named]# host -t mx kurowo.edu
kurowo.edu mail is handled by 10 dursosono.kurowo.edu.
kurowo.edu mail is handled by 20 duryudono.kurowo.edu.
[root@wedus named]# host www.kurowo.edu
www.kurowo.edu has address 10.126.24.3
Jika IP 10.126.24.3 sudah terhubung ke jaringan, anda bisa periksa dengan menggunakan ping ke hostnya langsung :

[root@wedus named]# ping www.kurowo.edu
PING www.kurowo.edu (10.126.24.3) from 10.126.24.1: 56(84) bytes of data.
64 bytes from  10.126.24.3: icmp_seq=0 ttl=255 time=223 usec
64 bytes from  10.126.24.3: icmp_seq=1 ttl=255 time=223 usec
64 bytes from  10.126.24.3: icmp_seq=2 ttl=255 time=242 usec

--- www.kurowo.edu ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
Atau anda juga bisa menggunakan perintah dig :

[root@wedus named]# dig kurowo.edu
; <<>> DiG 9.2.2rc1 <<>> kurowo.edu
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50880
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;kurowo.edu.                 IN      A

;; ANSWER SECTION:
kurowo.edu.          86400   IN      A       10.126.24.3

;; AUTHORITY SECTION:
kurowo.edu.          86400   IN      NS      ns2.kurowo.edu.
kurowo.edu.          86400   IN      NS      ns1.kurowo.edu.

;; ADDITIONAL SECTION:
ns1.kurowo.edu.      86400   IN      A       10.126.24.1
ns2.kurowo.edu.      86400   IN      A       10.126.24.2

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 15 14:32:31 2003
;; MSG SIZE  rcvd: 115
CATATAN : Setiap pembaharuan record terhadap database suatu zone selalu naikkan nomor serial ke yang lebih tinggi dari sebelumnya

Mengelola zone reverse (PTR)

Jika anda juga ingin merencanakan untuk mengelola zone PTR dari IP yang anda peroleh dari ISP anda, tentunya anda harus menanyakan dahulu ke ISP anda tentang delegasinya sehingga anda mempunya hak untuk mengelola reverse PTR IP anda. Sebagai contoh anda mendapatkan satu kelas C IP yaitu 10.126.24.0/24 dan sudah didelegasikan secara penuh oleh ISP anda, maka pada file named.conf yang telah dibuat pada seksi sebelumnya kita pastikan sudah terdapat zone untuk 24.126.10.in-addr.arpa,kemudian edit kembali file db.10.126.24 :

[root@wedus named]# vi db.10.126.24
Ubah isi dari file db.10.126.24 menjadi :

$TTL 86400
@       IN      SOA     ns1.kurowo.edu. asfik.kurowo.edu. (
                        2003021501      ; serial
                        28800           ; refresh
                        14400           ; retry
                        3600000         ; expiry
                        86400 )         ; minimum

        IN      NS      ns1.kurowo.edu.
        IN      NS      ns2.kurowo.edu.

1       IN      PTR     ns1.kurowo.edu.
2       IN      PTR     ns2.kurowo.edu.
3       IN      PTR     www.kurowo.edu.
4       IN      PTR     dursosono.kurowo.edu.
5       IN      PTR     duryudono.kurowo.edu.
6       IN      PTR     gateway.kurowo.edu.
Restart daemon BIND (killall -HUP named) :

[root@wedus named]# /usr/local/named/sbin/rndc reload
Periksa kembali apakah PTR yang kita seting sudah sesuai dengan keinginan, anda bisa menggunakan perintah host :

[root@wedus named]# host 10.126.24.1
1.24.126.10.in-addr.arpa domain name pointer ns1.kurowo.edu.
[root@wedus named]# host 10.126.24.2
2.24.126.10.in-addr.arpa domain name pointer ns2.kurowo.edu.
[root@wedus named]# host 10.126.24.3 
3.24.126.10.in-addr.arpa domain name pointer www.kurowo.edu. 
[root@wedus named]# host 10.126.24.4
4.24.126.10.in-addr.arpa domain name pointer dursosono.kurowo.edu. 
[root@wedus named]# host 10.126.24.5
5.24.126.10.in-addr.arpa domain name pointer duryudono.kurowo.edu. 
[root@wedus named]# host 10.126.24.6
6.24.126.10.in-addr.arpa domain name pointer gateway.kurowo.edu.
Atau menggunakan perintah dig :

[root@wedus named]# dig -x 10.126.24.4
; <<>> DiG 9.2.2rc1 <<>> -x 10.126.24.4
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30843
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;4.24.126.10.in-addr.arpa.     IN      PTR

;; ANSWER SECTION:
4.24.126.10.in-addr.arpa. 86400 IN     PTR     dursosono.kurowo.edu.

;; AUTHORITY SECTION:
24.126.10.in-addr.arpa. 86400   IN      NS      ns1.kurowo.edu.
24.126.10.in-addr.arpa. 86400   IN      NS      ns2.kurowo.edu.

;; ADDITIONAL SECTION:
ns1.kurowo.edu.      86400   IN      A       10.126.24.1
ns2.kurowo.edu.      86400   IN      A       10.126.24.2

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 15 14:53:44 2003
;; MSG SIZE  rcvd: 142
Atau anda juga bisa memeriksa dengan menggunakan name serverISP anda :

[root@wedus named]# host 10.126.24.4 ns1.myloveleyisp.net.id
Using domain server:
Name: ns1.myloveleyisp.net.id
Address: 10.11.12.1#53
Aliases:

4.24.126.10.in-addr.arpa. domain name pointer dursosono.kurowo.edu

Membuat secondary name server

Setelah anda selesai membuat primary name server (ns1), langkah selanjutnya adalah membuat secondary name server (ns2). Tujuannya adalah untuk menerima query dns jika pada primary name server (ns1)sebagai server dns yang utama mengalami gangguan teknis ataupun terlalu sibuk. Oleh karena idealnya secondary name server (ns2) biasanya diletakkan pada network yang berbeda dengan primary name server (ns1),tentunya secondary name server (ns2) ini membutuhkan komputer/mesin yang lain (terpisah dari primary-nya/ns2) . Langkah instalasi secondary name server adalah sama ketika anda mengkonfigurasi primary name server. Namun, file yang yang digunakan hanyalah db.127.0.0, db.localhost,dan named.root.
Untuk memastikan hanya host dengan IP 10.126.24.2/32 (ns2) yang bisa mentransfer zone dari ns1, maka pastikan pada file named.confdi ns1 pada bagian options terdapat :

allow-transfer { 10.126.24.2/32; };
Kemudian anda bisa login (ssh) ke ns2, dan kemudian buat file named.conf yang isinya adalah sebagai berikut :

options {
        directory "/var/named";
        pid-file "/var/named/named.pid"; };

logging {
        category lame-servers { null; };
};

zone "." IN {
        type hint;
        file "named.root";
};

zone "localhost" IN {
        type master;
        file "db.localhost";
        allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "db.127.0.0";
        allow-update { none; };
};

zone "kurowo.edu" {
        type slave;
        file "dbs.kurowo.edu";
        masters { 10.126.24.1; };
}; 

zone "24.126.10.in-addr.arpa" {
        file "dbs.10.126.24";
        masters { 202.145.6.99; };
};
Kemdian restart daemon DNS di ns2 dengan perinta rndc (killall -HUP named) , jika sukses maka zone kurowo.edu dan zone 24.126.10.in-addr.arpa segera ditransfer dari ns1, dan pada file /var/log/messages terdapat pesan sebagai berikut :

Feb 15 14:31:47 kadal named[630]: transfer of 'kurowo.edu' from 10.126.24.1#53: end of transfer 
Feb 15 14:31:47 kadal named[630]: transfer of '24.126.10.in-addr.arpa' from 10.126.24.1#53: end of transfer
Jika anda perhatikan juga file /var/log/messages pada ns1 maka akan menghasilkan pesan berikut :

Feb 15 14:42:43 wedus named[25232]: client 10.126.24.2#3918: transfer of 'kurowo.edu/IN': AXFR started
Feb 15 14:42:43 wedus named[25232]: client 10.126.24.2#1527: transfer of '24.126.10.in-addr.arpa/IN': AXFR started
Jika sukses, berarti primary name server (ns1) dan secondary name server (ns2) sudah beroperasi dengan benar. Ketika anda ingin menambahkan domain baru lagi yang lain, misalnya ayodyo.co.id, anda tinggal mengulangi langkah-langkah dalam seksi "Menambah sebuah domain" . Ketika domain yang anda kelola telah mencapai jumlah ribuan nama domain misalnya, dan anda ingin memisahkan data tersebut dari file konfigurasi named.conf, anda bisa menggunakan include di named.conf , misalnya :

include "/usr/local/named/etc/my.big.hosts.conf"; 

Mendelegasikan subdomain ke name server yang lain

Misalkan anda mempunyai domain kurowo.edu dan ada suatu bagian/departemen yang menginginkan pengelolaan database sendiri terhadap suatu subdomain, maka anda bisa mendelegasikan subdomain tersebut. Diumpamakan subdomain cs.kurowo.edu akan dikelola oleh Departemen Computer Science denganname server yaitu citraksa.cs.kurowo.edu (10.126.25.1) dan citraksi.cs.kurowo.edu (10.126.25.2) maka pada file named.conf di database zone kurowo.edu anda tambahkan :

; cs.kurowo.edu dikelola oleh name server ini
cs              IN      NS      citraksa.cs.kurowo.edu.
                IN      NS      citraksi.cs.kurowo.edu.
citraksa.cs     IN      A       10.126.25.1
citraksi.cs     IN      A       10.126.25.2 
Restart daemon named, dan selanjutnya subdomain tersebut telah didelegasikan.

3. Istilah

Beberapa istilah/singkatan yang digunakan dalam database pada sebuah zone :

  • TTL : Time To Live
  • SOA : Start of Authority
  • NS : Name Server
  • MX : Mail Exchanger
  • TXT : Text
  • A : Adrress (name-to-address mapping)
  • PTR : Pointer (address-to-name mapping)
  • CNAME : Canonical name

4. Change Log

16 Februari 2003

  • Penulisan dokumen ini dimulai
18 Februari 2003

  • Pembuatan dokumen versi PDF dan penambahan seksi istilah
19 Februari 2003

  • Penambahan seksi salinan dan beberapa keterangan tentang pembaharuan serial number

5. Salinan

Salinan ijin dari Penerbit O'Reilly (Sejarah Internet, Sejarah DNS, Konsep dan hirarki DNS) :

From: Cindy Wetterlund <cindyw@xxxxxxx.com>
Subject: Re: Ask about permission  
To: Asfihani <asfik@its-sby.edu>(by way of Mary Hubben <maryh@xxxxxxx.com>) 
Cc: permissions@xxxxxxx.com, maryh@xxxxxxx.com 
Date: Tue, 18 Feb 2003 13:51:35 -0800 
X-Mailer: QUALCOMM Windows Eudora Version 4.3.2 
X-Spam-Status: No, hits=-5.0 required=5.0 tests=IN_REP_TO version=2.20 
X-Spam-Level:  Message-Id: <4.3.2.7.2.20030218134230.023b05f8@xxxx.xxxx.xxxx.com>

Hello Asfihani,
Thank you for your mail and inquiry.

O'Reilly gives you permission to use the below mentioned material 
from "DNS and BIND" 3rd edition for educational purposes only.  
Since there is a new edition available, it will be appreciated if you add to 
the reference information a link to the source http://www.oreilly.com/catalog/dns4/
so readers know where to find the most current information.

I hope this is helpful.
Best,
Cindy
Salinan ijin dari Internet Software Consortium (Sejarah BIND) :

From: Paul Vixie <paul@xxxxxxxx.com> 
Subject: Re: Ask about permission  
To: Asfihani <asfik@its-sby.edu> 
Cc: info@xxxxxxx.org Date: Mon, 17 Feb 2003 15:59:20 +0000 
X-Mailer: MH-E 7.2; nmh 1.0.4; GNU Emacs 21.2.1 
X-Spam-Status: No, hits=-5.0 required=5.0 tests=IN_REP_TO version=2.20 
X-Spam-Level:  Message-Id: <20030217155920.A6FFA379EF3@as.xxxxx.com>

no problem.  please give us attribution when you quote our material. 
but, you may quote as much of it as you wish. 

6. Referensi