Apa Itu TCP/IP ?
TCP/IP merupakan dasar dari segalanya, tanpa mempelajari TCP/IP kemungkinan kita tidak dapat melakah maju di dunia pehackingan.
Dengankata lain, TCP/IP merupakan awal dari segalanya. Banyak orang ygmenyepelekan pentingnya mempelajari TCP/IP,
mereka mengaku dirinya“hacker” tetapi tidak mengerti sama sekali apa itu TCP/IP.
Merasa hacker hanya apabila bisa mencrash ataupun menjebol server, tetapi sebetulnyabukan itulah maksud dari segala itu. Hacker itu adalah orang yg haus akan pengetahuan, bukan haus akan penghancuran. Untuk menjadi hacker dibutuhkan kerja keras, semangat, motivasi yg tinggi serta pemahamanseluk-beluk internet itu sendiri, tanpa hal-hal tersebut mustahil andadapat menjadi seorang hacker yang tangguh.
Tulisan ini didedikasikan terutama untuk member Kecoak Elektronik dansiapa saja yang ingin mempelajari TCP/IP, bukan untuk mereka yang hanyaingin mencari jalan pintas menjadi hacker sejati. Bagi anda yg memangudah profhacking mungkin tulisan ini tidak penting, karena memangtulisan ini hanyalah pengantar belaka dan bukan merupakan referensi ygsempurna (dan jauh dari sempurna) oleh karenanya hanya dikhususkan bagimereka yg pendatang baru (newbies).
TCP/IP adalah salah satu jenis protokol yg memungkinkan kumpulankomputer untuk berkomunikasi dan bertukar data didalam suatu network(jaringan). Merupakan himpunan aturan yg memungkinkan komputer untuk berhubunganantara satu dengan yg lain, biasanya berupa bentuk / waktu / barisan /pemeriksaan error saat transmisi data.Karena TCP/IP merupakan protokol yg telah diterapkan pada hampir semuaperangkat keras dan sistem operasi. Tidak ada rangkaian protokol lain yg tersedia pada semua sistem berikut ini :
a. Novel Netware.
b. Mainframe IBM
.c. Sistem digital VMS.
d. Server Microsoft Windows NTe. Workstation UNIX, LinuX, FreeBSDf. Personal komputer DOS.
Konsep TCP/IP berawal dari kebutuhan DoD (Departement of Defense) ASakan suatu komunikasi di antara berbagai variasi komputer yg telah ada.Komputer-komputer DoD ini seringkali harus berhubungan antara satu organisasi peneliti dgn organisasi peneliti lainnya, dan harus tetapberhubungan sehingga pertahanan negara tetap berjalan selama terjadibencana, seperti ledakan nuklir. Oleh karenanya pada tahun 1969 dimulailah penelitian terhadap serangkaian protokol TCP/IP.
Di antaratujuan-tujuan penelitian ini adalah sebagai berikut :
1. Terciptanya protokol-protokol umum, DoD memerlukan suatu protokol ygdapat ditentukan untuk semua jaringan.
2. Meningkatkan efisiensi komunikasi data.
3. Dapat dipadukan dengan teknologi WAN (Wide Area Network) yg telahada.
4. Mudah dikonfigurasikan.Tahun 1968 DoD ARPAnet (Advanced Reseach Project Agency)
memulaipenelitian yg kemudian menjadi cikal bakal packet switching . Packetswitching inilah yg memungkinkan komunikasi antara lapisan network(dibahas nanti) dimana data dijalankan dan disalurkan melalui jaringandalam bentuk unit-unit kecil yg disebut packet*.
Tiap-tiap packet ini membawa informasi alamatnya masing-masing yg ditangani dengan khusus oleh jaringan tersebut dan tidak tergantung dengan paket-paket lain. Jaringan yg dikembangkan ini, yg menggunakan ARPAnet sebagai tulang punggungnya, menjadi terkenal sebagai internet. Protokol-protokol TCP/IP dikembangkan lebih lanjut pada awal 1980 danmenjadi protokol-protokol standar untuk ARPAnet pada tahun 1983.
Protokol-protokol ini mengalami peningkatan popularitas di komunitaspemakai ketika TCP/IP digabungkan menjadi versi 4.2 dari BSD (Berkeley Standard Distribution) UNIX. Versi ini digunakan secara luas padainstitusi penelitian dan pendidikan dan digunakan sebagai dasar daribeberapa penerapan UNIX komersial, termasuk SunOS dari Sun dan Ultrixdari Digital. Karena BSD UNIX mendirikan hubungan antara TCP/IP dansistem operasi UNIX, banyak implementasi UNIX sekarang menggabungkanTCP/IP.
PendahuluanRouter menggunakan informasi IP address dalam paket header IP untukmenentukan interface mana yang akan di-switch ke tujuan. Tiap-tiap layerOSI memiliki fungsi sendiri-sendiri dan tergantung dari layer lainnya. Setiap layer menerima layanan dari layer di atas dan di bawahnya. Layer application,presentation dan session pada model OSI sama dengan layer applicationpada model TCP/IP, sedangkan akses ke layanan layer transport melalui port.
.1 Layer 4 – Transport layerIP address mengijinkan routing paket antar jaringan. IP menjamin pengirimanpaket data. Layer transport bertanggung jawab untuk menjamin transmisi danaliran data dari asal ke tujuan. Hal ini nanti akan berhubungan dengan slidingwindow dan sequencing number untuk sinkronisasi aliran data.Untuk memahami reliability dan flow control, analoginya sama denganmahasiswa yang belajar bahasa asing selama satu tahun. Bayangkan kalaumahasiswa ini pergi ke Negara dimana dia belajar bahasa tersebut.Mahasiswa harus bertanya ke orang-orang untuk mengulang kata-kata danberbicara secara benar (reliability) dan pelan-pelan (sama dengan konsepflow control).
.2 Sinkronisasi dan 3-way handshakeTCP adalah protokol connection-oriented. Komunikasi data antar host terjadimelalui proses sinkronisasi untuk membentuk virtual connection setiapamang@eepis-its.edu135Page 2session antar host. Proses sinkronisasi ini meyakinkan kedu sisi apakahsudah siap transmisi data apa belum dan mengijinkan device untukmenentukan inisial sequence number. Proses ini disebut dengan 3-wayhandshake. Untuk membentuk koneksi TCP, klien harus menggunakannomor port tertentu dari layanan yang ada di server.Tahap satu, klien mengirimkan paket sinkronisasi (SYN flag set) untukinisialisasi koneksi. Paket dianggap valid kalau niali sequence numbernyamisalnya x. bit SYN menunjukkan permintaan koneksi. Bit SYN panjangnyasatu bit dari segmen header TCP. Dan sequence number panjangnya 32 bit.Tahap dua, host yang lain menerima paket dan mencatat sequence number xdari klien dan membalas dengan acknowledgement (ACK flag set). Bit controlACK menunjukkan bahwa acknowledgementnumber berisi nilaiacknowledgement yang valid. ACK flag panjangnya satu bit dan Ack number32 bit dalam segmen TCP header. Sekali koneksi terbentuk, ACK flag disetuntuk semua segmen. ACK number nilainya menjadi x + 1 artinya host telahmenerima semua byte termasuk x dan menambahkan penerimaan berikutnyax + 1.Tahap tiga, klien meresponnya dengan Ack Number y + 1 yang berarti iamenerima ack sebelumnya dan mengakhiri proses koneksi untuk session ini.Gambar 1.2 Format segmen TCPGambar 1.3 Format segmen TCP/IP.
.3 Serangan Denial of Service (DoS)Serangan DoS didisain untuk mencegah layanan ke host yang mencobauntuk membentuk koneksi. DoS umutmnya digunakan oleh hacker untukmematikan sistem. DoS dikenal dengan nama SYN flooding artinyamembanjiri dan merusak 3-way handshake.amang@eepis-its.edu136Page 3Gambar 1.4 Serangan DoSPada DoS, hacker meginisialisasi SYN tapi disisipi dengan alamat IP tujuan,artinya hacker memberikan permintaan SYN dengan informasi yang salah,sehingga proses koneksi akan menunggu lama dan akhirnya gagal. Untukmengatasi hal ini, admin harus mengurangi koneksi selama peride tertentudan menaikkan jumlah antrian koneksi.
.4 Windowing dan window sizeWindow size menetukan jumlah data yang dapat dikirim pada satu waktusebelum tujuan meresponnya dengan acknowledgment. Setelah hostmengirim angka window size dalam byte, hist harus menerima ack bahwadata telah doterima sebelum ia dapat mengirim data berikutnya. Sebagaicontoh, jika window size 1, setiap byte harus ack sebelum byte berikutnyadikirim.Gambar 1.5 TCP window size = 1Windowing untuk menentukan ukuran transmisi secara dinamis. Device melakukan negosiasi window size untuk mengijinkan angka tertentu dalambyte yang harus dikirim sebelum ack.amang@eepis-its.edu137Page 4Gambar 1.6 TCP window size = 3
.5 Sequence number dan ack numberSequence number bertindak sebagai nomor referensi sehingga penerimaakan mengetahui jika ia telah menerima semua data. Dan jugamengidentifikasi data-data yang hilang ke pengirim supaya ia mengirimnyalagi.Gambar 1.7 TCP sequence number dan ack numberGambar 1.8 Format segmen TCP1.6 Operasi UDPBaik TCP maupun UDP sama menggunakan IP protokol layer 3. TCP danUDP diguanakan untuk aplikasi yang bermacam-macam. TCP melayaniaplikasi seperti FTP, HTTP, SMTP dan DNS. Sedangkan UDP adalahprotokol layer 4 yang digunakan oleh DNS, TFTP, SNMP dan DHCP.amang@eepis-its.edu138Page 5Gambar 1.9 Protokol TCP/IPGambar 1.10 Format segmen UDPGambar 1.11 Nomor port2. Transport layer port2.1 Port dan klienKapanpun klien terhubung ke layanan suatu server. Port asal dan tujuan pastidigunakan. Segmen TCP dan UDP berisi field port asal dan tujuan. Porttujuan, port layanan harus diketahui oleh klien. Secara umum nomor portsecara acak dibangkitkan sendiri oleh klien dengan nomor di atas 1023.sebagai contoh, klien yang akan konek ke web server menggunakan TCP keport tujuan 80 dan port asal 1045. Pada saat paket sampai di server, iamasuk ke layer transport dan masuk ke layanan HTTP yang beroperasi diport 80. server HTTP membalas ke klien dengan segmen yang menggunakanport 80 dan asal ke 1045 sebagai tujuannya Format segmen TCP Format segmen UDP2.2 Nomor PortNomor port diwakili oleh 2 byte dalam header segmen TCP atau UDP. Nilai16-bit dapat menghasilkan nomor port antara 0 sampai 65535. tiga kategorinomor port adalah well-known port, registered port dan dynamic atau privateport. Nomor port 1023 ke bawah adalah well-known port, yang digunakanuntuk layanan-layanan umu misalnya FTP, Telnet atau DNS.Registered port rangenya dari 1024 – 49151. sedangkan port antara 49152 –65535 untuk dynamic atau private port.
MAC address, IP address dan port numberSebagai analogi, pada saat kita membuat surat. Alamat pada surat berisinama, jalan, kota dan provinsi. Data-data ini analoginya sama dengan port,MAC dan IP address untuk jaringan data. Nama di surat sama dengan nomorport, alamat surat sama dengan MAC address, dan kota serta provinsi samadengan IP address. Banyak surat yang ditujukan ke alamat yang sama.Sebagai contoh ada dua surat yang dialamatkan ke alamat yang samakatakanlah “John Doe” dan lainnya “Jane Doe”. Hal ini analoginya samadengan session banyak tapi nomor portnya lain.
- Kesimpulan-
TCP adalah protokol connection-oriented. Dua host yangberkomunikasi terlebih dulu harus melakukan proses sinkronisasi untukmembentuk virtual koneksi.- UDP adalah protokol connectionless, transmisi paket data tidak dijaminsampai ke tujuan- Port number digunakan untuk melayani komunikasi yang berbedadalam jaringan pada saat yang bersamaan. Port number diperlukanpada saat host komunikasi dengan server yang menjalankanbermacam-macam service.
0 komentar:
Posting Komentar