MODUL PRAKTIKUM JARINGAN KOMPUTER SEMESTER GANJIL 2012 / 2013
Program Teknologi Informasi dan Ilmu Komputer UNIVERSITAS BRAWIJAYA MALANG
DAFTAR ISI DAFTAR ISI .................................................................................................................................. i BAB I........................................................................................................................................... 1 1.1
Tujuan .......................................................................................................................... 1
1.2
Teori Dasar Jaringan Komputer ................................................................................... 1
1.3
Teori Dasar Aplikasi Jaringan Komputer ...................................................................... 8
1.4.
Prosedur Percobaan Capture .................................................................................... 11
1.5
Prosedur Percobaan Protokol Aplikasi ...................................................................... 14
1.6
Prosedur Percobaan Konfigurasi Windows ............................................................... 16
1.7
Prosedur Percobaan Capture Bittorrent.................................................................... 17
1.8
Kesimpulan ................................................................................................................ 17
BAB II........................................................................................................................................ 18 2.1.
Tujuan ........................................................................................................................ 18
2.2.
Pemrograman Socket ................................................................................................ 18
2.3.
Pemrograman Socket dengan TCP ............................................................................ 18
2.3.1.
Prosedur Percobaan Dasar Pemrograman Jaringan menggunakan TCP ........... 21
2.3.2.
Hasil Pengamatan Praktikum dengan TCP ......................................................... 22
2.4.
Pemrograman Socket dengan UDP ........................................................................... 23
2.4.1.
Prosedur Percobaan Dasar Pemrograman Jaringan menggunakan UDP .......... 23
2.4.2.
Hasil Pengamatan Praktikum dengan UDP ........................................................ 24
BAB III....................................................................................................................................... 25 3.1.
Tujuan ........................................................................................................................ 25
3.2.
Teori Dasar TFTP dan FTP .......................................................................................... 25
3.2.1.
TFTP (Trivial File Transfer Protocol) ................................................................... 25
3.2.2.
FTP (File Transfer Protocol) ................................................................................ 26
3.3.
Prosedur Percobaan Protokol Layer Transport UDP ................................................. 28
3.3.1.
TFTP Server ........................................................................................................ 28
3.3.2.
TFTP Client ......................................................................................................... 29
i
3.4.
Prosedur Percobaan Protokol Layer Transport TCP .................................................. 30
3.4.1.
FTP Server .......................................................................................................... 30
3.4.2.
TFTP Server ........................................................................................................ 32
3.5.
Kesimpulan ................................................................................................................ 33
BAB IV ...................................................................................................................................... 34 4.1.
Tujuan ........................................................................................................................ 34
4.2.
Peralatan yang Digunakan......................................................................................... 34
4.3
Teori Dasar Cabling ................................................................................................... 34
4.3.1
Kabel Coaxial ...................................................................................................... 34
4.3.2
Kabel Fiber Optic ................................................................................................ 36
4.3.3
Kabel Twisted Pair .............................................................................................. 37
4.4
Teori Dasar Protokol ICMP ........................................................................................ 39
4.5
Prosedur Percobaan .................................................................................................. 42
4.6
Soal Latihan ............................................................................................................... 45
4.7
Hasil Percobaan ......................................................................................................... 46
4.8
Kesimpulan ................................................................................................................ 46
BAB V ....................................................................................................................................... 47 5.1
Tujuan ........................................................................................................................ 47
5.2
Teori Dasar DHCP (Dynamic Host Configuration Protocol)....................................... 47
5.3
Prosedur Percobaan: DHCP ....................................................................................... 48
5.4
Teori Dasar Routing ................................................................................................... 49
5.4.1
Pengiriman Langsung dan Tidak Langsung ........................................................ 50
5.4.2
Table Routing ..................................................................................................... 50
5.4.3
Proses Pencarian dalam Tabel Routing.............................................................. 52
5.4.4
Membentuk Tabel Routing ................................................................................ 52
5.5
Prosedur Percobaan: Static Routing ......................................................................... 54
5.5.1 5.6
Langkah-Langkah Percobaan: Static Routing ..................................................... 54
Kesimpulan ................................................................................................................ 56
ii
BAB I TEORI DAN APLIKASI DASAR JARINGAN KOMPUTER
1.1 Tujuan
Mengetahui teori dasar jaringan komputer
Mengenal dan menerapkan aplikasi dalam jaringan komputer
Menganalisis troubleshooting pada jaringan komputer
1.2 Teori Dasar Jaringan Komputer Jaringan komputer adalah kumpulan dari sejumlah perangkat berupa komputer, hub, switch, router Atau perangkat jaringan lainnya yang terhubung dengan menggunakan media komunikasi tertentu (Wagito, 2005). Perangkat yang terhubung dengan jaringan disebut juga sebagai node. Hal ini memungkinkan pengguna dapat bertukar dokumen dan data, mencetak pada printer yang sama, dan menggunakan sumberdaya jaringan (hardware dan software) ada. Sebuah jaringan computer biasanya terdiri dari 2 buah computer atau lebih dan melakukan data sharing antar komputer. Informasi dan data bergerak melalui media komunikasi. Media komunikasi yang dipakai dalam membuat jaringan computer antara lain adalah kabel, jaringan telepon, gelombang radio, satelit, Bluetooth atau infra merah. Pemakaian media komunikasi ini akan tergantung pada kegunaan dan ukuran jaringan.
Model OSI Layer Untuk menyelenggarakan komunikasi berbagai macam vendor komputer, diperlukan sebuah aturan baku yang standar dan disetujui berbagai pihak. Seperti halnya dua orang yang berlainan bangsa, maka untuk berkomunikasi memerlukan penerjemah/interpreter atau satu bahasa yang dimengerti kedua belah pihak. Dalam dunia computer dan telekomunikasi, interpreter identic dengan protokol. Untuk itu maka badan dunia yang menangani masalah standardisasi ISO (International Standardization Organization) pada 1
akhir 70an, membuat aturan baku yang dikenal dengan nama model referensi OSI (Open System Interconnection). Dengan demikian diharapkan semua vendor perangkat telekomunikasi harus berpedoman pada model referensi ini dalam mengembangkan protokolnya. Model referensi OSI terdiri dari 7 lapisan, mulai dari lapisan fisik hingga aplikasi. Model referensi ini tidak hanya berguna untuk produk-produk LAN saja, tetapi juga sangat diperlukan dalam membangun jaringan Internet. OSI menjelaskan bagaimana data dan informasi jaringan berkomunikasi dari sebuah aplikasi pada sebuah komputer berjalan melalui jaringan, menuju ke aplikasi di komputer lain. OSI menjelaskan melalui pendekatan pemecahan menjadi lapisan-lapisan (layer). Analogi konsep layer adalah seperti dalam departemen / bidang dalam sebuah perusahaan, setiap departemen memiliki tugas yang berbeda, dan hanya terfokus padahal tertentu sesuai pembagian tugas. Hubungan antara model referensi OSI dengan protokol Internet dapat dilihat pada Tabel 1.1 Setiap layer mewakili suatu abstraksi yang berbeda dengan lainnya dan melaksanakan suatu fungsi yang telah didefinisikan [Tanenbaum, 1996].
Layer 7
Nama Layer Application
Keterangan
Protokol
Berfungsi sebagai antarmuka antara aplikasi
HTTP, FTP,
dengan fungsionalitas jaringan, mengatur
SMTP, NFS,
bagaimana aplikasi dapat mengakses
dll.
jaringan, dan kemudian membuat pesanpesan kesalahan. 6
Presentation
Berfungsi untuk mentranslasikan data yang
VTP, TFTP,
hendak ditransmisikan oleh aplikasi
VNC, RDP, dll.
kedalam format yang dapat ditransmisikan melalui jaringan. 5
Session
Berfungsi untuk mendefinisikan bagaimana
RPC, ADSP,
koneksi dapat dibuat, dipelihara, atau
dll.
dihancurkan. Selain itu, di level ini juga 2
dilakukan resolusi nama. 4
Transportation
Berfungsi untuk memecah data kedalam
UDP, TCP,
paket-paket data serta memberikan nomor
SPX, dll.
urut kepaket-paket tersebut sehingga dapat disusun kembali pada sisi tujuan setelah diterima. Selain itu, pada level ini juga membuat sebuah tanda bahwa paket diterima dengan sukses (acknowledgement), dan mentransmisikan ulang terhadap paket-paket yang hilang di tengah jalan. 3
Network
Berfungsi untuk mendefinisikan alamat-
DDP, IP, IPX,
alamat IP, membuat header untuk paket-
ICMP, IGMP,
paket, dan kemudian melakukan routing
ARP, RARP,
melalui internetworking dengan
dll.
menggunakan router dan switch layer-3. 2
Data Link
Befungsi untuk menentukan bagaimana bit-
HDLC, SLIP,
bit data dikelompokkan menjadi format
PPP, dll.
yang disebut sebagai frame. Selain itu, pada level ini terjadi koreksi kesalahan, flow control, pengalamatan perangkat keras (seperti halnya Media Access Control Address (MAC Address)), dan menetukan bagaimana perangkat-perangkat jaringan seperti hub, bridge, repeater, dan switch layer 2 beroperasi. Spesifikasi IEEE 802, membagi level ini menjadi dua level anak, yaitu lapisan Logical Link Control (LLC) dan lapisan Media Access Control (MAC).
3
1
Physical
Berfungsi untuk mendefinisikan media
Ethernet,
transmisi jaringan, metode pensinyalan,
ISDN, ATM,
sinkronisasi bit, arsitektur jaringan, topologi
FDDI, dll.
jaringan dan pengkabelan. Selain itu, level ini juga mendefinisikan bagaimana Network Interface Card dapat berinteraksi dengan media kabel atau radio. Tabel 1.1 OSI Layer
Enkapsulasi dan Dekapsulasi Data Enkapsulasi adalah suatu proses untuk menyembunyikan atau memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari luar sistem sekaligus menyederhanakan penggunaan sistem itu sendiri, juga membuat satu jenis paket data jaringan menjadi jenis data lainnya. Enkapsulasi terjadi ketika sebuah protokol yang berada pada lapisan yang lebih rendah menerima data dari protokol yang berada pada layer yang lebih tinggi dan meletakkan data ke format data yang dipahami oleh protokol tersebut. Akses ke internal sistem diatur sedemikian rupa melalui seperangkat interface. Dengan enkapsulasi data menjadi memiliki identitas. Contoh sederhana proses enkapsulasi dalam proses pengiriman surat, jika sebuah surat akan dikirim namun tanpa adanya amplop, alamat dan perangko. Surat tersebut hendaknya memiliki identitas agar dapat sampai ke tujuan, jika tidak memiliki identitas maka surat tersebut tidak akan dapat sampai ke tujuan. Amplop dengan alamat dan perangko sama dengan enkapsulasi pada data. Proses enkapsulasi data: 1.
Awalnya data dibuat, ketika memulai proses pengiriman, data turun melalui Application layer (layer 7) yang bertanggung jawab dalam pertukaran informasi dari komputer ke jaringan, pada dasarnya layer ini merupakan interface antara jaringan dengan aplikasi yang digunakan user. Dapat juga disebut bahwa layer ini berfungsi untuk mendefinisikan request dari user. Kemudian data diteruskan ke 4
layer Presentation (layer 6), yang mana layer ini bertanggung jawab dalam menentukan apakah ia perlu untuk melakukan enkripsi terhadap request ini ataupun ke bentuk lain dari translasi data. Jika proses sudah lengkap, selanjutnya ditambahkan informasi yang diperlukan. Lalu di lanjutkan ke Session layer (layer 5) yang mana layer ini akan memeriksa apakah aplikasi meminta suatu informasi dan memverifikasi layanan yang diminta itu pada server. Setiap informasi yang akan dilewatkan akan ditambahkan header setiap turun 1 layer. Namun, pada pemrosesan layer 5, 6 dan 7 terkadang tidak diperlukan adanya header. Ini dikarena-kan tidak ada informasi baru yang perlu diproses. 2.
Sampailah data di Transport layer (layer 4), memastikan bahwa ia mempunyai suatu koneksi yang sudah tepat dengan server dan memulai proses dengan mengubah informasi itu ke bentuk segment. Pengecekan error dan penggabungan data yang berasal dari aplikasi yang sama dilakukan di layer transport ini serta keutuhan data di jamin pula di sini. Terbentuk L4PDU dari proses ini.
3.
Selanjutnya segment tersebut diteruskan ke Network layer (layer 3), disini diterima segment-segment tadi dan ditambahkan alamat network untuk station yang merequest dan alamat network untuk server yang di-request. Segment-segment tersebut akan diubah menjadi packet-packet, Kemudian layer Network membuat header Network, dimana didalamnya terdapat juga alamat layer Network, dan ditempatkan L4PDU dibaliknya, dan terbentuklah L3PDU.
4.
Kemudian packet-packet tadi dilewatkan ke layer Data Link (layer 2) dan paketpaket tadi diatur dan kemudian akan dibungkus lagi ke dalam individual frame, salah satu contoh dalam proses ini adalah memberikan alamat MAC tujuan dan MAC address sumber yang kemudian informasi tersebut digunakan untuk membuat trailer. Dikarenakan suatu paket dapat dikirimkan melalui banyak sekali perangkat dan router, disinilah peran MAC Address dalam mengirimkan paket antara satu router dan router lainnya. Kemudian akan ditransmisikan ke media. Seluruh informasi yang ditambahkan oleh tiap layer sebelumnya (sebagai suatu actual file request) harus sesuai ke dalam ukuran 46-1500 byte data field pada frame ethernet. Data link layer bertanggung jawab untuk mengirimkan frame menurut topologi yang digunakan. Terbentuklah L2PDU pada proses ini. 5
5.
Terakhir, sampailah data di layer Physical (layer 1), informasi akan dibawa dari source menuju destination. Karena Physical layer tidak mengenal frame, ia akan melewatkan informasi itu ke bentuk bit. Tidak terjadi penambahan header pada layer ini. Layer Physical ini berhubungan dengan perangkat keras. Akhirnya bit-bit tersebut nantinya akan disinkronisasi dan kemudian diubah menjadi sinyal listrik yang berupa tinggi rendahnya tegangan dan selanjutnya ditransmisikan melalui media. Misalnya dari kabel ke tujuan, hal ini sesuai dengan karakteristik lapisan Physical layer yang menentukan rangkaian kejadian dimana arus bit berpindah melalui medium fisik.
Pada tiap layer terdapat LxPDU (Layer N Protocol Data Unit), dimana merupakan bentuk dari byte pada header-trailer pada data. PDU merupakan proses-proses pada setiap layer dari model OSI. Pada tiap-tiap layer juga terbentuk bentukan baru, pada layer 2 PDU termasuk header dan trailer disebut bentukan frame. Pada layer 3 disebut paket (packet). Sedangkan pada layer 4 disebut segmen (segment). Setelah dilakukan proses enkapsulasi, lalu dikirimkan ke server dan server akan melakukan proses tadi secara terbalik, yaitu dari Physical layer ke Application layer, proses ini disebut dekapsulasi. Jika pada enkapsulasi dilakukan pembungkusan, maka pada de-enkapsulasi akan melakukan pembukaan dari bungkus-bungkus tadi melalui layer-layer nya. Proses Dekapsulasi merupakan kebalikan dari proses Enkapsulasi. Proses Enkapsulasi merupakan proses pembungkusan data sedangkan Dekapsulasi merupakan proses pembukaan bungkus. Prosesnya pun terbalik dari proses Enkapsulasi. Proses Enkapsulasi bermula dari layer yang paling atas (Application Layer) hingga layer yang paling bawah (Physical Layer) sedangkan proses Dekapsulasi bermula dari layer yang paling bawah (Physical Layer) menuju layer yang paling atas (Application Layer).
6
Model TCP/IP Layer Tidak seperti model OSI, model TCP/IP bukan internasional standard dan definisinya dapat berbeda-beda. Namun demikian, sering dipakai sebagai model praktis untuk mengerti dan mencari kesalahan dalam jaringan internet. Mayoritas internet memakai TCP/IP, dan oleh sebab itu kita dapat membuat beberapa asumsi tentang jaringanjaringan yang lebih mudah untuk mengerti. Model TCP/IP dari jaringan digambarkan dalam empat lapisan berikut: Layer 4
Nama Layer Application
Keterangan Merupakan lapisan terakhir dalam arsitektur TCP/IP yang berfungsi mendefinisikan aplikasi-aplikasi yang dijalankan pada jaringan. Karena itu, terdapat banyak protokol pada lapisan ini, sesuai dengan banyaknya aplikasi TCP/IP yang dapat dijalankan
3
Transport
Mendefinisikan cara-cara untuk melakukan pengiriman data antara end to end host secara handal. Lapisan ini menjamin bahwa informasi yang diterima pada sisi penerima
adalah
sama
dengan
informasi
yang
dikirimkan pada pengirim. 2
Internet
Mendefinisikan bagaimana hubungan dapat terjadi antara dua pihak yang berada pada jaringan yang berbeda seperti Network Layer pada OSI. Pada jaringan Internet yang terdiri atas puluhan juta host dan ratusan ribu jaringan lokal, lapisan ini bertugas untuk menjamin agar suatu paket yang dikirimkan dapat menemukan tujuannya dimana pun berada. Oleh karena itu, lapisan ini
memiliki
peranan
penting
terutama
dalam
mewujudkan internetworking yang meliputi wilayah luas (worldwide Internet).
7
1
Network Access
Mempunyai fungsi yang mirip dengan Data Link layer pada OSI. Lapisan ini mengatur penyaluran data frameframe data pada media fisik yang digunakan secara handal. Lapisan ini biasanya memberikan servis untuk deteksi dan koreksi kesalahan dari
data
yang
ditransmisikan. Tabel 1.2 TCP/IP Layer Dari sisi model OSI, lapisan kelima hingga ketujuh tergabung menjadi lapisan paling atas (lapisan aplikasi). Sementara empat lapisan yang pertama di kedua model identik. Banyak teknisi jaringan berfikir bahwa segalanya di atas lapisan empat "hanya data" yang berubah-ubah dari aplikasi ke aplikasi. Karena ketiga lapisan pertama interoperable di antara seluruh pembuat peralatan, dan lapisan keempat bekerja di antara semua mesin yang memakai TCP/IP, dan semua di atas lapisan keempat cenderung untuk digunakan di aplikasi yang spesifik, hal ini menyederhanakan model yang bekerja pada saat membuat dan mencari permasalahan di jaringan TCP/IP.
1.3 Teori Dasar Aplikasi Jaringan Komputer Linux Centos Fedora adalah sebuah distro Linux berbasis RPM dan yum yang dikembangkan oleh Fedora Project yang didukung oleh komunitas pemrogram serta disponsori oleh Red Hat. Nama Fedora berasal dari karakter fedora yang digunakan di logo Red Hat. Pada rilis 1 sampai 6 distro ini bernama Fedora Core yang kemudian berubah menjadi Fedora pada rilis ke-7. Fedora dikenal di dunia Linux sebagai sebuah distro yang menjadi pioneer dalam penggunaan teknologi terkini dan merupakan distro yang digunakan oleh Linus Trovalds.
8
Salah satu visi utama Fedora tidak hanya mengandung software dibawah lisensi software open source dan gratis, tetapi juga menjadi teknologi yang mutakhir. Pengembang fedora lebih membuat perubahan yang signifikan daripada hanya memperbaiki khususnya untuk bahwa update Fedora dapat digunakan oleh semua linux. Pada tahun 2008, Linus Trovalds, pemilik dari Linux kernel, mengatakan bahwa dia menggunakan Fedora karena Fedora memiliki dukungan yang cukup bagus untuk arsitektur prosesor PowerPC, yang dia rasakan setiap waktu. Fedora Project sendiri telah mengeluarkan beberapa versi beta yang bisa dikatakan merupakan kelanjutan dari Red Hat Linux 9.0, yaitu Fedora Core 1.0 pada 5 November 2003. Project ini memiliki periode waktu pengembangan yang lebih cepat, yaitu 4-6 bulan, dibandingkan Red Hat Linux yang membutuhkan 6-8 bulan atau Red Hat Enterprise Linux yang membutuhkan 12-18 bulan. Sementara itu, usia hidup produknya boleh dibilang sangat singkat, yaitu 2-3 bulan dari release produk terbarunya dibandingkan dengan lifetime produk Red Hat Enterprise Linux yang mencapai 5 tahun. Oracle Virtual Box VirtualBox adalah salah satu
software virtualisasi populer yang didistribusikan
secara gratis. Aplikasi ini sangat powerful untuk membuat virtual machine dan menjalankan banyak sistem operasi pada satu komputer. VirtualBox mendukung hampir semua sistem operasi meliputi Windows OS, Linux OS, Solaris, Mac OS X, Unices dan sistem operasi lainnya. Penggunaan VirtualBox biasanya untuk mengatasi masalah-masalah yang dihadapi para pengguna seperti halnya sebagai berikut : Ingin melakukan percobaan software sebelum menginstallnya pada komputer. Ingin mencoba atau belajar sistem operasi baru tanpa ingin mengganti sistem operasi yang saat ini sedang digunakan. Ingin menjalankan software yang dicurigai tidak aman jika dijalankan di komputer secara langsung. 9
Ingin menginstall software yang tidak support dengan sistem operasi yang sedang digunakan saat ini.
Wireshark a) Tujuan
Mendeskripsikan fungsi dari Wireshark sebagai salah satu network analysis tool.
Melakukan capture dengan Wireshark
b) Latar Belakang Wireshark merupakan packet analyzer yang bersifat free dan open source. Aplikasi ini digunakan untuk troubleshooting jaringan, analisa paket data dan pengembangan protokol komunikasi. Wireshark merupakan aplikasi cross-platform, menggunakan GTK+ widget toolkit pada user interfacenya dan menggunakan pcap untuk menangkap paket data. Selain dapat digunakan di Windows, aplikasi ini juga dapat berjalan di lingkungan Unix seperti Linux, Mac OS X, BSD dan Solaris. Aplikasi lain yang sering digunakan untuk tujuan yang sama dengan Wireshark adalah TCPdump, hanya saja TCPdump bekerja di command line Linux dan tidak memiliki user interface. Packet sniffer sendiri diartikan sebagai sebuah program atau tool yang memiliki kemampuan untuk ‘mencegat’ dan melakukan pencatatan terhadap traffic data dalam jaringan. Selama terjadi aliran data dalam, packet sniffer dapat menangkap protocol data unit (PDU), melakukan dekoding serta melakukan analisis terhadap isi paket berdasarkan spesifikasi RFC atau spesifikasispesifikasi yang lain. Wireshark sebagai salah satu packet sniffer diprogram sedemikian rupa untuk mengenali berbagai macam protokol jaringan. Wireshark mampu menampilkan hasil enkapsulasi dan field yang ada dalam PDU.
10
1.4. Prosedur Percobaan Capture Penggunaan aplikasi ini sebenarnya cukup mudah. Pengguna hanya perlu menghubungkan client ke internet dan memilih interface yang anda gunakan. Setelah itu wireshark dapat menangkap seluruh paket data yang masuk dan keluar dari client. Pada konfigurasi awal dapat dilihat IP asal, IP tujuan dan protokol yang digunakan. Untuk memilih interface: 1. Pilih menu Capture 2. Klik Interfaces dan untuk versi Windows akan muncul window sebagai berikut
3. Pilih salah satu interface yang digunakan untuk terhubung ke internet / jaringan. Pada window diatas interface yang dipilih karena itu yang sedang digunakan. interface yang dideskripsikan adalah interface yang ada pada komputer.
11
4. Pada
CMD
(Windows)
/
Terminal
(Linux)
jalankan
perintah
“ping
www.google.com -t” 5. Pada window utama akan muncul capture dari wireshark
Packet List Pane menampilkan ringkasan dari paket-paket yang tertangkap oleh Wireshark. Memilih salah satu paket yang tampil pada bagian ini akan memperlihatkan detail dari paket tersebut pada dua panel di bawahnya. Packet Detail Pane menampilkan detail dari paket yang dipiliha pada Packet List Pane. Packet Byte Pane menunjukkan isi data dari sebuah paket dalam heksadesimal serta menunjukkan detail dari field yang dipilih pada Packet Detail Pane. 6. Berdasarkan hasil capture diatas, analisa lah :
IP komputer Anda
IP host tujuan
Jelaskan protokol apa saja yang digunakan?
-----|||----
12
Analisa Protokol di Layer Aplikasi a) Tujuan
Menggunakan Wireshark untuk menangkap PDU
Mengamati protokol HTTP sebagai protokol pada Application Layer
b) Latar Belakang Application Layer merupakan layer paling atas, baik pada model OSI, maupun model TCP/IP. Layer ini menyediakan antarmuka antara aplikasi-aplikasi yang kita gunakan, dengan jaringan yang digunakannya untuk melakukan pertukaran informasi. Pada pertukaran informasi antar aplikasi yang berjalan pada host pengirim dan host tujuan digunakan berbagai protokol Application Layer. Protokol pada application layer menentukan bagaimana pesan dipertukarkan antara host pengirim dan tujuan, sintaks dari perintah-perintah kontrol (control command), jenis dan format data yang dipertukarkan, metode yang digunakan untuk mengetahui terjadinya kesalahan dan bagaimana mengatasi kesalahan tersebut, serta bagaimana interaksi dengan layer yang berada di bawahnya. Terdapat banyak protokol untuk apllication layer, antara lain Domain Name Service Protocol (DNS), Hypertext Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP), Telnet, File Transfer Protocol (FTP) dan sebagainya. Pada praktikum ini akan dilakukan analisis terhadap protokol yang sering kita gunakan, yaitu HTTP. Hypertext Transfer Protocol (HTTP), pada awalnya merupakan prokol yang dikembangkan untuk mempublikasikan maupun mengunduh halaman HTML. Saat ini, HTTP yang merupakan protokol pada application layer yang paling sering digunakan juga dimanfaatkan untuk transfer data. HTTP menentukan mendefinisikan protokol dalam melakukan request dan response antar klien dan server. Dengan HTTP, terdapat tiga jenis pesan yang dipertukarkan, yaitu GET, POST, dan PUT. GET digunakan oleh klien untuk melakukan request. POST dan PUT digunakan untuk melakukan upload data ke server.
13
1.5 Prosedur Percobaan Protokol Aplikasi 1.
Jalankan wireshark dan mulailah capture data
2.
Buka browser yang ada di komputer Anda
3.
Masuklah ke situs www.google.com. Setelah halaman Google terbuka, tekan tombol refresh pada web browser Anda
4.
Hentikan capture wireshark Anda, simpan hasil capture tersebut dan tutup browser Anda
5.
Analisa hasil capture tersebut
IP komputer Anda
IP host tujuan
Jelaskan protokol apa saja yang digunakan untuk berkomonikasi
Jelaskan proses pertukaran pesan yang ada di hasil capture Anda
---|||---
Filterisasi Wireshark Ketika Wireshark mulai melakukan capture data yang masuk dan keluar dari client, data yang didapat oleh Wireshark pastinya tidak sedikit dan membingungkan pengguna untuk menganalisa. Untuk itu pengguna bisa menggunakan filter data sehingga data yang ditampilkan hanya data yang diinginkan saja. Untuk mempelajari syntax expression yang digunakan untuk filterisasi, pengguna dapat melihatnya di menu expression.
14
Beberapa expression yang sering digunakan:
ip.src == "alamat-ip" Menampilkan data dengan alamat IP asal sesuai dengan alamat IP yang dimaksudkan
ip.dst == "alamat-ip" Menampilkan data dengan alamat IP tujuan sesuai dengan alamat IP yang dimaksudkan
tcp.port == "no-port" Menampilkan data dengan port asal dan port tujuan sesuai port yang dimasukkan
15
1.6 Prosedur Percobaan Konfigurasi Windows 1. Tuliskan pada layer mana IP address bekerja! Jelaskan jawaban anda? 2. Mengecek konfigurasi awal. Ketikkan perintah berikut pada command prompt: >ipconfig /all Jelaskan apa yang terjadi! 3. Tulis MAC Address komputer yang Anda pakai! Jelaskan mengenai struktur MAC Address! 4. Lepas kabel UTP pada komputer dan lakukan lagi ipconfig /all. Apakah terjadi perubahan? 5. Ketikkan beberapa perintah dibawah ini pada Command Pormpt: a. nslookup www.informatika.ub.ac.id b. traceroute www.informatika.ub.ac.id c. netstat –an Berdasarkan hasil yang didapat, jelaskan maksud dari perintah konfigurasi diatas!
16
1.7 Prosedur Percobaan Capture Bittorrent Capture paket data peer to peer pada torrent menggunakan wireshark 1. Install aplikasi bittorent 2. Jalankan wireshark 3. Download file menggunakan bittorent (contoh http://www.torrentreactor.net) 4. Lakukan filter dengan mengetik "bittorrent" pada field filter tekan enter 5. Screenshot hasil capture paket data dan jelaskan isi paket
1.8 Kesimpulan Tuliskan kesimpulan yang didapat dari keseluruhan bab 1.
17
BAB II DASAR PEMROGRAMAN JARINGAN KOMPUTER
2.1. Tujuan
Memahami & Mampu Mengimplementasikan Dasar Pemrograman Jaringan Komputer menggunakan TCP
Memahami & Mampu Mengimplementasikan Dasar Pemrograman Jaringan Komputer menggunakan UDP
2.2. Pemrograman Socket Setelah memahami beberapa protokol penting yang ada pada aplikasi berbasis jaringan seperti HTTP, FTP dan SMTP, praktikum bab 2 kali ini akan melakukan eksplorasi bagaimana program atau aplikasi berbasis jaringan tersebut ditulis. Pada aplikasi berbasis jaringan, kita memahami bahwa secara umum aplikasi terdiri dari satu pasang program yang berada pada dua end-system yang berbeda. Ketika kedua program tersebut dieksekusi, proses klien dan server tercipta dan saling mengkomunikasikan dengan membaca atau menulis pada sebuah socket. Dengan pemahaman diatas, dapat disimpulkan ketika seorang pengembang perangkat lunak membuat sebuah aplikasi berbasis jaringan, maka pengembang tersebut harus memperhatikan tugas utama yaitu menulis program pada sisi klien maupun server.
2.3. Pemrograman Socket dengan TCP Pada aplikasi berbasis jaringan, proses berjalan pada dua mesin yang berbeda yang berkomunikasi satu sama lain melalui sebuah socket. Pada gambar 2.1, dapat dianalogikan bahwa proses adalah sebuah rumah dan socket merupakan sebuah pintu dari rumah. Dan seorang pengembang perangkat lunak hanya memiliki kontrol yang sangat sedikit dalam sisi layer transport. Sisi server harus selalu siap dalam melayani permintaan klien, dan proses pada klien akan melakukan inisiasi koneksi TCP ke server. Ketika klien membuat soket, klien harus melakukan spesifikasi alamat dari sebuah 18
proses yang dijalankan pada sisi server dengan memberikan nama atau alamat IP dan juga nomor port pada sisi server. Ketika proses three way handshaking terjadi (akan dijelaskan lebih spesifik pada transport layer), klien akan melakukan proses “mengetuk pintu” pada server proses (welcome socket). Ketika server mendengar ketukan pintu tersebut, server akan membuat socket baru (connection socket) yang didedikasikan untuk melayani klien. Pada pemrograman jaringan komputer, terdapat istilah stream yang merupakan sebuah urutan karakter yang mengalir menuju atau keluar pada sebuah proses. Input Stream merupakan sumber input proses seperti keyboard. Dan standard output Stream dapat dicontohkan ketika hasil tampilan ditunjukkan pada layar monitor.
Gambar 2.1. Proses komunikasi melalui socket TCP Sumber: Kurose, Computer Network Top Down Approach
Perlu menjadi perhatian bahwa ketika sebuah proses dibuat pada masing-masing end-system terdapat dua buah socket yang diciptakan disisi server yaitu welcoming socket yang digunakan untuk melakukan proses listen dan three way handshake pada sisi klien dan connection socket yang digunakan untuk saling mempertukarkan pesan.
19
Langkah-langkah ketika membuat sebuah program dengan socket ditunjukkan pada gambar 2.2. Langkah-langkahnya adalah sebagai berikut: 1. Sisi server membuat welcoming socket pada port kesekian (bukan pada wellknown port), yang akan menunggu setiap permintaan yang nantinya akan diberikan oleh klien. 2. Server menunggu permintaan dari klien, ketika sisi klien membuat socket dan menghubungi server (bisa melalui alamat IP maupun hostname) melalui port yang telah diberikan, server akan membuat connection socket yang akhirnya menghubungkan TCP connection antara klien dengan server. 3. Klien mengirimkan request menggunakan client socket dan server membaca permintaan klien pada connection socket. 4. Server membalas permintaan klien melalui connection socket dan sisi klien menerimanya melalaui client socket. 5. Server menutup connection socket dan klien menutup client socket.
Gambar 2.2. Langkah-langkah membuat socket programming Sumber: Kurose, Computer Network Top Down Approach
20
2.3.1. Prosedur Percobaan Dasar Pemrograman Jaringan menggunakan TCP Pada praktikum dasar pemrograman jaringan, akan digunakan bahasa pemrograman python dalam implementasi pemrograman antara klien dengan server. Sebelum memulai menulis bahasa program silahkan unduh dan install compiler python. Berikut adalah langkah-langkah yang harus praktikan kerjakan. Silahkan membuat file dengan ekstensi .py, misal untuk sisi server gunakan file server-tcp.py untuk klien gunakan file klien-tcp.py. Membuat program berbasis jaringan di sisi server dengan python: from socket import * serverPort = 12000 serverSocket = socket(AF_INET,SOCK_STREAM) serverSocket.bind((„‟,serverPort)) serverSocket.listen(1) print „The server is ready to receive‟ while 1: connectionSocket, addr = serverSocket.accept() sentence = connectionSocket.recv(1024) capitalizedSentence = sentence.upper() connectionSocket.send(capitalizedSentence) connectionSocket.close()
21
Membuat program berbasis jaringan di sisi klien dengan python: from socket import * serverName = „servername‟ serverPort = 12000 clientSocket = socket(AF_INET, SOCK_STREAM) clientSocket.connect((serverName,serverPort)) sentence = raw_input(„Input lowercase sentence:‟) clientSocket.send(sentence) modifiedSentence = clientSocket.recv(1024) print „From Server:‟, modifiedSentence clientSocket.close()
Jalankan program server-tcp dengan perintah: Python server-tcp.py
Jalankan program klien-tcp dengan perintah: Python klien-tcp.py
2.3.2. Hasil Pengamatan Praktikum dengan TCP 1. Jelaskan apa yang terjadi ketika program server-tcp dijalankan? 2. Pada baris program server-tcp jelaskan maksud dari masing-masing baris. 3. Jelaskan apa yang terjadi ketika program klien-tcp dijalankan? 4. Pada baris program klien-tcp jelaskan maksud dari masing-masing baris. 5. Apa yang terjadi ketika program klien-tcp dan server-tcp dijalankan secara bersamaan, dan apa yang terjadi ketika pada klien-tcp menuliskan kata halo?
22
2.4. Pemrograman Socket dengan UDP Pada pemrograman dengan UDP, tidak diperlukan proses three way handshake seperti yang dilakukan pada TCP. pada setiap paket yang dikirimkan pengirim juga secara eksplisit menyertakan IP address dan port tujuan, pada sisi penerima akan dilakukan ekstraksi IP address pengirim dan port pada setiap paket yang diterima. Pada pengiriman UDP data bisa hilang di tengah jalan dan diterima tidak secara berurutan. UDP menyediakan unreliable transfer dari kelompok byte (datagram) antara klien dengan server.
2.4.1. Prosedur Percobaan Dasar Pemrograman Jaringan menggunakan UDP Berikut adalah langkah-langkah yang harus praktikan kerjakan. Silahkan membuat file dengan ekstensi .py, misal untuk sisi server gunakan file server-udp.py untuk klien gunakan file klien-udp.py. Membuat program berbasis jaringan di sisi server dengan python: from socket import * serverPort = 12000 serverSocket = socket(AF_INET, SOCK_DGRAM) serverSocket.bind(('', serverPort)) print “The server is ready to receive” while 1: message, clientAddress = serverSocket.recvfrom(2048) modifiedMessage = message.upper() serverSocket.sendto(modifiedMessage, clientAddress)
23
Membuat program berbasis jaringan di sisi klien dengan python : from socket import * serverName = „hostname‟ serverPort = 12000 clientSocket = socket(AF_INET, SOCK_DGRAM) message = raw_input(‟Input lowercase sentence:‟) clientSocket.sendto(message,(serverName, serverPort)) modifiedMessage, serverAddress = clientSocket.recvfrom(2048) print modifiedMessage clientSocket.close()
Jalankan program server-udp dengan perintah: Python server-udp.py
Jalankan program klien-udp dengan perintah: Python klien-udp.py
2.4.2. Hasil Pengamatan Praktikum dengan UDP 1. Jelaskan apa yang terjadi ketika program server-udp dijalankan? 2. Pada baris program server-udp jelaskan maksud dari masing-masing baris. 3. Jelaskan apa yang terjadi ketika program klien-udp dijalankan? 4. Pada baris program klien-udp jelaskan maksud dari masing-masing baris. 5. Apa yang terjadi ketika program klien-udp dan server-udp dijalankan secara bersamaan, dan apa yang terjadi ketika pada klien-udp menuliskan kata halo?
24
BAB III PROTOKOL LAYER TRANSPORT
3.1. Tujuan
Memahami kerja UDP berdasarkan analisa protocol analyzer
Memahami kerja TCP berdasarkan analisa protocol analyzer
3.2. Teori Dasar TFTP dan FTP 3.2.1. TFTP (Trivial File Transfer Protocol) Trivial File Transfer Protocol (disingkat menjadi TFTP) adalah sebuah protokol perpindahan berkas yang sangat sederhana yang didefinisikan pada tahun 1980. TFTP memiliki fungsionalitas dasar dari protokol File Transfer Protocol (FTP). Karena protokol ini sangatlah sederhana, maka implementasi protokol ini dalam komputer yang memiliki memori yang kecil sangatlah mudah. Hal ini memang pertimbangan yang sangat penting pada saat itu. Akhirnya, TFTP pun digunakan untuk melakukan booting komputer seperti halnya router jaringan komputer yang tidak memiliki perangkat penyimpanan data. Protokol ini kini masih digunakan untuk mentransfer berkas-berkas kecil antar host di dalam sebuah jaringan, seperti halnya ketika terminal jarak jauh X Window System atau thin client lainnya melakukan proses booting dari sebuah host jaringan atau server. Pada percobaan untuk menganalisa protokol layer transport UDP kita akan menggunakan TFTP (Trvial File Transfer Protokol). Silahkan melakukan instalasi TFTP Server pada masing-masing komputer di laboratorium. Download Program TFTP di: http://tftpd32.jounin.net/download/Tftpd32-4.00-setup.exe Atau pada file yang sudah disediakan oleh asisten. TFTP adalah program yang memiliki fungsionalitas layaknya aplikasi FTP. TFTP menjalankan hubungan antara klien dengan server menggunakan protokol layer transport UDP.
25
3.2.2. FTP (File Transfer Protocol) FTP menggunakan protokol transport TCP untuk mengirimkan file. TCP dipakai sebagai protokol transport karena protokol ini memberikan garansi pengiriman dengan FTP yang dapat memungkinkan user mengakses file dan direktory secara interaktif, diantaranya:
Melihat daftar file pada direktory remote dan lokal
Menganti nama dan menghapus file
Transfer file dari host remote ke lokal (download)
Transfer file dari host lokal ke remote (upload)
Pada gambar dibawah menunjukkan mekanisme transfer file dari host lokal ke remote, proses transfer file seperti ditunjukkan dengan tanda panah pada gambar tersebut. Tahapan FTP dimulai dari client memasuki jaringan TCP/IP, komputer remote yang akan dituju disebut host FTP, dan host FTP ini harus memiliki software FTP server yang telah diinstall agar dapat berinteraksi dengan sistem file pada host. Untuk memulai melakukan FTP, maka berikan perintah seperti: ftp [hostname] Hostname merupakan nama secara simbolik atau IP address dari host yang akan dituju. Bila sudah dapat tersambung maka akan ditanyakan nama user dan password, isian nama user dan password sesuai dengan account yang diberikan seperti yang digunakan bila user akan menggunakan server tersebut, tetapi pada FTP server yang umum, untuk nama user dapat digunakan ftp atau anonymous dengan menggunakan password yaitu alamat e-mail, akan tetapi memiliki hak akses yang terbatas sesuai yang ditetapkan administrator FTP server.
26
Gambar 2.1. Ilustrasi komunikasi FTP Pada percobaan untuk menganalisa protokol layer transport TCP kita akan menggunakan FTP (File Transfer Protokol). Silahkan melakukan instalasi FTP Server pada masing-masing komputer di laboratorium. Download Program FTP di: http://www.brothersoft.com/ftp-master-50480.html Atau pada file yang sudah disediakan oleh asisten. FTP adalah suatu protokol tang berfungsi untuk tukar-menukar file file dalam suatu network yang men-support TCP/IP protokol. Dua hal penting yang terdapat pada FTP adalah FTP server (memberi / menyediakan layanan file) dan FTP klien (merequest / mendownload file). FTP menjalankan hubungan antara klien dengan server menggunakan protokol layer transport TCP. FTP menggunakan dua buah port yaitu port 20 dan 21. FTP server listen pada port 21 untuk incoming connection dari FTP klien. Port 21 digunakan untuk command port dan port 20 untuk data port. Beberapa perintah yang dapat digunakan antara lain PUT dan GET. Contohnya “ftp> get jarkom.jpg” maka file jarkom.jpg akan di-copy dari server ke komputer kita. 27
3.3. Prosedur Percobaan Protokol Layer Transport UDP 3.3.1. TFTP Server 1. Siapkan dua buah komputer dan pastikan kedua buah komputer tersebut terhubung dengan network. 2. Install program tftpd pada kedua buah komputer tersebut . 3. Jalankan program tersebut, kemudian lakukan pengesetan untuk ‘current directory’ Directory Path
4. Buat sebuah file Text dengan ukuran kurang dari 1KB (dengan nama coba_tftp.txt) dan letakkan pada direktori dimana ‘current directory’ tftp server diset. 5. Jalankan aplikasi wireshark dan mulai capture data pada interfaces dimana dua buah komputer tersebut saling terhubung. 6. Pada komputer yang bertindak sebagai klien, masuk ke command prompt (CMD) dan ketikkan “tftp
get coba_tftp.txt”. Isi alamat IP dengan alamat tftp server. 7. Setelah proses transfer file selesai, buka kembali wireshark dan lakukan analisa sebagai berikut : a. Capture hasil wireshark dengan melakukan filter udp && tftp b. Berdasarkan hasil capture jelaskan langkah-langkah apa sajakah yang ada pada proses pertukaran file antara tftp server dengan klien dengan menggunakan protokol UDP. c. Pilih satu hasil trace paket UDP, jelaskan dengan detail masing-masing fieldnya.
28
3.3.2. TFTP Client 1. Sebelum melakukan perintah TFTP pada client, aktifkan terlebih dahulu TFTP Service pada windows, masuk ke Control Panel – Programs – Turn Windows features on or off – TFTP Client
2. Setelah service dinyalakan, lakukan perintah TFTP pada client tanpa harus
melakukan login, perintah ditulis bersamaan dengan penulisan ip, perintah ‘tftp alamat_ip get koplak.txt’
29
3.4. Prosedur Percobaan Protokol Layer Transport TCP 3.4.1. FTP Server 1. Siapkan dua buah komputer dan pastikan kedua buah komputer tersebut terhubung dengan network. 2. Install program ftpd pada kedua buah komputer tersebut . 3. Setelah melakukan instalasi ftpd, jalankan program tersebut. 4. Buat sebuah virtual server
New virtual server
Lakukan pengesetan IP, protocol dan port pada virtual server
Alamat IP
Nomor Port
Protocol
5. Buat profile user dengan meng-klik ikon user list
Ikon ‘User List’
Tambahkan user dengan meng-klik tombol add
Ikon ‘Add’
Kemudian buat akses untuk user dan set direktori yang akan digunakan
30
Membuat user dengan id dan password
Membuat akun anonymous Membuat akun anonymous
Direktori yang akan di share
6. Setelah membuat user, jalankan server yang sudah dibuat dengan meng-klik kanan server yang sudah dibuat,pilih opsi ‘virtual server operations’, kemudian pilih opsi ‘start server’
Menjalankan server
7. Buat sebuah file Text dengan ukuran kurang dari 1KB (dengan nama coba_ftp.txt) dan letakkan pada direktori dimana aplikasi ftp server tersebut menyimpan datanya. 8. Jalankan aplikasi wireshark dan mulai capture data pada interfaces dimana dua buah komputer tersebut saling terhubung. 9. Pada komputer yang bertindak sebagai klien, masuk ke terminal / cmd dan ketikkan “ftp alamat_IP”. Isi alamat IP dengan alamat ftp server. 10. Ketikkan “get coba_ftp.txt”
31
11. Setelah proses transfer file selesai, buka kembali wireshark dan lakukan analisa sebagai berikut: a. Capture hasil wireshark dengan melakukan filter= tcp && ftp || ftp-data b. Berdasarkan hasil capture jelaskan langkah-langkah apa sajakah yang ada pada proses pertukaran file antara ftp server dengan klien dengan menggunakan protokol TCP c. Pilih satu hasil trace paket TCP, jelaskan dengan detail masing-masing fieldnya
3.4.2. TFTP Server 1. Pada windows, buka cmd.exe 2. Jika FTP Server sudah dijalankan, lakukan koneksi pada client dengan alamat IP yang sesuai dengan alamat IP pada FTP Server, perintah ‘ftp alamat_ip’ lalu tekan enter 3. Login dengan username ‘anonymous’, tekan enter 4. Lalu kosongkan password, tekan enter
5. Jika sudah login, lakukan donwnload data, perintah ‘get halo.txt’
32
6. Untuk melakukan list data yang ada pada FTP Server, ketikkan perintah ‘dir’
7. Untuk perintah lainnya dapat mengetikkan perintah ‘help’
3.5. Kesimpulan Tuliskan kesimpulan yang didapat dari keseluruhan bab 3.
33
BAB IV CABLING DAN PROTOKOL ICMP
4.1. Tujuan
Memahami pengkabelan pada jaringan komputer
Memahami protokol ICMP dan program yang menjalankannya
Mampu menghubungkan dua buah perangkat dengan medium kabel UTP
4.2. Peralatan yang Digunakan
Kabel UTP Cat 5
Stripping and Crimping Tool
Konektor RJ-45
Cable Testing
PC / Laptop
4.3 Teori Dasar Cabling Untuk dapat menghubungkan device yang satu dengan device yang lain, maka dibutuhkanlah media transmisi. Terdapat berbagai macam media yang dapat digunakan untuk dapat menghubungkan divais dan membentuk jaringan. Secara umum, media tersebut adalah: Kabel (wired) dan Nirkabel (wireless). Empat jenis kabel jaringan yang umum digunakan saat ini yaitu: 4.3.1 Kabel Coaxial Kabel ini sering digunakan untuk antena televisi dan transmisi telepon jarak jauh. Konektornya adalah BNC (British Naval Connector). Kabel coaxial terdiri atas dua kabel yang diselubungi oleh dua tingkat isolasi. Tingkat isolasi pertama adalah yang paling dekat dengan kawat konduktor tembaga. Tingkat pertama ini dilindungi oleh serabut konduktor yang menutup bagian atasnya yang melindungi dari pengaruh elektromagnetik. Sedangkan bagian inti yang digunakan untuk transfer data adalah bagian tengahnya yang selanjutnya ditutup atau dilindungi dengan 34
plastik sebagai pelindung akhir untuk menghindari dari goresan kabel. Beberapa jenis kabel Coaxial lebih besar dari pada yang lain. Makin besar kabel, makin besar kapasitas datanya, lebih jauh jarak jangkauannya dan tidak begitu sensitif terhadap interferensi listrik. Gambar 4.1 Typical Coaxial Cable
Tabel 4.1 Macam-macam Kabel Coaxial Cable
Description
RG-58 /U
Kabel Coaxial 50-ohm dengan inti solid. Disebut juga sebagai thinnet dan digunakan
RG-58 A/U
dengan 10Base-2 Ethernet dan beberapa kabel TV. Kabel Coaxial 50-ohm dengan inti Stranded. Juga disebut sebagai
RG-58 C/U
thinnet dan digunakan dengan 10Base-2 Ethernet dan beberapa
RG-59U
kabel TV.
RG-6U
Spesifikasi militer, versi dari RG-58 A/U. Kabel Coaxial 75-ohm. Digunakan dengan system Wang dan beberapa kabel TV.
RG-6 Shield
Quad
Kabel Coaxial 75-ohm.Tingkat minimum untuk dipakai di perumahan saat ini karena dapat menangani frekuensi penuh dari servis satelit, ditambah dengan HDTV dan servis modem kabel.
RG-62U
Sama dengan RG-6U, tetapi dengan tambahan pelindung untuk ketahanan dari noise. Direkomendasikan untuk digunakan pada perumahan. Kabel Coaxial 93-ohm. Digunakan dengan system cabling IBM dan ArcNet
35
4.3.2 Kabel Fiber Optic Kabel serat optik mengirim data sebagai pulsa cahaya melalui kabel serat optik. Kabel serat optik mempunyai keuntungan yang
menonjol dibandingkan
dengan semua pilihan kabel tembaga. Kabel serat optik memberikan kecepatan transmisi data tercepat dan lebih reliable, karena jarang terjadi kehilangan data yang disebabkan oleh interferensi listrik. Kabel serat optik juga sangat tipis dan fleksibel sehingga lebih mudah dipindahkan dari pada kabel tembaga yang berat.
Figure 4.2 Typical Fiber Optic Cable
Kabel ini dibagi menjadi 2, yaitu:
Multi mode: Penjalaran cahaya dari satu ujung ke ujung lainnya pada kabel jenis ini dapat melalui beberapa lintasan cahaya karena diameter intinya (core) cukup besar (50 mm).
Single mode: Diameter intinya hanya 3-10 mm sehingga penjalaran cahaya hanya dapat melalui satu lintasan.
36
4.3.3 Kabel Twisted Pair a. UTP (Unshielded Twisted Pair) Kabel UTP digunakan untuk LAN dan sistem telepon. Kabel UTP terdiri dari empat pasang warna konduktor tembaga yang setiap pasangnya berpilin. Pembungkus kabel memproteksi dan menyediakan jalur bagi tiap pasang kawat. Kabel UTP terhubung ke perangkat melalui konektor modular 8 pin yang disebut konektor RJ-45. Secara singkat kabel UTP adalah murah dan mudah dipasang, dan bisa bekerja untuk jaringan skala kecil.
Gambar 4.3 UTP Cable
b. STP (Shielded Twisted Pair) Kabel STP sama dengan kabel UTP, tetapi kawatnya lebih besar dan diselubungi dengan lapisan pelindung isolasi untuk mencegah gangguan interferensi. Jenis kabel STP yang paling umum digunakan pada LAN ialah IBM jenis/kategori 1.
Gambar 4.4 STP Cable
37
Tabel 4.2 Macam-macam Kabel Twisted Pair
Ada tiga jenis cara crimping kabel, yaitu Straight Through, Cross Over dan Roll Over dimana perbedaannya: 1. Straight Through digunakan untuk koneksi dari: a. PC dengan Hub b. PC dengan Switch Kabel ini juga memiliki 4 pairs (8 wire) dimana setiap pin antara ujung satu dengan ujung lainnya harus sama. Maksudnya, bila salah satu ujung memakai standard T568A maka ujung satunya harus memakai T568-A juga. Begitu pula sebaliknya, jika salah satu ujung menggunakan standard T568-B, ujung satunya juga harus memakai standard yang sama. 2. Cross Over digunakan untuk koneksi dari: a. PC dengan PC b. Hub dengan Hub c. Switch dengan Switch d. Router dengan Router 38
e. PC dengan Router f. PC dengan Modem Kabel jenis ini menggunakan standard T568-A pada salah satu ujung dan T568-B pada ujung lainnya. 3. Roll Over digunakan untuk koneksi dari: a. PC dengan console router b. PC dengan console switch managible c. Router dengan modem Standard yang digunakan adalah T568-A pada salah satu ujung dan ujung lainnya urutan T568-A tinggal di roll (dibalik). Demikian juga jika yang dipakai adalah standard T568-B.
Tabel 4.3 Standar Susunan Kabel UTP Pin #
T568A Wire Color
T568B Wire Color
1
White Green
White Orange
2
Green
Orange
3
White Orange
White Green
4
Blue
Blue
5
White Blue
White Blue
6
Orange
Green
7
White Brown
White Brown
8
Brown
Brown
4.4 Teori Dasar Protokol ICMP Dalam suatu sistem connectionless setiap gateway akan melakukan pengiriman, perutean datagram yang datang tanpa adanya koordinasi dengan pengirim pertama. Tidak semua sistem berjalan dengan lancar. Kegagalan dapat saja terjadi. misalnya line komunikasi, prosesor atau dikarenakan mesin tujuan tidak sedang aktif, ttl dari counter
39
habis, atau ketika terjadi kemacetan sehingga gateway tidak lagi bisa memproses paket yang datang. Dalam koneksi dengan internet pengirim tidak dapat memberitahukan & tidak tahu sebab kegagalan suatu koneksi. Untuk mengatasinya diperlukan suatu metode yang mengijinkan gateway melaporkan error atau menyediakan informasi mengenai kejadian yang tidak diinginkan sehingga dipakai mekanisme ICMP. Pesan ICMP merupakan bagian dari datagram IP. Tujuan akhir dari suatu pesan ICMP bukan merupakan program atau user melainkan software internet-nya. Ketika pesan ICMP hadir software ICMP akan menanganinya. ICMP mengijinkan gateway untuk mengirim pesan error ke gateway lain atau host. ICMP menyediakan komunikasi antar software protocol Internet. Pada dasarnya terdapat dua macam pesan ICMP: ICMP Error Message dan ICMP Query Message. ICMP error message digunakan pada saat terjadi kesalahan pada jaringan, sedangkan query message adalah jenis pesan yang dihasilkan oleh protokol ICMP jika pengirim paket menginginkan informasi tertentu yang berkaitan dengan kondisi jaringan. Secara teknis ICMP adalah mekanisme error reporting untuk gateway sehingga dapat memberitahu sumber mengenai kesalahan yang terjadi. Sedangkan untuk koreksinya diserahkan pada program aplikasi yang ada pada pengirim. Contoh aplikasi yang menggunakan protokol ICMP adalah: ping. PING merupakan salah satu program yang digunakan untuk mengecek komunikasi antar komputer dalam sebuah jaringan melalui protokol TCP/IP. PING akan mengirimkan Internet Control Message Protocol (ICMP) Echo Request messages pada ip address komputer yang dituju dan meminta respons dari komputer tersebut. Jika komputer target memberikan respond maka komputer tersebut memberikan informasi seperti contoh PING report yang diberikan yaitu:
40
Gambar 4.5 Ping pada Windows
Gambar 4.6 Ping pada Linux
41
Beberapa pesan yang mungkin muncul jika pinging tidak berhasil antara lain: TTL Expired in Transit: artinya jumlah hop (router) yang dilalui untuk berkomunikasi dengan server tersebut telah melebihi TTL (Time To Live), gunakan ping –i untuk mendefinisikan TTL pada saat melakukan ping Destination Host Unreachable: artinya packet yang dikirimkan tidak mampu sampai ke tujuan, biasanya disebabkan oleh table routing yang tidak tepat di mesin default gateway, atau router/hop diatasnya. Request Timed Out: artinya pesan echo replay tidak dapat diterima kembali dalam waktu yang sudah ditentukan. Biasanya pesan ini muncul karena blockade yang mungkin dilakukan oleh firewall (baik disisi router maupun di sisi target). Ping request could not find host: artinya resolving domain server tersebut pada pc kita tidak dapat menerjemah ke IP address. Hal ini biasanya karena setting DNS client masih keliru atau komunikasi kita dengan DNS server terganggu/terputus.
4.5 Prosedur Percobaan 1. Ukur kabel sesuai keperluan dan potong kabel tersebut menggunakan pemotong kabel (seperti gambar di bawah).
2. Menggunakan kabel stripper, strip sekitar 1.5 inchi pada jaket kabel dari ujung kabel. Untuk melakukan ini, masukkan kabel ke dalam stripper (seperti gambar di bawah). Lalu, putar stripper mengelilingi kabel. Ambil stripper dari kabel lalu lepas jaket kabel dari kabel, sehingga tinggallah konduktor dalamnya (seperti gambar). Jika terlihat ada serabut benang, pisahkan dan potong.
42
3. Pisahkan tiap-tiap pasangan kabel dalam sehingga dapat melihat tiap kabel secara individual, seperti dibawah ini.
4. Untuk membuat kabel straight-through, crossover maupun rollover, lihat standard
T568-A atau T568-B yang ada diatas. Pada intinya, yang berubah adalah pada pin 1, 2, 3, dan 6. Berikut perbandingannya:
43
5. Setelah menyusun warna sesuai ketentuan diatas, potong ujung konduktor sehingga semua konduktornya rata. Pastikan bahwa jaket kabel berada sedikit di dalam konektor (seperti gambar dibawah).
6. Setelah itu masukkan kabel ke konektor RJ-45 dengan kepala menghadap ke belakang sehingga seperti gambar dibawah ini.
Masukkan konektor dan kabel ke tang crimping (seperti gambar dibawah). Kemudian tekanlah crimp tool sekuat tenaga supaya semua pin RJ-45 masuk dan menembus pelindung kabel UTP yang kecil. Apabila anda kurang kuat menekan kemungkinan kabel UTP tidak tersobek oleh pin RJ-45 sehingga kabel tersebut tidak konek. Dan apabila pembungkus bagian luar tidak masuk kedalam konektor RJ-45, apabila kabel tersebut sering digerak-gerakan, kemungkinan besar posisi kabel akan bergesar dan bahkan copot.
44
7. Setelah selesai mengcrimping, teslah kabel tersebut menggunakan cable tester dan cek apakah lampu indikator menyala dengan benar sesuai urutan kabel. 8. Setelah berhasil melakukan pemasangan kabel pada konektor dengan pengetesan dengan kabel tester, hubungkan dua buah PC dengan kabel tersebut, apakah bisa? Cek dengan ping, catat hasilnya!
4.6 Soal Latihan 1. Sebutkan kelebihan dan kekurangan penggunaan kabel twisted pair dalam jaringan komputer! 2. Sebutkan kelebihan dan kekurangan penggunaan kabel fiber optic dalam jaringan komputer! 3. Sebutkan beberapa faktor yang menjadi penyebab lampu indikator pada tester tidak menyala saat melakukan testing kabel? 4. Sebutkan macam-macam konektor yang dipakai pada kabel twisted pair dan jelaskan perbedaannya! 5. Jelaskan, bolehkah menggunakan kombinasi warna selain standar T568A atau T568? 6. Sebutkan perbedaan Ethernet, Fast Ethernet dan Gigabit Ethernet! 7. Pada kabel coaxial ada istilah thinnet dan thicknet, jelaskan perbedaannya ! 8. Sebutkan macam-macam kabel fiber optic dan jelaskan! 9. Sebutkan fungsi dari protokol ICMP! 10. Sebutkan dan jelaskan output-output yang dihasilkan pada saat ping ke host komputer lain!
45
4.7 Hasil Percobaan Catat hasil percobaan diatas (mulai dari setting ip hingga ping dua computer, lengkap dengan screenshot)!
4.8 Kesimpulan Tulis kesimpulan yang didapat dari keseluruhan bab 4.
46
BAB V PROTOKOL LAYER NETWORK
5.1 Tujuan
Memahami konsep dasar layer network
Memahami bagaimana protokol DHCP bekerja berdasarkan analisa protocol analyzer
Memahami bagaimana proses routing dan forwarding paket
Memahami konsep dasar IPV6
5.2 Teori Dasar DHCP (Dynamic Host Configuration Protocol) Dynamic Host Configuration Protocol adalah protokol yang berbasis arsitektur client/server yang dipakai untuk memudahkan pengalokasian alamat IP dalam satu jaringan. Sebuah jaringan lokal yang tidak menggunakan DHCP harus memberikan alamat IP kepada semua komputer secara manual. Jika DHCP dipasang di jaringan lokal, maka semua komputer yang tersambung di jaringan akan mendapatkan alamat IP secara otomatis dari server DHCP DHCP menggunakan 4 tahapan proses penyampaian alamat IP: 1. DHCP Discover Client meminta alamat IP ke server DHCP dengan cara melakukan broadcast untuk mencari DHCP server. 2. DHCP Offer DHCP server akan melakukan pengiriman paket data yang merupakan balasan sekaligus informasi IP yang ditawarkan ke Client sesuai dengan transaction ID 3. DHCP Request Client memilih penawaran DHCP Server yang pertama diterima dan kembali melakukan broadcast pesan untuk meminta alamat IP yang ditawarkan pada DHCP Offer
47
4. DHCP ACK DHCP Server memberikan jawaban atas pesan tersebut berupa konfirmasi alamat IP dan informasi lain kepada Client dengan sebuah ACK(Acknowledgement). Kemudian client melakukan inisialisasi dengan mengikat (binding) nomor IP tersebut dan client dapat bekerja pada jaringan tersebut.
Gambar 5.1 Proses Transaksi DHCP
5.3 Prosedur Percobaan: DHCP 1. Pastikan komputer terhubung dengan jaringan yang terpasang dengan DHCP server. 2. Set 3. wireshark untuk meng-capture interface yang terhubung dengan jaringan. 4. Jalankan proses capture pada wireshark. 5. Disable interface yang terhubung dengan jaringan/ lepaskan kabel fisik pada interface tersebut. 6. Enable interface yang terhubung dengan jaringan/ pasang kembali kabel fisik pada interface tersebut. 7. Analisa hasil capture paket 48
5.4 Teori Dasar Routing Internet adalah inter-network dari banyak jaringan yang terpisah. Jaringan ini dikoneksikan ke jaringan lainnya dengan menggunakan router. Ketika saya berkomunikasi dengan anda, paket-paket dari PC saya berjalan hop demi hop melewati semua jaringan yang didepannya, menuju jaringan anda dan akhirnya ke PC anda. Pada setiap hop, sebuah router meneruskan paket menuju alamat tujuannya. Akan tetapi paket itu sendiri hanya berisi IP address tujuan dan tidak berisi informasi routing apapun. Ketika sebuah paket tiba pada sebuah router, router memutuskan ke mana mengirim paket, router meneruskan paket pada satu atau lebih hop menuju alamat tujuannya, ia memutuskan di mana meneruskannya dengan menggunakan routing table – sekumpulan aturan yang memberitahu router mengenai hop berikutnya untuk penerusan paket ke tujuan tertentu. Pertanyaan di sini adalah:
Bagaimana router menemukan rute yang ada ke berbagai tujuan?
Bagaimana
semua
router
dikonfigurasikan?
Apakah
seseorang
harus
mengkonfigurasikannya secara manual?
Bagaimana sebuah mesin (host atau router) menemukan router apa yang ada pada jaringannya?
Dalam praktikum ini kita mengasumsikan bahwa router dikonfigurasikan secara manual (static routing). Untuk jaringan yang lebih besar, diperlukan sesuatu yang lebih komplek (dynamic routing). Dalam suatu sistem packet switching, routing mengacu pada proses pemilihan jalur untuk pengiriman paket, dan router adalah perangkat yang melakukan tugas tersebut. Perutean dalam IP melibatkan baik gateway maupun host yang ada. Ketika suatu program aplikasi dalam suatu host akan berkomunikasi, protocol TCP/IP akan membangkitkannya dalam bentuk banyak datagram. Host harus membuat keputusan perutean untuk memilih jalur pengiriman.
49
5.4.1 Pengiriman Langsung dan Tidak Langsung Pengiriman langsung (direct delivery) adalah transmisi datagram dari suatu mesin langsung ke mesin lain, dan hal ini dapat terjadi bila keduanya berada dalam satu media transmisi yang terhubung langsung. Sedangkan pengiriman yang tidak langsung mengharuskan suatu datagram untuk melewati gateway. Untuk pengiriman langsung datagram IP, pengirim akan mengenkapsulasi datagram dalam suatu frame fisik, memetakan alamat IP tujuan ke alamat fisik dan menggunakan perangkat keras jaringan untuk pengiriman secara langsung. Identifikasi bahwa tujuan masih berada dalam satu jaringan dapat dilihat di IP address bagian network-nya, jika ditemukan alamat yang sama maka dapat dilakukan pengiriman langsung. Pengiriman tidak langsung terjadi bilamana antar host yang bertukar informasi tidak terletak pada satu jaringan sehingga perlu melalui beberapa gateway hingga gateway terakhir dapat dicapai dan pengiriman langsung dapat dilakukan.
5.4.2 Table Routing Suatu algoritma perutean menggunakan tabel perutean yang menyimpan informasi mengenai kemungkinan tujuan yang dapat dicapai & cara pencapaiannya. Host dan gateway merutekan datagram, oleh karena itu keduanya memiliki tabel perutean. Untuk efisiensi tabel routing, tidak semua informasi mengenai kemungkinan tujuan akan disimpan, IP address tidak perlu ditulis lengkap. Biasanya tabel routing terdiri dari pasangan Network & Gateway (N,G) dimana N menunjukkan jaringan tujuan & G merupakan gateway berikutnya untuk sampai di jaringan N. Tabel perutean akan selalu menunjuk kepada gateway yang dapat ditempuh langsung dalam satu jaringan. Semua gateway yang terdaftar di mesin tabel perutean mesin M harus terletak dalam satu jaringan. Ketika suatu datagram akan meninggalkan mesin source maka perangkat lunak IP akan mencari IP address tujuan dan menggunakan bagian networknya untuk membuat keputusan perutean, pemilihan gateway dan pengiriman secara langsung. Contoh:
50
Gambar 5.2 Contoh Routing Ada 4 jaringan dengan 3 gateway yang menghubungkannya. Bila gateway G memiliki tabel perutean maka isi tabel adalah:
Tabel 5.1 Routing Table pada Gambar 5.2 Ukuran tabel routing tergantung pada jumlah jaringan yang terhubung. Kapasitasnya akan bertambah jika jumlah jaringan yang terhubung bertambah tanpa tergantung pada host yang terhubung. Metode lain untuk menghemat ukuran tabel routing adalah menjadikan masukkan-masukkan tertentu dalam bentuk default. Prinsip dari metode ini adalah perangkat lunak IP akan melihat terlebih dahulu isi tabel routing untuk jaringan tujuan, jika tidak ada jalur yang terlihat dalam tabel maka dikirimkan datagram ke default gateway. Metode ini sangat berguna untuk jaringan dengan jumlah alamat lokal tidak terlalu banyak & hanya satu koneksi menuju internet.
51
5.4.3 Proses Pencarian dalam Tabel Routing Proses pencarian pada tabel routing ini biasanya mengikuti langkah-langkah dibawah ini: 1. Alamat tujuan datagram di-masking dengan subnet mask host pengirim dan dibandingkan dengan alamat network host pengirim. Jika sama, maka ini adalah routing langsung dan frame langsung dikirimkan ke interface jaringan 2. Jika tujuan datagram tidak terletak dalam satu jaringan, perikasa apakah terdapat entri routing yang berupa host dan bandingkan dengan alamat IP tujuan datagram. Jika ada entri yang sama, kirim frame ke router menuju host tersebut. 3. Jika tidak terdapat entri host yang cocok pada tabel routing, gunakan alamat tujuan datagram yang telah di-mask pada langkah 1 untuk mencari kesamaan di tabel routing. Periksa apakah ada network / subnetwork di tabel routing yang sama dengan alamat network tujuan datagram. Jika ada entri yang sama, kirim frame ke router menuju network/subnetwork tersebut. 4. Jika tidak terdapat entri host ataupun entri network / subnetwork yang sesuai dengan tujuan datagram, host mengirimkan frame ke router default dan menyerahkan proses proses routing selanjutnya kepada router default. 5. Jika tidak terdapat rute default di tabel routing, semua host diasumsikan dalam keadaan terhubung langsung. Dengan demikian host pengirim akan mencari alamat fisik host tujuan menggunakan ARP
5.4.4 Membentuk Tabel Routing Ketika suatu host baru dinyalakan, ia belum memiliki cache ARP yang lengkap. Entri pada cache ARP yang dimilikinya hanya untuk host itu sendiri. Setelah berinteraksi dengan host lain, barulah host tersebut memiliki entri-entri tambahan pada cache ARP. Hal yang sama juga terjadi pada tabel routing di host. Pada saat host baru dinyalakan, host tersebut tidak memiliki informasi di tabel routing kecuali entri untuk jaringan lokalnya. Tabel routing seperti ini kadang-disebut sebagai tabel routing minimal. Dalam kondisi hanya memiliki tabel routing minimal, host belum siap untuk melakukan internetwork karena hanya dapat berkomunikasi dengan host-host yang 52
terletak pada satu jaringan lokal. Langkah pertama untuk mempersiapkan host untuk dapat melakukan fungsi internetwork adalah dengan memberikan entri rute default pada tabel routing. Dari rute default yang dimiliki pengisian tabel routing dapat dilakukan dengan beberapa metode dibawah ini: a. Routing Redirect Router (dalam hal ini router default) dapat menyatakan bahwa dirinya bukan rute terbaik untuk mencapai host tertentu, melainkan harus melalui router yang lain dalam jaringan lokal berdasarkan tabel routing yang dimilikinya. Jika demikian, maka router tersebut mengirimkan pesan kepada host pengirim datagram menggunakan ICMP redirect dan memberitahukan host pengirim tersebut agar datagram menuju host tertentu dialihkan melalui router lain. Host pengirim menerima pesan ICMP redirect itu dan menambahkan entri host pada tabel routing dengan informasi routing yang baru. b. Routing Static Metode lain yang dapat dipakai untuk membentuk tabel routing adalah dengan memakai routing static. Pada metode ini entri-entri rute di host dan di router dimasukkan secara manual c. Protocol Routing Protocol routing adalah protokol yang digunakan oleh router-router untuk saling bertukar informasi routing. Router-router pada jaringan TCP/IP membentuk tabel routing berdasarkan informasi routing yang dipertukarkan setiap selang waktu tertentu.
53
5.5 Prosedur Percobaan: Static Routing Dengan menggunakan virtual box, kita akan membentuk sebuah topologi seperti yang tertera pada gambar dibawah ini:
Pada masing-masing router, telah diinstall sistem operasi Linux yang didalamnya sudah terdapat program quagga. Untuk percobaan kali ini kita akan menggunakan tools zebra yang merupakan bagian dari program routing quagga. 5.5.1 Langkah-Langkah Percobaan: Static Routing 1. Buka masing-masing router pada virtual box baik itu Semeru, Bromo, maupun Arjuno. Username / Password untuk masing-masing router adalah root / 123456. 2. Jalankan layanan zebra dengan mengetikkan: “service zebra start” 3. Tes koneksi ketiga buah router diatas dengan menggunakan perintah ping. a. Dari Semeru ke Bromo: “ping 192.168.1.2” b. Dari Semeru ke Arjuno: “ping 192.168.1.10” 4. Masuk program zebra dengan mengetikkan “telnet localhost zebra”
54
5. Pada router semeru, masuk ke program zebra dengan mengetikkan “telnet localhost zebra”. a. Masukkan password zebra: 123456 b. Ketikkan “enable” c. Ketikkan “configure terminal” d. Ketikkan perintah untuk melakukan routing statis pada router semeru yaitu: i. ip route 172.16.20.0/24 192.168.1.1 ii. ip route 172.16.30.0/24 192.168.1.10 6. Pada router bromo, masuk ke program zebra dengan mengetikkan “telnet localhost zebra”. a. Masukkan password zebra: 123456 b. Ketikkan “enable” c. Ketikkan “configure terminal” d. Ketikkan perintah untuk melakukan routing statis pada router bromo yaitu: i. ip route 172.16.20.0/24 192.168.1.2 ii. ip route 192.168.1.8/30 192.168.1.2 iii. ip route 172.16.30.0/24 192.168.1.2 7. Pada router Arjuno, masuk ke program zebra dengan mengetikkan “telnet localhost zebra”. a. Masukkan password zebra: 123456 b. Ketikkan “enable” c. Ketikkan “configure terminal” d. Ketikkan perintah untuk melakukan routing statis pada router arjuno yaitu: i. ip route 172.16.10.0/24 192.168.1.9 ii. ip route 192.168.1.0/30 192.168.1.9 iii. ip route 172.16.20.0/24 192.168.1.9
55
8. Tes Koneksi dengan melakukan perintah ping: a. Dari router semeru tes ping ke alamat IP 172.16.20.1 dan 172.16.30.1 b. Dari router bromo tes ping ke alamat IP 172.16.10.1, 172.16.30.1 dan 192.168.1.10. c. Dari router arjuno tes ping ke alamat IP 172.16.10.1, 172.16.20.1 dan 192.168.1.2. 9. Tuliskan Tabel routing untuk masing-masing router.
5.6 Kesimpulan Tulis kesimpulan yang didapat dari keseluruhan bab 5.
56
LABORATORIUM JARINGAN KOMPUTER PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER UNIVERSITAS BRAWIJAYA
KARTU PESERTA PRAKTIKUM JARINGAN KOMPUTER SEMESTER GANJIL 2012/2013
Nama : NIM
Pas Foto Ukuran 3 x 4 cm
:
Kelas :
Bab
Judul Bab
I
Teori dan Aplikasi Dasar Jaringan Komputer
II
Dasar Pemrograman Jaringan Komputer
III
Protokol Layer Transport
IV
Cabling dan Protokol ICMP
V
Protokol Layer Network
Praktikum
Tinta
Keterangan
Koordinator Asisten Jaringan Komputer
Muhammad Nurwiseso Wibisono NIM. 0910683067