Saturday, December 31, 2005

The Power of NAT


Network Address Translation (NAT) adalah suatu teknik untuk mengubah suatu IP address ke IP address yg lain. Hal ini bisa dikarenakan karena di jaringan kita mengunakan network address yg disebut private address space di RFC 1918, yaitu:


10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)


Dan karena ini adalah private address, jaringan kita tentunya tidak dapat berkomunikasi dgn jaringan lain di Internet, karena semua host yg ingin terkoneksi di Internet harus menggunakan global atau public IP address. Untuk ini kita perlu men-translate IP address kita yg private menjadi public IP address.


Alasan lain untuk menggunakan NAT adalah security. Kita bisa men-translate seluruh jaringan kita (missal 254 PC) menjadi 1 public IP. Teknik ini disebut many-to-one NAT atau biasa disebut Port Address Translation (PAT). Teknik ini sangat bermanfaat jika kita menginginkan user di jaringan kita untuk meng-inisiasi koneksi ke Internet (browsing internet atau mengirim email misalnya), tapi kita tidak menginginkan host dari Internet untk meng-inisiasi koneksi ke PC user kita.
Host dari Internet tidak bisa meng-inisiasi koneksi ke internal host kita karena hanya ada 1 public IP address yg terlihat di jaringan kita, sedangkan jumlah PC yg sebenarnya ada lebih dari 1. Tentunya jika PC kita yg meng-inisiasi, maka reply atau return packet akan bisa
kembali karena device yg kita gunakan untuk melakukan NAT, akan memiliki mapping table dari NAT yg terjadi di jaringan.


Untuk kasus one-to-one NAT, dimana 1 private IP akan di-translate menjadi 1 global IP, maka mapping nya akan spt berikut:


Router#sh ip nat tra
Pro Inside global Inside local Outside local Outside global
— 195.1.134.1 192.168.1.1 — —
— 195.1.134.2 192.168.1.2 — —


Dalam contoh ini, IP private 192.168.1.1 di-translate ke public IP 195.1.134.1, IP private 192.168.1.2 di-translate ke public IP 195.1.134.2 dst.
Inside local adalah terminologi utk real IP address PC di jaringan kita, sedangkan Inside Global adalah public IP address yg kita gunakan untuk men-translasi real IP address tsb.
Outside local adalah local IP address dari tujuan kita sebagaimana kita melihatnya dari jaringan kita. Sedangkan Outside global adalah global IP address dari tujuan kita yg terlihat di Internet.


Ini bermanfaat utk destination based NAT, sbg contoh sbg berikut:
Ada server di Internet dgn global IP address 11.11.11.11, tapi kita ingin semua users di jaringan kita utk melihat server tsb sbg 192.168.1.11
Maka kita bisa melakukan destination based NAT, dgn outside local adalah 192.168.1.11 dan outside global, IP address tujuan yg sebenernya, adalah 11.11.11.11.


Jika kita tidak melakukan destination based NAT, maka outside local dan outside global dari tujuan kita akan sama, yaitu public IP tujuan yg sebenernya, dan ini bisa dilihat di contoh mapping PAT.


Untuk contoh many-to-one NAT atau PAT, dimana banyak real IP dari PC kita di-translate menjadi 1 public IP, maka contoh mapping nya sbg berikut:


Router#sh ip nat tra
Pro Inside global Inside local Outside local Outside global
tcp 195.1.134.4:12338 192.168.1.3:12338 33.33.33.33:23 33.33.33.33:23
tcp 195.1.134.4:12337 192.168.1.2:12337 22.22.22.22:23 22.22.22.22:23


Dalam contoh ini, kita melakukan telnet (destination tcp port 23) ke remote host 22.22.22.22
dari private IP 192.168.1.2, dan telnet ke remote host 33.33.33.33 dari private IP 192.168.1.3.
Kita bisa lihat bahwa ke-2 private IP kita di-translate ke public IP yg sama, yaitu 195.1.134.4. Yg membedakan adalah source port yg digunakan di public IP.
Jadi di mapping ini terlihat bahwa koneksi dari 192.168.1.2 di map ke 195.1.134.4 port 12337, sedangkan koneksi dari 192.168.1.3 di map ke 195.1.134.4 port 12338.


Dgn adanya mapping ini, remote host 22.22.22.22 ketika mengirimkan paket reply (ingat di TCP/IP reply dari remote host destination portnya ditujukan ke source port dari host kita), akan mengirimkan paket ke 195.1.134.4 port 12337. Sedangkan reply packet dari 33.33.33.33 kan ke 195.1.134.4 port 12338.
Berdasarkan mapping tadi, NAT device atau router yg melakukan map bisa mengetahui bahwa packet reply dari 22.22.22.22 harus dikirimkan ke host 192.168.1.2 dan paket reply dari 33.33.33.33 harus dikirimkan ke host 192.168.1.3


Dari ke-2 contoh di atas kelihatan bahwa untuk normal NAT atau one-to-one NAT, setiap private IP akan memiliki public IP sendiri sehingga setiap host di jaringan kita masih bisa di hubungi dari luar. Host dari Internet masih bisa utk menghubungi tiap host kita karena
mereka memiliki public IP yg berbeda-beda.
Namun untuk kasus many-to-one NAT atau PAT, host dari Internet tidak dapat menghubungi setiap host karena semua host memiliki 1 public IP yg sama. Host dari internet hanya bisa me-reply koneksi dari host kita berdasarkan source port yg berbeda-beda.


Ok, langsung masuk contoh konfigurasi biar makin jelas. Contoh dilakukan dgn menggunakan Cisco router dgn 1 ethernet interface konek ke internal network dan 1 serial interface konek ke Internet. Kalo udah ngerti konsepnya bisa pake NAT device apa aja, gue sendiri buat memproteksi home lab gue pake OpenBSD PF.


Topologi:
Internal network – (eth0) router (s0/0) – internet


Internal network kita menggunakan private IP 192.168.1.0/24. IP address eth0 router kita 192.168.1.1 yg merupakan default gateway dari semua host di internal network.


1. Many-to-one PAT, semua private IP ke 1 public IP address


Kita cuma dapet 1 IP address dari ISP 195.1.134.2/30 yg juga merupakan IP address serial 0/0, router ISP kita menggunakan IP 195.1.134.1 yg juga merupakan default route router kita.
Maka konfigurasi PAT sbg berikut:
- Buat ACL yg mem-permit semua network 192.168.1.0/24


Router(config)#ip access-list standard internal_network
Router(config-std-nacl)#permit 192.168.1.0 0.0.0.255


- Bikin NAT rule untuk mentranslate net 192.168.1.0/24 ke 195.1.134.2 yg merupakan IP address s0/0


Router(config)#ip nat inside source list internal_network interface s0/0 overload


- enable NAT di interface e0/0 dan s0/0


Router(config)#int e0/0
Router(config-if)#ip nat inside


Router(config)#int s0/0
Router(config-if)#ip nat outside


2. ISP kita ternyata memberikan kita public IP 195.1.134.0/24, yg berarti range public IP yg bisa kita gunakan adalah 195.1.134.1 – 195.1.134.254. Ini berarti kita bisa melakukan one-to-one NAT, contoh:
192.168.1.1 ke 195.1.134.1
192.168.1.2 ke 195.1.134.2, dst.


Maka konfigurasi yg perlu dilakukan hanya:


Router(config)#ip nat inside source static network 192.168.1.0 195.1.134.0 /24


Tentunya enable NAT di e0/0 dan s0/0 spt contoh no.1


3. Kalo gak dapet persis 254 public IP gimana? Misal dapetnya 195.1.134.0/29, yg berarti range public IP yg bisa digunakan adalah 195.1.134.1-195.1.134.6 (ingat dgn /29 ada total 8 IP dari 0 sampai 7, tapi 0 adalah network address dan 7 sebagai IP terakhir merupakan
broadcast address).


Jika kita mau mentranslate net 192.168.1.0/24 ke range IP 195.1.134.1-195.1.134.6


- bikin NAT pool


Router(config)#ip nat pool public_IP 195.1.134.1 195.1.134.6 netmask 255.255.255.248


- bikin NAT rule, pake ACL internal_network spt contoh no.1 buat permit semua internal net 192.168.1.0/24


Router(config)#ip nat inside source list intenal_network pool public_IP


Jgn lupa enable NAT di e0/0 dan s0/0 spt contoh no.1


4. Ada masalah dgn contoh no.3? Ada.


Dalam 1 waktu, hanya ada 6 internal private IP yg bisa di translate ke 6 public IP. Jadi koneksi dari internal host ke 7 akan gagal dan harus menunggu sampai translation mapping timeout dan di clear, sehingga public ip kembali tersedia.


Cara mengatasinya, kita bisa bikin pool dgn 5 public IP address, dan 1 IP terakhir buat PAT. IP terakhir, 195.1.134.6 digunakan sbg IP address utk interface s0/0


Router(config)#ip nat pool public_IP 195.1.134.1 195.1.134.5 netmask 255.255.255.248


Router(config)#ip nat inside source list internal_network pool public_IP
Router(config)#ip nat inside source list internal_network interface s0/0 overload


Dgn begini, 5 private IP yg pertama akan di translate ke 5 public IP di pool, sedangkan private IP yg lain akan di translate ke ip ke-6, yg merupakan ip address dari interface s0/0.


5. Ok, ayo masuk ke contoh yg lebih advance:
Kita punya 6 public IP dari range 195.1.134.1.- 195.1.134.6
IP address 195.1.134.4 kita gunakan sbg ip address interface s0/0 router kita
IP address 195.1.134.1 digunakan oleh router ISP interface s0/0, yg merupakan default gateway router kita
IP address 195.1.134.2 mau kita gunakan sbg ip address web server kita, dgn real IP 192.168.1.2
Dan IP addres 195.1.134.3 mau kita gunakan sbg ip address mail server kita, dgn real IP 192.168.1.3


Sisanya, 195.1.134.5 dan 6, akan kita pergunakan nanti jika kita punya server2 baru


- Bikin ACL buat semua network, access-list internal_network permit 192.168.1.0 0.0.0.255


- Konfigure PAT buat semua internal network ke interface s0/0


Router(config)#ip nat inside source list internal_network interface s0/0 overload


- Bikin one-to-one NAT buat web dan mail server


Router(config)#ip nat inside source static 192.168.1.2 195.1.134.2
Router(config)#ip nat inside source static 192.168.1.3 195.1.134.3


Jgn kuatir jika terjadi overlap antara static NAT diatas dgn PAT di konfigurasi sebelumnya. Static NAT akan meng-overide rule utk 192.168.1.2 dan 192.168.1.3, sehingga ke-2 IP tsb tidak akan di PAT meskipun termasuk dlm ACL internal_network.
Jgn lupa enable NAT di interface s0/0 dan e0/0 spt contoh no.1


Dan kalo kita punya IOS Firewall dan ACL ingress in interface s0/0, maka kita harus permit koneksi dari internet ke public IP web dan mail server kita, dgn port yg terkait spt tcp 80 dan 25. Jadi di ACL ingress s0/0 jgn gunakan real IP address.


6. Kita terkoneksi dgn ISP, router kita cuman dapet 1 public IP address buat interface s0/0 tapi punya web server dan mail server? Jgn kuatir, ini bisa dilakukan dgn teknik port redirection.


Jadi, bikin dulu PAT biar internal network kita bisa konek ke Internet


Router(config)#ip nat inside source list internal_network interface s0/0 overload


Trus bikin port redirection buat traffic ke port 80 dan 25, di contoh ini private IP web server kita tetap 192.168.1.2 dan mail server 192.168.1.3


Router(config)#ip nat inside source static tcp 192.168.1.2 80 interface s0/0 80
Router(config)#ip nat inside source static tcp 192.168.1.3 25 interface s0/0 25


Dgn cara begini, traffic yg datang ke public IP interface serial port 80 akan di redirect ke real IP web server 192.168.1.2, dan traffic yg datang ke serial port 25 akan di redirect ke real IP mail server 192.168.1.3
Tinggal daftar di public DNS server untuk web dan MX record mail server kita, untuk me-resolve ke public IP router interface s0/0. Keuntungan lain dgn cara PAT ke interface adalah kita bisa saja mendapatkan IP address yg berbeda-beda (dynamic IP) setiap kali konek ke ISP.
Dgn setingan di atas, kita tidak perlu kuatir IP kita akan berubah.
Hanya mungkin public IP yg kita daftarkan untuk web dan mail server di public DNS server harus selalu di-update sesuai dgn IP address yg sedang kita dapatkan.


Mulai kerasakan The Power of NAT? :)


7. Ok, seandainya kita gak mau mentranlasi koneksi dari 192.168.1.0/24 ke 192.168.2.0/24 (katakanlah ini network partner kita dan kita setup VPN misalnya), tapi kalo tujuannya ke internet maka spt contoh yg sebelumnya kita mau translasikan dgn PAT ke interface s0/0


- bikin ACL, extended dgn men-deny traffic dari net 192.168.1.0 ke 192.168.2.0, tapi permit yg lain


Router(config)#ip access-list extended selective_NAT
Router(config-ext-nacl)#deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
Router(config-ext-nacl)#permit ip 192.168.1.0 0.0.0.255 any


Lalu bikin PAT rules
Router(config)#ip nat inside source list selective_NAT interface s0/0 overload


Karena di deny di ACL, maka traffic dari net 192.168.1.0 ke 192.168.2.0 tidak akan di translate, sedangkan diluar itu akan di PAT ke interface s0/0.


8. Makin advance, misalnya kita skrg punya 2 koneksi ke Internet, lewat interface s0/0 ke ISP 1 dan lewat interface s0/1 ke ISP 2.
Ke-dua ISP tsb memberikan kita 1 public IP buat masing-masing interface serial router kita.


Kita mau pada saat internal network konek ke ISP 1, maka akan di translate dan lewat interface s0/0, sedangkan pada saat internal network konek ke ISP 2 akan di translate dan lewat interface s0/1 (penentuan traffic dari internal network akan ke ISP yg mana
sebenernya di atur oleh normal routing, atau bisa menggunakan policy based routing, tapi di contoh ini kita berasumsi routingnya sudah jalan dan fokus kita adalah NAT berdasarkan interface output dari traffic)


Jadi kita menggunakan teknik policy based routing alias route-map untuk melihat traffic dari internal network melalui interface serial yg mana, kemudian akan di PAT secara sesuai:


Router(config)#route-map to_ISP1 permit 10
Router(config-route-map)#match interface s0/0


Router(config)#route-map to_ISP2 permit 10
Router(config-route-map)#match interface s0/1


Router(config)#ip nat inside source route-map to_ISP1 interface s0/0 overload
Router(config)#ip nat inside source route-map to_ISP2 interface s0/1 overload


Dgn ke-2 route-map tsb, packet yg akan keluar melalui interface s0/0 akan match dgn route-map to_ISP1, dan di PAT ke interface s0/0 IP address.
Sedangkan packet yg akan keluad melalui interface s0/1 akan match dgn route-map to_ISP2, dan di PAT ke interface s0/1 IP address.


Sebenernya masih banyak contoh dan trick penggunaan NAT dgn Cisco router, misal load balancing dgn NAT, destination-based NAT dll. Tapi kayaknya semua contoh di atas sudah cukup buat small-medium business network.
Kalo ada masalah dgn konfigurasi NAT, periksa mapping kita dgn show ip nat translation, dan lakukan debug ip nat.


Kalo mau baca-baca lebih lanjut, coba lihat NAT technical tips dan contoh config dari CCO.


Selamat tahun baru 2006.



Wednesday, November 2, 2005

1 Out of 4


Lebaran tahun ini adalah lebaran ke-4 yg gue rayakan di luar Indo. Jujur saja, tidak ada yg bisa menggantikan rasa berlebaran bersama keluarga dan orang-orang terdekat kita. Dimulai dgn saat puasa bisa sahur dan buka bersama, malam takbiran yg selalu dirayakan di jalanan, sholat Eid di lapangan mesjid, acara sungkeman, bermaaf-maafan, and last but not least, makan ketupat dgn opor ayam dan rendang.


Sudah 3 tahun berturut-turut setiap lebaran gue tidak sholat Eid. Selalu ada alasan buat tidak melakukan itu. Bisa ketiduran, males karena khutbahnya gak ngerti dalam bahasa arab, atau sedang tidak enak badan.
Tahun ini tidak ada alasan buat tidak sholat Eid. Semenjak adanya konsulat Indonesia di Dubai, setiap tahun mereka selalu merayakan sholat Eid bersama dgn khutbah yg tentunya dalam bahasa Indonesia. Ketiduran juga tidak mungkin karena semenjak Ramadhan dimulai setiap hari gue begadang sampe pagi. Gak enak badan? Nice try!


Gue memang sejak awal tidak berniat buat sholat di konsulat. Bukan apa-apa, semenjak gue mendapat akomodasi dari salah satu customer gue di luar Dubai gue jadi jarang kemana-mana. Tidak tidur semalaman kemudian nyetir 50 km bolak-balik buat sholat Eid gue pikir bukan ide yg bagus. Dan juga gue penasaran pengen tahu bagaimana pelaksanaan Eid di mesjid-mesjid lokal di sini. 1 out of 4 is better than nothing, isn’t it?


Setelah semalaman belajar, sekitar jam 6 gue udah siap-siap mau ke mesjid. Tadinya gue mau pergi bersama ratu-ratu gue, tapi karena gue masih belum tau apakah di mesjid disediakan tempat buat perempuan dan juga karena ratu kecil gue masih tidur, gue berangkat sendirian naik mobil. Mesjid yg pertama gue datengin adalah mesjid di dalam kompleks akomodasi gue. Setiap jum’atan gue selalu ke mesjid ini. Dari segi ukuran mesjid ini tergolong besar, lebih besar dari mesjid tempat gue biasa sholat Eid di Bandung. Jemaah yg datang setiap jum’atan juga termasuk banyak, rata-rata memenuhi sampai 2/3 kapasitas mesjid. Namun mungkin dimensi bukan faktor untuk melaksanakan sholat Eid karena dari tempat parkir gue bisa lihat mesjid ini sekarang tutup dan kosong melompong.


Gue nyetir keluar kompleks sambil berusaha mengingat-ingat mesjid besar terdekat. Gue melihat beberapa mobil yg berisikan orang2 yg berpakaian muslim menuju ke arah supermarket terdekat di luar kompleks. O iya, gue langsung ingat. Ada mesjid besar berseberangan dgn supermarket itu. Dari segi ukuran, mesjid ini kira2 seukuran dgn Mesjid Salman di Bandung. Udah pasti ada sholat Eid, pikir gue.
Nyampe di depan mesjid, gue melihat sudah ada lebih dari 20-an mobil yg parkir. Orang-orang pun banyak yg sedang berjalan kaki ke arah mesjid. Hati gue langsung senang dan mencari tempat parkir. Gue juga bersyukur tidak membawa ratu-ratu gue karena memang dari luar mesjid gue tidak melihat salah satu perempuan pun.


Turun dari mobil gue mulai melihat keganjilan. Banyak orang berkerumun di luar mesjid kelihatan ragu-ragu buat masuk ke dalam. Dan tidak ada suara takbir dikumandangkan dgn speaker spt di indo, walaupun dari dalem mesjid gue mendengar sayup-sayup suara takbir. Tapi ini bukan hal aneh sebenarnya, soalnya malem takbiran pun gue jarang mendengar suara takbir yg menggetarkan langit spt di indo. Tadi malem pas magrib gue sempet mendengar takbir tapi itu juga cuman sebentar.


Dari pintu mesjid gue intip di dalam ada sekitar 2 shaf terisi dan di barisan terdepan beberapa orang duduk memimpin takbir. Melihat ini, gue tanpa ragu-ragu langsung masuk ke dalam dan mengambil tempat di barisan ke-3. Jam masih menunjukan 6.30 kurang dan setelah sholat tahiyatul mesjid dan duduk manis, gue mulai melihat beberapa keganjilan lain.


Yg pertama, takbir. Gue emang gak sholat Eid di 3 tahun terakhir, tapi sebelumnya sekitar 23 tahun berturut-turut gue selalu sholat (potong masa2 gue masih bayi dan belum layak dibawa ke mesjid he he), jadi gue sudah apal dgn kebiasaan sholat Eid di indo. Takbir dikumandangkan dgn lagu yg berbeda, kira-kira seperti ini:


Allahu Akbar (pause) Allahu Akbar (pause) Allahu Akbar (long pause)
Laa ilaHa illallah (long pause)
Allahu Akbar (pause) Allahu Akbar (long pause)
Lillahilhamdu


Takbir ini terus dikumandangkan berulang-ulang dgn nada datar, dan tanpa ada variasi spt di mesjid-mesjid indo. Sayang gue gak bawa HP buat ngerekam, yah niatnya juga mau sholat.


Yg kedua, imam. Biasanya setiap sholat Jum’at, gampang membedakan yg mana imamnya meskipun khutbah belum dimulai. Biasanya yg berewokan abis, dan memakai jubah kalo tidak putih ya hitam dgn setrip keemasan. Di mesjid ini gue lihat di barisan depan pun tidak ada yg memiliki ciri-ciri tsb.


Yg ketiga, tidak ada sound system. Mesjid segede Salman kok gak ada sound system? Terlihat beberapa jemaah berusaha menghidupkan mic tapi gagal. Dari sini gue juga bisa melihat keanehan tidak adanya pengurus mesjid yg biasanya mengkordinasi buat event-event besar spt sholat Eid ini.


Yg keempat, para jemaah yg gelisah. Hampir semua jemaah dari barisan ke-2 dan seterusnya selalu melirik-lirik ke belakang. Apakah menunggu imam? Puncaknya adalah ketika ada sekitar 20 orang yg meninggalkan mesjid. Kelihatan mencolok karena tadinya mereka duduk di barisan depan dan keluarnya bersamaan.


Gue melihat beberapa orang di barisan pertama berunding dan akhirnya satu orang menyatakan diri bersedia menjadi imam. Dia langsung berdiri dan berteriak “As sholatu.. ” dan seterusnya gue gak hapal. Tapi intinya sih ajakan buat sholat.
Orang-orang lansung berdiri dan merapatkan barisan. Beberapa orang yg tadinya sudah keluar mesjid kembali masuk ke dalam sambil berlari-lari kecil.
Sholatpun dimulai.


Ok, gue percaya bahwa orang muslim yg tinggal dan bersekolah di daerah sini hampir dipastikan menguasai benar Al Qur’an. Buktinya anak gue yg baru sekolah 2 bulan di sekolah Arab International saja sudah fasih dan hapal melantunkan 10 surah-surah pendek Qur’an.
Imam dadakan ini juga pasti jago. Hanya pembacaan suratnya kok datar dan tidak berlagu? Beda bener sama setiap kali jumat’an.


Gue berusaha untuk tetep sholat dan tidak memikirkan itu.


Tapi emang susah kali ya buat khusuk, disamping gue juga memang susah buat khusuk setiap kali sholat ;) . Di hati mulai banyak pertanyaan-pertanyaan: kok pelaksanaan Eid gak ada persiapan gini? Apa memang di mesjid ini tidak ada rencana buat sholat Eid? Tapi masak sih mesjid megah dan besar spt ini juga tidak mengadakan sholat?


Selesai sholat, si imam membalikkan badan dan mengumandangkan takbir.
Lho kok takbir lagi? Habis sholat kan saatnya khutbah sekarang?
Ternyata sambil takbir beberapa orang berunding di depan. Dan akhirnya si imam dadakan tsb naek ke mimbar, yg tidak ber sound system.
Gue gak begitu ngerti bahasa arab, tapi dari gesture dan beberapa kata-kata gue bisa menangkap kalo si imam berusaha menjelaskan kalo dia sebenernya tidak mempersiapkan diri buat khutbah karena jadi imam juga dadakan. Dia juga menjelaskan kalo sholat Eid itu harus ada khutbah jadi dia akan coba utk berkhutbah singkat.
Yg bisa gue mengerti cuman bahwa Ramadhan sudah berakhir dan kita harus tetep meningkatkan takwa. Jangan lupa sedekah.
Kemudian.. doa.
Doa pendek selesai, si imam turun mimbar dan semua orang berdiri mau bubar.
Total acara khutbah cuman kurang dari 2 menit.


Gue keluar mesjid masih tetep terheran-heran. Di mobil ketawa-ketawa sendiri. Sholat Eid pertama di negri ini kok malah jadi begini?
Sampai rumah gue buka komputer mencoba mengakses koran online lokal. Dan gue menemukan pengumuman dari koran tsb bahwa sholat Eid hanya dilaksanakan di 650 mesjid di negara ini, dan kelihatannya mesjid yg gue datengin itu meskipun ukurannya besar tapi tidak termasuk di daftar.
Now everything makes sense.


Tentunya ini tidak mengurangi nikmat lebaran buat gue sekeluarga. Kita tetep memakai baju muslim terbaik, melakukan acara sungkeman dan maaf-maafan (meskipun sambil senyum-senyum) dilanjutkan dgn makanan khas indo paling terkenal di negara manapun: indomie telor dgn baso :D
Tahun depan, kalo masih diijinkan sama yg di atas, gue lebih memilih buat sholat di konsulat indo aja kayaknya.
Selain akan bersama-sama dgn orang indo yg lain, udah pasti acara tsb teroganisir dari segi imam ataupun khutbah. Insya Allah.


Pesan SMS yg masuk pagi ini dari seorang teman:


Our lebaran this year may not be as magical due to all the chaos.
But try to have a piece of mind because you are remembered and loved by many.
Minal aidin walfaizin. Selamat Lebaran.


Eid Mubarak!



Friday, September 30, 2005

Mangan Ora Mangan


.. sing penting beli gadget!
iPod Nano! YA YA YA!


Akhirnya tadi malem dapet nano juga gue dari Gitex shopper.
Gitex, eksibisi teknologi informasi, ada dua macam: yg pertama yg mamerin teknologi2 informasi terbaru baik produk hardware, software, jaringan dll, dan yg kedua yg menjual consumer products terbaru.
Kedua event ini berada di lokasi yg berbeda. Yg pertama di Dubai World Trade Center exhibition hall dan tidak bisa melakukan transaksi jual-beli di sini. Yg kedua, disebut Gitex shopper, berlokasi di Dubai Airport expo center.


Setelah mendengar kabar bahwa nano sudah mulai dijual di shopper, tadi malem gue bergegas ke airport expo. Maklum, Gitex shopper berakhir tadi malem, 30 September. Sedangkan Gitex yg memamerkan teknologi informasi sudah berakhir 1 hari sebelumnya.


Walaupun di website resminya nano dijual seharga $199, gue dapet yg berkapasitas 2 Gb dgn harga sekitar $250. Hei, mau gimana lagi.. semua orang pengen untung kan? Model yg tersedia hanya yg berkapasitas 2 Gb. Warna yg gue pilih? Hitam donk!


Sampe rumah yg pertama gue lakukan ya buka box, trus colokin nano ke powerbook gue pake kable usb, dan mulai mentransfer mp3 dan beberapa foto dgn menggunakan aplikasi iTunes. Gue belum sempet ngutak-ngatik, cuman sempet liat ada aplikasi stopwatch, clock dan beberapa games di nano. Gak tau kenapa clock nya gak sesuai walaupun udah gue set city nya ke Abu Dhabi. Musti liat2 dulu info di Internet neh.



Lucu bgt dgn layar lcd yg kecil begitu bisa liat2 foto. Kira2 seukuran thumbnail dah. Lumayan.


Batere? Katanya sih bisa nyampe 14 jam. Gue dari tadi malem udah dengerin lebih dari 150 lagu. Kalo 1 lagu sekitar 5 menit berarti gue udah nyetel nano selama kurang lebih 12 jam. Bentar lagi kayaknya gue harus nge charge.
Paket iPod nano gak punya external charger, jadi nge charge batere bisanya dari usb pas dikonekin ke notebook.


Pagi-pagi ketemu boss gue, komentar dia waktu gue tunjukin nano: “you keep buying gadget! It’s just an mp3 player and you spent a lot of money for it?”
Gue jawab: “boss, this isn’t about mp3 player. This is about revolution. Nano is a piece of art, same thing like mac mini before. And I want to be a part of that revolution.”
Jawaban dia?
“man, you are a freak!” he heh



Friday, September 23, 2005

Jadual


Berlaku hingga 75 hari ke depan:


06:30 bangun tidur, baca2 berita di Internet
07:00 nganterin ratu kecil ke sekolah
07:30 ngobrol sama ratu
08:00 berangkat ke kantor
13:00 istirahat makan siang, pulang ke rumah
13:30 tidur siang bentar
14:00 balik lagi ke kantor
17:00 pulang ke rumah, family time
(kalo ratu2 masih tidur siang bisa ikutan tidur sebentar)
21:30 nungguin ratu2 sampe pada tidur
22:00 mulai belajar
03:00 (kadang lebih) berhenti belajar, tidur
06:30 bangun tidur, balik lagi ke jadual di atas

Weekend:
tidur sampe sebangunnya, jalan2, belajar



Sunday, July 31, 2005

Pertama


There is a first time for everything.


Apapun yang pertama kali dilakukan itu biasanya sulit untuk dilupakan. Pertama kuliah, pertama naek pesawat, pertama pacaran, pertama ngerokok, pertama kissing, pertama masuk kerja, pertama nikah (lho emang mau berapa kali?)
Demikian juga halnya dgn pertama ngeblog.


Tapi sebenernya ini bukan blog pertama gue.


Gue pernah bikin blog dari awal tahun ini tapi isinya khusus diperuntukan buat dibaca oleh orang2 di tempat gue tinggal sekarang.
Making self profile, itu tujuan gue bikin blog tersebut.
Karena gue tahu siapa2 aja yg bakal blog gue, jadi semua isi blog tsb gue atur untuk dapat menonjolkan diri gue sehingga yg membaca bisa menangkap profil gue sebagaimana yg gue mau.


Hidup penuh kepalsuan? Gak juga.
Hanya di sana gue menulis apa yg kira2 berhubungan dgn profil gue yg patut ditonjolkan. Tapi semua isinya benar.


Hasilnya apa?
Link blog tsb gue pasang di resume yg gue kirim ke suatu perusahaan.
HRD manajernya kebetulan masih muda dan dia bener2 baca blog itu sampe habis.
Trus pas ketemu dia bilang: “your blog is funny” sambil senyum senyum.
Tapi terus gue gak direkrut! :)


Lalu apa yg bakal gue isi di blog ini?
Suka-suka gue donk, blog blog gue!
Yg jelas blog ini bukanlah blog yg akan gue pake buat Making Self Profile tadi.
Blog ini cuma curahan dari apa yg ada di kepala gue.
Jurnal gue, kisah hidup gue, apa yg gue lihat, apa yg gue pikirkan.
Dan semuanya akan gue coba tuliskan tanpa memikirkan profil.