• Tidak ada hasil yang ditemukan

MODUL MATA PRAKTIKUM PEMROGRAMAN JARINGAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "MODUL MATA PRAKTIKUM PEMROGRAMAN JARINGAN"

Copied!
44
0
0

Teks penuh

(1)

MODUL MATA PRAKTIKUM

PEMROGRAMAN JARINGAN

Tim Penyusun :

Riza Maryuni, ST., MMSI.

Muhammad Zakir

LABORATORIUM TEKNIK INFORMATIKA

UNIVERSITAS GUNADARMA

(2)

KATA PENGANTAR

Modul ini merupakan modul mata praktikum Pemrograman Jaringan yang disusun sebagai materi persiapan dan pengajaran bagi Asisten Penanggung Jawab yang akan menyampaikan materi tersebut kepada mahasiswa (Praktikan). Materi setiap pertemuan selalu dimulai dengan penjelasan tentang objektif yang akan dicapai dari proses belajar dalam sertiap pertemuan tersebut.

Modul mata praktikum Pemrograman Jaringan membahas pengenalan implementasi dari konfigurasi jaringan dasar hingga ke Socket Programming yang terdiri dari 4 pertemuan dengan materi sebagai berikut :

1. IP Static, DNS, dan DHCP 2. FTP dan Web Server(HTTP) 3. UDP

4. TCP

Secara umum, materi pengajaran pada setiap pertemuan akan menjelaskan konsep, teori dan penerapan dari topik yang akan dibahas, dan menerangkan secara garis besar langkah yang diperlukan dalam memahami berbagai protokol yang mendukung pembahasan topik yang dibahas dalam materi tersebut.

Setiap Asisten Penanggung Jawab sangat diharapkan untuk mempelajari dengan seksama modul ini, mengingat pemahaman yang baik atas materi ini akan sangat membantu pada waktu proses ajar-belajar selama kegiatan praktikum berlangsung, terutama dalam mengerjakan Laporan Pendahuluan, Tugas Pendahuluan, Activity, dan Laporan Akhir.

Untuk mengikuti perkembangan teknologi di masa mendatang, maka modul mata praktikum Sistem Basis Data 1 ini disusun oleh Laboratorium Teknik Informatika Universitas Gunadarma dengan bantuan tim yang bekerja secara penuh, yaitu Riza Maryuni, ST., MMSI., dan Muhammad Zakir.

Jakarta, 12 Februari 2017 Tim Penyusun

Laboratorium Teknik Informatika Universitas Gunadarma

(3)

Laboratorium Teknik Informatika | Pemrograman Jaringan 3

DAFTAR ISI

COVER...1 KATA PENGANTAR ... 2 DAFTAR ISI ... 3 PERTEMUAN 1 ... 4 IP Statis, DNS, dan DHCP ... 4 PERTEMUAN 2 ... 22

FTP dan Web Server ... 22

PERTEMUAN 3 ... 36

UDP ... 36

PERTEMUAN 4 ... 40

TCP... 40

(4)

Laboratorium Teknik Informatika | Pemrograman Jaringan 4

PERTEMUAN 1

IP Statis, DNS, dan DHCP

Tujuan:

1. Mahasiswa dapat memahami implementasi dari IP Statis 2. Mahasiswa dapat memahami implementasi dari DNS 3. Mahasiswa dapat memahami implementasi dari DHCP

(5)

Laboratorium Teknik Informatika | Pemrograman Jaringan 5

PERTEMUAN 1

Pada Pertemuan 1 Untuk praktikum Pemrograman Jaringan ini, kita akan membahas kembali beberapa hal yang seharusnya sudah tidak asing lagi ketika kita dengar, mereka adalah IP Statis, DNS, dan DHCP. Pada mata praktikum Jaringan Komputer kita telah mengenal dengan baik apa definisi dari masing - masing pembahasan tersebut, namun sejauh ini kita hanya mempraktikan nya dengan menggunakan simulasi melalui Cisco Packet

Tracer, pada Praktikum kali ini kita akan membahas ketiga hal tersebut dengan

mengimplementasikanya langsung kepada sebuah Sistem Operasi yang akan kita konfigurasikan ketiga hal tersebut nya.

Pada praktikum ini, kita akan menggunakan Virtualbox sebagai media kita menjalankan Sistem Operasi yang akan kita gunakan pada praktikum ini. Kita menggunakan Virtualbox untuk menggunakan fitur virtualisasi nya sehingga kita bisa menjalankan beberapa instansi Sistem Operasi sekaligus tanpa perlu perangkat lebih dari satu dan tanpa perlu nya partisi apalagi Hard Disk tambahan, selain itu kita juga dapat menjalankan beberapa Sistem Operasi sekaligus tanpa memerlukan Reboot yang akan mempermudahkan pekerjaan kita. Virtualisasi juga berguna untuk mencoba hal - hal yang mungkin akan memiliki resiko yang cukup tinggi pada Sistem Operasi ataupun keutuhan dari Hard Disk sehingga kita bisa melakukan berbagai hal dengan lebih nyaman dan aman.

Untuk Sistem Operasi yang akan kita gunakan pada praktikum ini sendiri, kita akan menggunakan Sistem Operasi Linux dengan distro Ubuntu yang merupakan distro turunan dari distro Debian. Pada praktikum ini kita akan menggunakan 2 jenis Sisem Operasi yaitu Sistem Operasi yang diperuntukan untuk menjadi Server dan juga Sistem Operasi yang diperuntukan untuk menjadi Client, untuk sisi Server sendiri kita akan menggunakan Ubuntu 16.04.1 Server, dan untuk sisi Client kita akan menggunakan Ubuntu 16.04.1 Desktop. Kita akan banyak melakukan konfigurasi pada sisi Server, sementara pada sisi Client kita hanya akan melakukan uji coba terhadap konfigurasi pada Server yang telah kita lakukan pada nanti nya.

Sebelum melanjutkan kebagian praktikum, alangkah baik nya jika kita mengingat kembali apa sebenarnya ketiga hal tersebut yang akan kita bahas. IP Statis merupakan IP yang dikonfigurasikan secara manual pada tiap device nya sehingga IP tersebut tidak akan meminjam IP lain dari DHCP Pool sehingga IP tersebut tidak akan mengalami perubahan nilai jika tidak ada perubahan konfigurasi pada Device tersebut. DNS adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk basis data tersebar (Distributed Database) di dalam jaringan komputer.

DNS ini merupakan sistem penamaan hirarkis yang nanti nya di distribusikan untuk suatu komputer, jasa, atau sumber daya yang terhubung ke suatu jaringan, DNS pada kesempatan kali ini akan kita gunakan sebagai alias dari sebuah IP yang dimana pada kesempatan kali ini adalah IP dari Server sehingga ketika kita ingin melakukan pemanggilan IP dari Server kita tidak perlu menggunakan angka dari IP tersebut, melainkan kita bisa menggunakan alias yang akan kita berikan tersebut.

(6)

Laboratorium Teknik Informatika | Pemrograman Jaringan 6

DHCP adalah layanan yang secara otomatis memberikan nomor IP kepada komputer yang meminta nya. Komputer yang memberikan nomor IP disebut sebagai DHCP Server, sedangkan komputer yang meminta nomor IP disebut sebagai DHCP Client, dengan begitu kita tidak perlu lagi melakukan konfigurasi manual pada setiap Device yang ingin digunakan. Ketika sisi DHCP Server selesai di konfigurasikan, Server akan menerima request dari Client ketika Client dihidupkan, lalu Server akan memberikan nomor yang tersedia pada Pool, setelah salah satu nomor IP yang terdapat pada Pool diberikan kepada suatu Client, maka

Server akan menandakan nya pada Pool bahwasanya nomor IP tersebut sudah tidak lagi

tersedia dikarenakan nomor IP tersebut telah diberikan kepada sebuah Client dan sedang digunakan. Pada umum nya ketika sebuah nomor IP sedang tidka digunakan oleh sebuah

Client, maka ketika ada Client lain nya yang melakukan request kepada Server, Server akan

memberikan nomor IP lain walaupun nomor IP tersebut sedang tidak digunakan selama pada

Pool masih tersedia nomor IP yang lain nya. Sebuah nomor IP yang telah diberikan kepada

suatu Client tidak akan digunakan oleh Client lagi dengan dua pengecualian, tidak ada nomor IP yang tersedia pada Pool lagi, atau masa berlaku dari nomor IP tersebut untuk digunakan oleh Client tersebut sudah habis sehingga Client harus memperbarui masa berlaku nya (Expiry) atau mendapatkan nomor IP yang baru, hal ini tergantung bagaimana ketersediaan nomor IP pada Pool pada saat itu.

Setelah mengingat kembali apa saja yang akan kita pelajari pada pertemuan kali ini, mari kita buka Virtualbox untuk memulai praktikum. Pertama kita pastikan bahwa konfigurasi jaringan pada Virtualbox untuk VM Server nya menggunakan konfigurasi NAT karena jika kita langsung menggunakan konfigurasi Internal Network, ada kemungkinan jika

Interfaceyang digunakan merupakan Internal Network lalu Interface tersebut masih kosong

karena tidak ada nya konfigurasi maka VM Server akan mengalami gagal booting karena tidak memiliki koneksi ehternet yang aktif sama sekali. Maka dari itu kita harus memastikan bahwa jaringan yang kita gunakan pada awal praktikum ini merupakan jaringan NAT sehingga walaupun tidak terdapat konfigurasi sama sekali, maka VM akan tetap bisa melakukan Booting karena mendapatkan IP dari DHCP yang terdapat dari NAT tersebut.

Pertama pastikan bahwa anda telah menyeleksi VM dari Server yang akan digunakan lalu klik pada tombol Settings yang memiliki logo sebagai berikut.

Setelah itu anda bisa memilih bagian Network.

(7)

Laboratorium Teknik Informatika | Pemrograman Jaringan 7

Setelah anda selesai memeriksa konfigurasi jaringan pada Virtualbox nya, silahkan

Start VM tersebut lalu login menggunakan user yang anda miliki. Setelah selesai login, kita

akan memeriksa apakah IP yang digunakan pada saat itu sudah statis sesuai keinginan kita atau belum, sekaligus memeriksa Interface apa yang kita gunakan. Untuk melakukan pemeriksaan tersebut kita bisa menggunakan perintah ifconfig.

Perintah tersebut akan menghasilkan informasi mengenai Interface apa saja yang sedang digunakan beserta informasi mengenai nomor IP dan lain sebagai nya yang terdapat pada setiap Interface tersebut.

Setelah mengetahui Interface apa yang akan kita gunakan, maka kita bisa langsung melakukan konfigurasi untuk memberikan IP Statis terhadap Interface tersebut, dalam hal ini kita akan memberikan IP Statis tersebut kepada Interface enp0s3, kita bisa melakukan konfigurasi terhadap semua Interface yang ada pada sebuah Sistem Operasi yang merupakan atau merupakan turunan dari DistroDebian dengan menggunakan perintah sebagai berikut.

(8)

Laboratorium Teknik Informatika | Pemrograman Jaringan 8

Setelah itu akan muncul prompt untuk memassukan password sebagai root atau yang kita kenal juga sebagai super user, kita mendapatkan prompt tersebut karena kita menjalankan perintah yang sebelum nya dengan menggunakan parameter sudo yang berarti kita menjalankan perintah tersebut sebagai root atau super user, kita tinggal memasukkan password dari root atau super user yang digunakan pada Sistem Operasi tersebut.

Setelah itu akan muncul isi awal dari file konfigurasi tersebut, pada kesempatan ini kita menggunakan text editor Nano untuk melakukan berbagai konfigurasi.

Karena kita telah mengetahui pada sebelum nya bahwa kita akan menggunakan

Interface enp0s3 pada kesempatan ini maka kita bisa fokus kebagian tersebut dari file

konfigurasi.

Lakukanlah perubahan pada bagian diatas sebagai berikut.

Kita telah mengubah konfigurasi dari Interface enp0s3 untuk menggunakan IP Statis yang telah di berikan informasi mengenai IP tersebut pada konfigurasi nya. Setelah selesai melakukan konfigurasi maka kita bisa keluar sekaligus menyimpan perubahan yang telah kita berikan pada file tersebut dengan menggunakan tombol Control + X. Setelah itu akan muncul kembali sebuah prompt yang menanyakan bahwa apa kita ingin menyimpan perubahan

(9)

Laboratorium Teknik Informatika | Pemrograman Jaringan 9

terhadap file tersebut yang telah kita berikan, jawab nya dengan menekan tombol y, jika kita tidak ingin menyimpan nya maka kita jawab dengan n, dan jika kita ingin kembali ke file untuk melakukan perubahan lagi maka kita bisa membatal kan nya dengan menggunakan tombol Control + C.

Setelah itu akan muncul kembali prompt yang menanyakan tentang kita ingin menyimpan file ini dengan nama apa, kita cukup menekan enter saja karena kita tidak ingin melakukan perubahan terhadap nama dari file tersebut. Nama file pada prompt ini akan terisi secara otomatis mengikuti nama file sebelum nya, atau jika kita membuat file baru dengan memberikan parameter nama file juga akan terisi otomatis menggunakan nama tersebut, kecuali jika kita membuat file baru tanpa memberikan parameter nama file maka prompt tersebut akan kosong secara default nya. Setelah itu semua selesai dilakukan, anda bisa mematikan VM anda dengan menggunakan perintah poweroff karena pada versi dari ubuntu ini tidak bisa mendapatkan IP baru hanya dengan merestart service dari networking maka kita perlu melakukan reboot, sekaligus kita juga ingin mengubah Interface yang kita gunakan dimana sebelum nya kita menggunakan NAT menjadi Internal Network sehingga dimana sebelum nya kita menggunakan konfigurasi jaringan bawaan Virtualbox, sekarang kita akan menggunakan jaringan yang kita konfigurasikan dengan cara manual dan akan bisa digunakan diantara sesama VM sehingga tidak akan menggangu jaringan pada Host.

Setelah itu kita bisa kembali menuju ke bagian Settings lalu pilih bagian Network seperti sebelum nya lalu kita ubah konfigurasi nya sehingga jadi menggunakan Internal

Network lalu tekan tombol OK dan tunggu Virtualbox melakukan konfigurasi.

Setelah semua itu selesai kita bisa menyalakan VM dari Server nya kembali lalu melakukan login seperti biasa, ketika sudah selesai kita bisa langsung memeriksa hasil dari konfigurasi nya dengan menggunakan command ifconfig yang hasilnya sekarang seharusnya sebagai berikut.

(10)

Laboratorium Teknik Informatika | Pemrograman Jaringan 10

Jika semua nya telah selesai dan dilakukan dengan benar maka kita bisa melanjutkan ke bagian selanjut nya dimana kita akan melakukan konfigurasi terhadap DNS nya. hal yang perlu kita lakukan untuk pada pertama kali adalah masuk ke folder bind, bind merupakan perangkat lunak yang digunakan untuk mengkofigurasikan sebuah DNS. Untuk masuk ke folder bind kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

Setelah ini kita bisa langsung membuka file konfigurasi awal yang terdapat pada folder tersebut dengan menggunakan perintah sebagai berikut.

Sama seperti sebelum nya kita akan diminta kembali untuk memberikan password, hal ini terjadi karena perintah sudo tidak sama seperti perintah su. Dimana dengan menggunakan perintah sudo kita hanya melakukan berbagai perintah tertentu sebagai root atau super user dengan sementara namun jika kita menggunakan perintah su, kita akan login sebagia root seterus nya namun hal ini tidak dianjurkan karena akan mengurangi keamanan dan meningkatkan kemungkinan kita melakukan kesalahan terhadap hak akses dari file yang kita ubah atau buat untuk kedepan nya. Perintah sudo maupun su akan meminta password kembali setelah masa aktif nya telah habis, dalam hal sudo itu terjadi ketika masa sudo nya sudah kadaluarsa, sementara dalam hal su itu terjadi ketika kita sudah melakukan logout dari

(11)

Laboratorium Teknik Informatika | Pemrograman Jaringan 11

Kita akan menambahkan beberapa baris konfigurasi pada file tersebut, pertama kita akan mendeklarasikan zona baru dan file forward dari zona tersebut dengan menggunakan menyisipkan perintah sebagai berikut pada bagian paling bawah dari file konfigurasi tersebut sehingga tidak mengganggu konfigurasi default nya.

Setelah menambahkan konfigurasi forward kita juga akan menambahkan konfigurasi

Reverse dengan isi sebagai berikut yang akan kita sisipkan dibawah konfigurasi forward.

Setelah selesai menambahkan kedua konfigurasi tersebut, maka hasil akhir dari file konfigurasi tersebut seharusnya kurang lebih akan menjadi sebagai berikut.

Setelah semua konfigurasi sudah kita periksa kembali maka kita bisa menyimpan konfigurasi yang telah kita tambahkan pada file tersebut sekaligus keluar dari text editor nano dengan menggunakan perintah Control + X lalu menjawab y pada prompt pertama dan pastikan bahwa nama dari file tersebut tidak kita ubah pada prompt kedua. Setelah itu kita bisa langsung membuat file untuk konfigurasi forward nya dimana pada konfigurasi diatas kita telah memberikan beberapa keterangan sebagai berikut.

(12)

Laboratorium Teknik Informatika | Pemrograman Jaringan 12

Nama dari DNS yang kita akan gunakan terdapat pada zona pertama dimana pada bagian tersebut kita isikan dengan nama "praktikum.labti.ug" dan di dalam konfigurasi tersebut kita mendeklarasikan tipe dari file tersebut lalu kita memberitahukan file konfigurasi nya. Dibawahnya kita memberikan konfigurasi reverse dimana angka 1.168.192 merupakan 3 blok digit nomor IP dari nomor IP Server namun dituliskan secara terbalik, lalu kita kembali memberi tahukan jenis nya dan lokasi file konfigurasi nya.

Sekarang kita akan membuat file forward pada direktori /etc/bind dimana merupakan direktori yang sedang kita gunakan sekarang dengan menggunakan perintah sebagai berikut.

Kita isikan file tersebut dengan konfigurasi berikut.

Konfigurasi tersebut memberitahukan bahwa domain yang akan kita gunakan adalah praktikum.labti.ug dan domain tersebut memiliki ip 192.168.1.10 dimana IP tersebut merupakan IP dari Server, lalu kita memberitahukan bahwa jika kita juga menerima parameter www sebagai bagian dari domain kita sehingga secara default domain kita akan menerima penggilan melalui praktikum.labti.ug ataupun www.praktikum.labti.ug. Kita juga memberikan konfigurasi terhadap masa berlaku dari cache DNS dimana hal ini tertera pada bagian Expire dan kita juga memberikan Serial dari file konfigurasi ini, nomor dari Serial ini bisa kita isi dengan nomor berapa saja selama nomor tersebut belum digunakan oleh file konfigurasi lain nya. Selain itu juga kita memberikan konfigurasi jangka waktu itu Refresh dan Retry, sama hal nya dengan konfigurasi Expire, konfigurasi tersebut berbentuk angka yang bernilai dalam bentuk "detik".

Setelah semua telah kita periksa kembali kita bisa keluar dari nano sekaligus menyimpan file tersebut dengan menggunakan tombol Control + X dan menjawab y pada

prompt pertama, lalu pada prompt kedua kita periksa apakah nama file nya sesuai yaitu

forward.labti, jika iya kita bisa langsung enter saja namun jika buka maka harus kita benarkan lalu tekan enter. Setelah kita kembali ke terminal kita bisa melanjutkan pekerjaan kita dengan membuat file konfigurasi reverse dengan menggunakan perintah sebagai berikut.

(13)

Laboratorium Teknik Informatika | Pemrograman Jaringan 13

Isi dari file tersebut hampir sama dengan file konfigurasi forward, namun disini kita kembali mendeklarasikan DNS dan IP dari Server, namun pada kali ini terdapat sedikit hal yang berbeda pada bagian akhir dimana biasanya pada bagian bawah kita menggunakan simbol @ namun kali ini kita menggunakan angka 10, angka ini kita dapatkan dari angka ke 4 yang tidak terdapat pada konfigurasi reverse nya. Karena pada saat konfigurasi reverse kita telah menyatakan IP yang digunakan merupakan 192.168.1 namun blok ke 4 dari nomor IP tersebut belum kita deklarasikan pada bagian reverse nya maka kali ini kita langsung memberikan informasi bahwa blok ke 4 berisi angka 4 sehingga hasil akhir nya adalah 192.168.1.10 dan IP itu yang akan menggunakan domain www.praktikum.labti.ug.

Setelah semua kofigurasi telah kita periksa kembali, lalu kita bisa keluar dari nano sekaligus menyimpan file tersebut dengan menggunakan perintah yang seperti biasa kita gunakan. Sekarang kita akan merestart service dari bind itu tersendiri, merestart sebuah

service sama saja seperti kita menutup sebuah aplikasi lalu membuka nya lagi namun beda

nya sebuah service berjalan dibelakang (background) yang secara otomatis akan memulai proses nya sendiri ketika Sistem Operasi sedang melaksanakan Booting. Kita bisa melakukan restart tersebut dengan menggunakan perintah sebagai berikut.

Jika setelah melakukan perintah tersebut tidak muncul error sama sekali maka konfigurasi kita telah berhasil dan kita bisa langsung memeriksa nya dengan menggunakan salah satu dari dua perintah yang dapat kita gunakan. Perintah tersebut merupakan dig dan

nslookup, perintah tersebut digunakan untuk memeriksa sebuah domain apakah bisa kita

temukan dalam jaringan yang ada pada sebuah Device.

Jika kita menggunakan nslookup kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

(14)

Laboratorium Teknik Informatika | Pemrograman Jaringan 14

Jika kita ingin menggunakan perintah dig maka kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

Perintah dig yang akan memberikan feedback lebih detail mengenai domain yang dicari maka kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menghasilkan hasil yang lebih detail dibandingkan dengan perintah nslookup, hasilnya akan kurang lebih menjadi sebagai berikut.

Jika salah satu atau kedua perintah tersebut menunjukan bahwa domain yang telah kita konfigurasikan telah berhasil ditemukan maka kita bisa langsung mencoba untuk menghubungi nya dengan menggunakan perintah ping sebagai berikut.

(15)

Laboratorium Teknik Informatika | Pemrograman Jaringan 15

Perintah tersebut akan menunjukkan sukses atau tidak nya percobaan koneksi kita ke target yang dimana target kita merupakan domain kita sendiri, setelah puas mencoba koneksi kita bisa menghentikan nya dengan menggunakan tombol Control + C (Cancel) ataupun Control + Z (Stop). Setelah itu kita bisa langsung kembali ke direktori home agar kita bisa melanjutkan tahap selanjutnya dimana kita akan melakukan konfigurasi untuk DHCP, kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

Setelah kembali ke folder home, kita bisa langsung membuke file konfigurasi default untuk DHCP dengan menggunakan perintah sebagai berikut.

Isi dari file konfigurasi default tersebut kurang lebih sebagai berikut.

(16)

Laboratorium Teknik Informatika | Pemrograman Jaringan 16

Ubahlah bagian tersebut menjadi sebagai berikut.

Pada bagian tersebut kita menyatakan bahwa DHCP ini akan kita gunakan pada

Interface enp0s3. Setelah kita periksa kembali konfigurasi yang telah kita lakukan maka kita

bisa langsung keluar dan menyimpan konfugirasi tersebut lalu membuka file konfigurasi DHCP yang utama dengan menggunakan perintah sebagai berikut.

File konfigurasi tersebut akan memiliki isi yang pada awal nya secara default akan menjadi kurang lebih sebagai berikut.

(17)

Laboratorium Teknik Informatika | Pemrograman Jaringan 17

Pertama kita akan merubah konfigurasi DNS yang akan dibawakan oleh DHCP secara

default kepada Client sehingga kita tidak perlu melakukan konfigurasi manual terhadap Client untuk menggunakan DNS yang ingin kita gunakan. Konfigurasi yang akan kita ubah

adalah konfigurasi yang sebagai berikut.

Kita akan mengubah konfigurasi tersebut dengan mengisi kan DNS dan IP dari DNS tersebut, dimana setelah kita ubah maka hasil nya kurang lebih menjadi sebagai berikut.

Setelah itu kita akan mengubah konfigurasi berikut.

Konfigurasi tersebut akan kita hapus tanda komentar nya dimana pada Linux maupun

Unix, tanda komentar pada umum nya berbentuk # atau lebih kita kenal sebagai hashtag

ataupun pagar. Setelah kita hapus komentara pada baris ketiga, kurang lebih hasil akhir nya akan menjadi sebagai berikut.

Setelah itu kita bisa mencari konfigurasi yang berisikan sebagai berikut.

(18)

Laboratorium Teknik Informatika | Pemrograman Jaringan 18

Konfigurasi tersebut berisikan informasi tentang DHCP yang akan kita gunakan dimana terdapat informasi mengenai subnet, netmask, range yang merupakan nomor IP yang akan tersedia pada Pool untuk digunakan oleh Client, DNS, dan lain sebagainya.

Setelah itu kita memeriksa semua konfigurasi yang telah kita lakukan, kita bisa langsung keluar dari nano sekaligus menyimpan konfigurasi yang telah kita lakukan lalu kita bisa langsung merestart service dari isc. ISC-DHCP-SERVER merupakan perangkat lunak yang bersifat open source yang umum digunakan sebagai perangkat lunak yang digunakan untuk melakukan konfigurasi sebuah sistem DHCP. Kita bisa melakukan restart pada service tersebut dengan perintah sebagai berikut.

Setelah kita restart dan tidak ada error yang muncul maka konfigurasi kita telah berhasil namun kita bisa memastikan nya bahwa DHCP telah berhasil dan sedang berjalan dengan normal dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menghasilkan status dari service tersebut, dimana hasilnya kurang lebih sebagai berikut.

(19)

Laboratorium Teknik Informatika | Pemrograman Jaringan 19

Setelah kita periksa status dari DHCP yang telah kita konfigurasi, kita bisa langsung keluar dari tampilan laporan status dengan menggunakan tombol Control + C (Cancel) lalu kita akan menguji DNS dan DHCP yang teah kita konfigurasikan dengan menggunakan

Client yang ada.

Pada kesempatan ini Client yang akan kita gunakan adalah sebuah Ubuntu 16.04.1 Desktop, dimana Sistem Operasi ini hampir sama dengan Sistem Operasi yang kita gunakan untuk sisi Server namunm Ubuntu Server lebih di optimalkan untuk berjalan sebagai Server dan secara default terpasang tanpa DE (Desktop Environment) sehingga tidak ada nya tampilan GUI (Graphical User Interface). Hal inilah yang menjadi salah satu perbedaan yang paling menonjol diantara kedua Sistem Operasi tersebut, karena pada Ubuntu Desktop kita mendapat DE bawaan Ubuntu yang bernama Unity.

Kita bisa langsung mengaktifkan Client tanpa menonaktifkan Server karena kita menggunakan virtualisasi dan kita akan membutuhkan Server sebagai penyedia DNS dan DHCP pada kesempatan ini. Sebelum kita nyalakan Client pastikan dulu bahwa Client telah menggunakan Network Interface yang sama seperti Server yaitu Internal Network sehingga kedua Sistem Operasi tersebut bisa saling berkomunikasi.

Setelah selesai kita periksa, kita bisa langsung mengaktifkan nya dengan menyeleksi VM Client lalu klik tombol Start. Setelah itu kita bisa login menggunakan user yang telah tersedia. Setelah login kita bisa langsung menjalankan terminal dengan meng-klik logo tersebut yang terdapat pada bar di sebelah kiri desktop.

Pertama kita akan memeriksa nomor IP dari Client sehingga kita bisa memastikan bahwa Client mendapatkan nomor IP sesuai konfigurasi DHCP dari Server atau tidak dengan menggunakan perintah sebagai berikut.

(20)

Laboratorium Teknik Informatika | Pemrograman Jaringan 20

Perintah tersebut akan menunjukkan Interface yang digunakan oleh Device tersebut beserta informasi - informasi mengenai tiap - tiap Interface yang digunakan sebagai berikut.

Jika konfigurasi DHCP kita telah berhasil dan Client menggunakan nomor IP dari DHCP tersebut maka seharusnya Client akan mendapatkan IP yang sesuai dalam range pada

DHCP Server, dimana range tersebut terdapat diantara 192.168.1.20 hingga 192.168.1.30.

Setelah itu kita bisa memeriksa domain yang telah kita konfigurasikan pada Server dengan menggunakan dua perintah yang tersedia. Perintah tersebut merupakan dig dan

nslookup, perintah tersebut digunakan untuk memeriksa sebuah domain apakah bisa kita

temukan dalam jaringan yang ada pada sebuah Device.

Jika kita menggunakan nslookup kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menghasilkan hasil yang kurang lebih sebagai beirkut.

Jika kita ingin menggunakan perintah dig maka kita bisa melakukan nya dengan menggunakan perintah sebagai berikut.

(21)

Laboratorium Teknik Informatika | Pemrograman Jaringan 21

Perintah tersebut akan menghasilkan hasil yang kurang lebih sebagai berikut.

Setelah itu kita bisa mencoba untuk melakukan ping terhadap domain yang telah kita konfigurasikan pada Server dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menunjukkan sukses atau tidak nya percobaan koneksi kita ke target yang dimana target kita merupakan domain kita sendiri, hasil nya kurang lebih sebagai berikut.

Setelah mencoba koneksi kita bisa menghentikan nya dengan menggunakan tombol Control + C (Cancel) ataupun Control + Z (Stop).

(22)

Laboratorium Teknik Informatika | Pemrograman Jaringan 22

PERTEMUAN 2

FTP dan Web Server

Tujuan:

1. Mahasiswa dapat memahami konsep dari FTP 2. Mahasiswa dapat memahami implementasi dari FTP 3. Mahasiswa dapat memahami konsep dari Web Server 4. Mahasiswa dapat memahami implementasi dari Web Server

(23)

Laboratorium Teknik Informatika | Pemrograman Jaringan 23

PERTEMUAN 2

FTP (File Transfer Protocol) adalah salah satu protokol yang digunakan sebagai standar pengiriman berkas (file) komputer antar mesin - mesin dalam sebuah jaringan internal. FTP merupakan salah satu protokol yang paling awal dikembangkan, dan masih digunakan hingga saat ini untuk melakukan pengunduhan (download) dan pengunggahan (upload) berkas - berkas komputer antara FTP Client dengan FTP Server.

Sebuah FTP Client merupakan aplikasi yang dapat mengirimkan perintah - perintah FTP ke sebuah FTP Server. Sementara FTP Server adalah sebuah service atau daemon yang berjalan diatas sebuah komputer yang merespons perintah - perintah dari sebuah FTP Client. Perintah - perintah FTP dapat digunakan untuk mengubah direktori, mengubah modus pengiriman antara biner dan ASCII, mengunggah berkas komputer ke FTP Server, serta mengunduh berkas dari FTP Server, dan lain sebagainya.

Contoh perintah - perintah FTP :

 FTP (IP Server / Domain Server) contoh : FTP praktikum.labti.ug

Perintah tersebut digunakan untuk menghubungkan Client dengan

Server dimana perintah seperti ini bisa dijalankan secara langsung melalui

sebuah terminal yang telah memiliki instalasi paket FTP Client. Setelah melakukan perintah ini walaupun ada kesalahan ketika proses authentikasi maka pengguna akan langsung masuk ke lingkungan FTP, lingkungan FTP ini ditandai dengan muncul nya "ftp > " pada terminal, perintah ini juga bisa dijalankan tanpa memberikan parameter sama sekali sehingga pengguna akan langsung masuk ke lingkungan FTP tanpa membuka koneksi secara

bersamaan. Perintah - perintah FTP lain nya harus di jalankan pada lingkungan FTP, jika tidak maka perintah tersebut akan dibaca sebagai perintah terminal biasa.

 help

contoh : ftp > help

Perintah tersebut digunakan untuk menampilkan seluruh daftar perintah FTP yang tersedia.

 ? (Nama Perintah) contoh : ftp > ? ascii

Perintah tersebut digunakan untuk mendapatkan bantuan mengenai perintah - perintah yang terdapat pada FTP.

 ascii

contoh : ftp > ascii

Perintah tersebut digunakan untuk mengubah modus pengiriman berkas menjadi modus ascii.

 binary

(24)

Laboratorium Teknik Informatika | Pemrograman Jaringan 24

Perintah tersebut digunakan untuk mengubah modus pengiriman berkas menjadi modus binary.

 bye

contoh : ftp > bye

Perintah tersebut digunakan untuk keluar dari lingkungan FTP (sama hal nya seperti perintah quit ataupun exit).

 quit

contoh : ftp > quit

Perintah tersebut digunakan untuk keluar dari lingkungan FTP (sama hal nya seperti perintah bye ataupun exit).

 exit

contoh : ftp > exit

Perintah tersebut digunakan untuk keluar dari lingkungan FTP (sama hal nya seperti perintah quit ataupun bye). Sebenarnya perintah ini bukanlah perintah dari FTP melainkan perintah dari Unix / Linux namun perintah yang satu ini dapat digunakan dilingkungan FTP.

 cd (Direktori Tujuan) contoh : ftp > cd ujian

Perintah tersebut digunakan untuk pindah direktori yang sedang digunakan pada Server.

 cdup

contoh : ftp > cdup

Perintah tersebut digunakan untuk pindah ke parent directory dari direktori yang sedang aktif pada Server.

 close

contoh : ftp > close

Perintah tersebut digunakan untuk menutup koneksi dengan Server yang sedang terkoneksi namun masih ingin berada di lingkungan FTP (tidak keluar dari lingkungan FTP) sehingga bisa melakukan koneksi lagi dengan Server lain.

 disconnect

contoh : ftp > disconnect

Perintah tersebut bekerja sama hal nya dengan perintah close.

open (IP / Domain dari Server)

contoh : ftp > open praktikum.labti.ug

Perintah tersebut digunakan untuk membuka koneksi dengan Server, jika ketika menjalankan perintah tersebut masih terkoneksi dengan

Server lain maka akan muncul pesan bahwa anda tidak bisa membuka

koneksi baru karena anda telah memiliki koneksi yang aktif dan anda harus menutup koneksi anda yang sedang aktif terlebih dahulu untuk membuka koneksi yang baru.

 delete (Nama File)

(25)

Laboratorium Teknik Informatika | Pemrograman Jaringan 25

Perintah tersebut digunakan untuk menghapus sebuah file yang terdapat pada direktori yang sedang digunakan pada Server (perintah ini bekerja sama hal nya dengan perintah rm pada Unix / Linux).

 get (Nama File)

contoh : ftp > get berkas2.txt

Perintah tersebut digunakan untuk mengunduh sebuah file yang terdapat pada direktori yang sedang digunakan pada Server dan meletakanya pada direktori yang sedang aktif pada Client.

 mget (Nama File 1, Nama File 2, Nama File 3, Dan Seterusnya) / (*) contoh : ftp > mget berkas1.txt berkas2.txt

Perintah tersebut digunakan untuk mengunduh satu atau lebih file yang terdapat pada direktori yang sedang digunakan pada Server dan meletakanya pada direktori yang sedang aktif pada Client. Selain dengan cara menuliskan nama berkas nya satu - persatu, bisa juga digunakan parameter "*" yang berarti semua file yang terdapat pada direktori tersebut.

 put (Nama File)

contoh : ftp > put berkas5.txt

Perintah tersebut digunakan untuk mengunggah sebuah file yang terdapat pada direktori yang sedang digunakan pada Client dan meletakanya pada direktori yang sedang aktif pada Server.

 mput (Nama File 1, Nama File 2, Nama File 3, Dan Seterusnya) / (*) contoh : ftp > mput berkas6.txt berkas7.txt

Perintah tersebut digunakan untuk mengunggah sebuah file yang terdapat pada direktori yang sedang digunakan pada Client dan meletakanya pada direktori yang sedang aktif pada Server. Selain dengan cara menuliskan nama berkas nya satu - persatu, bisa juga digunakan parameter "*" yang berarti semua file yang terdapat pada direktori tersebut.

 lcd (Direktori Tujuan) contoh : ftp > lcd dokumen

Perintah tersebut digunakan untuk pindah direktori, hampir sama dengan perintah cd namun pada perintah lcd direktori yang dipindahkan merupakan direktori yang terpdapat pada Client.

 ls

contoh : ftp > ls

Perintah tersebut digunakan untuk melihat isi dari direktori yang sedang aktif pada Server.

 dir

contoh : ftp > dir

Perintah tersebut digunakan untuk melihat isi dari direktori yang sedang aktif pada Server (sama seperti ls).

(26)

Laboratorium Teknik Informatika | Pemrograman Jaringan 26

 pwd

contoh : ftp > pwd

Perintah tersebut digunakan untuk menampilan path dari direktori yang sedang aktif pada Server.

 mkdir (Nama Direktori) contoh : ftp > mkdir dokumen

Perintah tersebut digunakan untuk membuat direktori baru yang akan diletakkan pada direktori yang sedang aktif pada Server.

 rmdir (Nama Direktori) contoh : ftp > rmdir dokumen

Perintah tersebut digunakan untuk menghapus sebuah direktori yang terdapat pada direktori yang sedang aktif pada Server.

 size (Nama File)

contoh : ftp > size berkas1.txt

Perintah tersebut digunakan untuk melihat ukuran dari sebuah file yang terdapat pada direktori yang sedang aktif pada Server.

 rename (Nama File)

contoh : ftp > rename berkas1.txt berkas2.txt

Perintah tersebut digunakan untuk mengubah nama dari sebuah file yang terdapat pada direktori yang sedang aktif pada Server.

Web Server adalah sebuah perangkat lunak yang memberikan layanan berbasis data dan berfungsi menerima permintaan yang melalui protokol HTTP (Hyper Text Transfer

Protocol) atau HTTPS (Hyper Text Transfer Protocol over TLS / SSL) dari Client. Client bisa

mengirimkan permintaan melalui kedua protokol tersebut bisa dengan berbagai cara, namun cara yang paling umum digunakan adalah dengan menggunakan Web Browser seperti Mozilla

Firefox, Google Chrome, Safari, dan lain sebagainya.

Server akan mengirimkan respond yang dapat berupa halaman web yang pada umum

nya akan berbentuk dokumen HTML ataupun juga bisa dalam API (Application

Programming Interface.). Terdapat beberapa contoh perangkat lunak Web Server yang umum

dipakai seperti Nginx, Apache, Tomcat, Lighttpd, Microsoft Information Internet Service, dan lain sebagainya.

Fungsi utama sebuah Web Server adalah untuk melakukan atau akan mentransferkan berkas permintaan pengguna melalui protokol komunikasi yang telah ditentukan sedemikian rupa (HTTP / HTTPS).

Pada pertemuan kali ini kita akan mencoba untuk melakukan konfigurasi dasar dengan Web Server dan FTP, pada praktikum ini kita akan menggunakan Nginx sebagai Web Server dan Vsftpd sebagai FTP. Setelah melakukan konfigurasi dasar kita juga akan menguji konfigurasi kita dengan menggunakan sebuah VM Client sekaligus mencoba beberapa perintah - perintah FTP.

(27)

Laboratorium Teknik Informatika | Pemrograman Jaringan 27

Pertama tentu saja kita harus membuka Virtualbox lalu menjalankan VM Server dan login dengan user yang telah tersedia. Setelah hal itu selesai kita bisa langsung memulai langkah pertama kita dengan membuka file konfigurasi untuk Vsftpd, hal tersebut dapat kita lakukan dengan perintah sebagai berikut.

Setelah kita membuka file tersebut maka yang pertama kali muncul tentu saja bagian paling awal dari file konfigurasi tersebut yang kurang lebih akan menampilan sebagai berikut.

Hal pertama pada konfigurasi FTP yang perlu kita perhatikan adalah memastikan bahwa tidak diperbolehkanya Anonymous Login dimana hal ini berarti boleh nya seorang pengguna membuka koneksi FTP dengan Server tanpa autentikasi / login sama sekali terlebih dahulu.

(28)

Laboratorium Teknik Informatika | Pemrograman Jaringan 28

Bagian konfigurasi diatas lah yang mengatur tentang diperbolehkan nya atau tidak sebuah Anonymous Login. Lalu kita juga perlu memerhatikan konfigurasi bagian write dimana bagian ini akan mengatur boleh tidak nya pengguna melakukan tindakan yang berkaitan dengan write seperti membuat file atau membuat direktori baru.

Bagian konfigurasi tersebut bernilai YES namun memiliki tanda komentar (# / pagar) didepan nya sehingga bagian tersebut tidak dianggap sebagai bagian dari konfigurasi karena fungsi tanda komentar adalah membuat satu atau lebih baris tidak dibaca oleh komputer ketika sebuah program di eksekusi, dalam hal ini yang di eksekusi adalah varibel - variabel konfigurasi Vsftpd, maka dari itu kita perlu menghilangkan tanda komentar tersebut sehingga hasil akhirnya menjadi kurang lebih sebagai berikut.

Selain itu juga kita perlu memerhatikan bagian konfigurasi yang mengatur tentang penggunaan waktu lokal, bagian konfigurasi tersebut terdapat pada bagian yang tertulis sebagai berikut.

Lalu kita juga perlu mengubah konfigurasi yang mengatur tentang boleh atau tidak nya tindakan yang berkaitan dengan upload atau mengunggah maupun download atau mengunduh dalam modus pengiriman ascii, bagian konfigurasi tersebut terdapat pada bagian yang tertulis sebagai berikut.

(29)

Laboratorium Teknik Informatika | Pemrograman Jaringan 29

Vsftpd sendiri tidak menganjurkan kita mengubah konfigurasi nya menjadi seperti itu, karena hal ini dapat digunakan oleh pihak yang tidak bertanggung jawab untuk melakukan serangan terhadap Server degan menggunakan metode Denial of Service (DoS). Namun kita akan menghiraukan hal tersebut untuk praktikum kali ini sebagai pembelajaran, namun hal ini benar - benar tidak dianjurkan pada pemakaian yang sebenarnya.

Terakhir kita akan mengubah pesan pembuka ketika kita telah berhasil membuka koneksi dengan Server, konfigurasi tersebut terdapat pada bagian yang tertulis sebagai berikut.

Untuk konfigurasi yang satu ini kita hanya perlu menghapus komentar pada baris yang diperlukan saja lalu kita ubah pesan pembuka nya menjadi apa yang kita inginkan, contoh dari hasil akhir nya sebagai berikut.

Setelah semua konfigurasi telah selesai dilakukan dan telah diperiksa kembali, kita bisa keluar sekaligus menyimpan konfigurasi yang telah kita lakukan pada file konfigurasi tersebut dengan menekan tombol Control + X lalu menjawab dengan "y" ketika ditanya pada

prompt pertama tentang apakah kita ingin menyimpan perubahan yang telah kita lakukan

pada file tersebut lalu tekan enter pada prompt kedua karena prompt kedua bertanya soal apakah kita ingin mengubah nama dari file tersebut, karena kita tidak ingin mengubah nama dari file tersebut maka kita bisa langsung lewatkan saja dengan menekan tombol enter.

Setelah selesai dengan file konfigurasi untuk Vsftpd, kita bisa langsung merestart

(30)

Laboratorium Teknik Informatika | Pemrograman Jaringan 30

Setelah selesai melakukan restart, kita bisa langsung memeriksa status dari service tersebut dengan perintah sebagai berikut.

Setelah selesai memeriksa status dari service tersebut kita bisa keluar dari laporan

status tersebut dengan menekan tombol Control + C (Cancel). Pada saat kita menguji coba

FTP pada Client nanti kita diperlukan untuk melakukan autentikasi atau login menggunakan

user yang terdapat pada Server, karena kita akan melakukan aktifitas pengiriman file sebagai user tersebut.

Kita bisa saja menggunakan user yang sekarang kita gunakan untuk melakukan konfigurasi pada Server, namun untuk menambah pengetahuan kita bisa melakukan pembuatan sebuah user baru pada Server sehingga ketika kita menguji dari Client kita bisa menggunakan user yang kita telah buat tersebut. Untuk melakukan hal tersebut kita bisa melakukanya dengan menggunakan perintah sebagai berikut.

Setelah itu kita bisa langsung mengisi informasi lengkap mengenai user tersebut dengan menggunakan perintah sebagai berikut.

(31)

Laboratorium Teknik Informatika | Pemrograman Jaringan 31

Sekarang kita bisa melanjutkan konfigurasi kita dengan berkenalan sedikit dengan salah satu Web Server yang umum digunakan yaitu Nginx. Untuk Web Server sendiri kita hanya akan mengenal dimana Nginx secara default menyimpan halaman yang akan ditampilkan nya ketika menerima sebuah request lalu mengubahnya sesuai keinginan kita. Sebelum nya karena kita tidak perlu melakukan instalasi maka kita hanya perlu memeriksa apakah Nginx telah berjalan pada Server dengan menggunakan perintah sebagai berikut.

Hasil dari pemeriksaan status tersebut kurang lebih akan menghasilkan hasil yang kurang lebih sebagai berikut.

Setelah kita selesai memeriksa status tersebut, kita harus masuk ke folder dimana merupakan tempat penyimpanan halaman web yang digunakan oleh Nginx secara default, hal tersebut dapat kita lakukan dengan menggunakan perintah sebagai berikut.

Setelah sampai ke direktori yang kita tuju, kita bisa langsung memeriksa apa saja isi dari direktori tersebut dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menampilkan seluruh file maupun direktori yang terdapat pada direktori tersebut, kurang lebih hasilnya akan menjadi sebagai berikut.

Isi dari direktori tersebut hanyalah satu buah dokumen HTML secara default, halaman tersebutlah yang akan tampil ketika kita mengakses IP ataupun Domain dari Server melalui

Web Browser ataupun Curl dan lain sebagainya.

Sekarang kita telah mengetahui file apa yang ingin kita ubah sehingga kita bisa langsung membuka file tersebut menggunakan Nano Text Editor dengan menggunakan perintah sebagai berikut.

(32)

Laboratorium Teknik Informatika | Pemrograman Jaringan 32

Secara default, isi dari file tersebut akan berisi sebagai berikut.

Kita akan melakukan sedikit perubahan dengan tampilan dari halaman tersebut menggunakan sintaks HTML, kalian bisa melakukan perubahan yang kalian ingikan. Setelah kita lakukan perubahan hasilnya kurang lebih akan seperti berikut.

Setelah selesai melakukan perubahan, kita bisa keluar sekaligus menyimpan konfigurasi yang telah kita lakukan pada file konfigurasi tersebut dengan menekan tombol Control + X lalu menjawab dengan "y" ketika ditanya pada prompt pertama tentang apakah kita ingin menyimpan perubahan yang telah kita lakukan pada file tersebut lalu tekan enter

(33)

Laboratorium Teknik Informatika | Pemrograman Jaringan 33

pada prompt kedua karena prompt kedua bertanya soal apakah kita ingin mengubah nama dari file tersebut, karena kita tidak ingin mengubah nama dari file tersebut maka kita bisa langsung lewatkan saja dengan menekan tombol enter.

Setelah semua konfigurasi yang telah kita lakukan benar - benar selesai dan tidak ada yang ingin kita ubah lagi, kita bisa langsung menjalankan VM Client tanpa mematka VM

Server, pastikan semua konfigurasi pada Virtualbox sesuai dengan bagaimana praktikum

sebelum nya berakhir karena kita akan menggunakan konfigurasi tersebut untuk berkomunikasi antar VM dan menggunakan DNS yang kemarin telah kita buat.

Setelah VM Client menyala kita bisa langsung login dan membuka terminal untuk melakukan sedikit pengujian terhadap Web Server lalu FTP. Pertama kita akan melakukan Curl terhadap Server sehingga isi dari halaman web yang terdapat pada Server akan tampil secara mentah, biasanya metode ini digunakan untuk parsing data dan lain sebagainya. Kita dapat melakukan hal tersebut dengan menggunakan perintah sebagai berikut.

Perintah tersebut akan menampilkan respond dari Server secara mentah - mentah, maka dari itu sebelumnya sering disinggung bahwa metode ini lebih sering dilakukan untuk melakukan parsing data dan lain sebagainya, kurang lebih hasilnya akan menjadi sebagai berikut.

Setelah itu kita bisa membuka Web Browser lalu mengetikkan domain yang pada pertemuan sebelum nya telah kita buat pada bagian url. Browser akan menampilkan respond dari Server dalam bentuk halaman web, inilah cara umum yang biasa kita gunakan sehari - hari untuk melakukan Surfing di internet dan lain sebagainya. Kurang lebih hasilnya akan menjadi sebagai berikut.

(34)

Laboratorium Teknik Informatika | Pemrograman Jaringan 34

Setelah menguji komunikasi melalui protokol HTTP, kita akan menguji komunikasi menguji protokol FTP dengan menggunakan perintah sebagai berikut.

Setelah itu kita akan di minta untuk melakukan autentikasi atau login menggunakan

user yang telah kita buat sebelum nya, lalu pesan pembuka yang telah kita buat sebelum nya

juga akan muncul dan terminal akan sedikit berubah dengan tanda "ftp > " yang menandakan kita sudah masuk kedalam lingkungan FTP. Kurang lebih tampilanya akan menjadi sebagai berikut.

Disinilah kita mulai bisa menjelajahi berbagai perintah - perintah yang terdapat pada FTP, selain melalui terminal, kita juga bisa menjelajahi isi dari Server melalui protokol FTP menggunakan Web Browser dengan cara mengetikkan url sebagai berikut.

(35)

Laboratorium Teknik Informatika | Pemrograman Jaringan 35

Setelah kita masukkan url tersebut kita akan diminta untuk login kembali dengan tampilan kurang lebih sebagai berikut.

Setelah kita melakukan login, kita akan secara otomatis masuk ke halaman yang menunjukkan direktori home dari user yang kita gunakan untuk login pada FTP. Kurang lebih tampilan nya menjadi sebagai berikut.

Setelah ini kita bisa langsung mempraktikan berbagai perintah - perintah yang terdapat pada FTP yang tertera pada bagian awal dari modul pertemuan ini, kalian bisa menggunakan terminal untuk melakukan berbagai perintah tersebut dan menggunakan Web

(36)

Laboratorium Teknik Informatika | Pemrograman Jaringan 36

PERTEMUAN 3

UDP

Tujuan:

1. Mahasiswa dapat memahami konsep dari komunikasi menggunakan protokol 2. Mahasiswa dapat memahami konsep dari protokol UDP

(37)

Laboratorium Teknik Informatika | Pemrograman Jaringan 37

PERTEMUAN 3

UDP (User Datagram Protocol) merupakan salah satu protokol yang mendukung komunikasi yang tidak dapat diandalkan (unreliable), hal ini dikarena UDP bersifat

Connectionless karena pesan - pesan UDP akan dikirimkan tanpa harus dilakukan proses

negosiasi koneksi antara dua host yang hendak bertukar informasi. UDP juga mengirimkan pesan - pesan nya tanpa adanya nomor urut atau pesan ackknowledment. Protokol lapisan aplikasi yang berjalan diatas UDP harus melakukan pemulihan terhadap pesan - pesan yang hilang selama transmisi. Umumnya, protokol lapisan aplikasi yang berjalan diatas UDP mengimplementasikan layanan keandalan mereka masing - masing, atau mengirim pesan secara periodik atau dengan menggunakan waktu yang telah didefinisikan.

UDP menyediakan mekanisme untuk mengirim pesan - pesan ke sebuah protokol lapisan aplikasi atau proses tertentu di dalam sebuah host dalam jaringan yang menggunakan TCP/IP. Header UDP berisi field Source Process Identification dan Destination Process Identification.

UDP menyediakan penghitungan checksum berukuran 16-bit terhadap keselurahan pesan UDP. Pesaing UDP yang cukup terkenal adalah TCP atau dikenal juga sebagai TCP/IP, perbedaan UDP dengan TCP/IP yang cukup diketahui banyak kalangan adalah UDP tidak memastikan pesan yang di kirimkan oleh nya sampai ke tujuan nya dengan utuh, berbeda dengan TCP yang akan memeriksanya terlebih dahulu sebelum menyelesaikan transaksi, jika ada kekurangan data maka TCP akan mengirimkan ulang data tersebut, sementara UDP harus memeriksa nya secara manual dan jika ada kekurangan harus mengirim semua pesan dari awal kembali.

Pada praktikum kali ini kita akan mencoba untuk membuat script untuk berkomunikasi melalui protokol UDP dengan menggunakan bahasa pemrogramanPython. Pertama kita harus jalankan kedua VM yaitu VM Server dan VM Client. Setelah itu kita buat script untuk sisi Server dengan menggunakan perintah sebagai berikut.

(38)

Laboratorium Teknik Informatika | Pemrograman Jaringan 38

Setelah selesai memasukkan script tersebut kita bisa langsung keluar sekaligus menyimpan nya, lalu membuat script untuk sisi Client dengan perintah sebagai berikut.

(39)

Laboratorium Teknik Informatika | Pemrograman Jaringan 39

Setelah selesai memasukkan script tersebut kita bisa langsung keluar sekaligus menyimpan nya, lalu kita bisa mulai menjalankan script yang terdapat pada sisi Server dengan perintah sebagai berikut.

Setelah itu kita bisa menjalankan script pada sisi Client dengan menggunakan perintah sebagai berikut.

Setelah itu kita akan diminta untuk memasukkan pesan yang kita inginkan, kita bisa langsung mengisikanya dengan pesan yang kita inginkan dengan salah satu contoh sebagai berikut.

Setelah itu kita bisa melihat output dari program sebagai berikut.

Lalu kita bisa melihat hasilnya pada sisi Server yang kurang lebih akan menghasilkan output sebagai berikut.

Kita bisa terus mencoba berkomunikasi dengan script tersebut atau juga bisa kita kembangkan agar bisa kita implementasikan lebih baik.

(40)

Laboratorium Teknik Informatika | Pemrograman Jaringan 40

PERTEMUAN 4

TCP

Tujuan:

1. Mahasiswa dapat memahami konsep dari protokol TCP 2. Mahasiswa dapat memahami implementasi dari protokol TCP

(41)

Laboratorium Teknik Informatika | Pemrograman Jaringan 41

PERTEMUAN 4

TCP (Transmission Control Protocol) adalah suatu protokol yang berada dalam lapisan transport (model OSI maupun DARPA) yang berorientasi dengan sambungan (Connection-Oriented) dan dapat diandalkan (Reliable). Karakteristik dari TCP dikenal juga sebagai oposisi dari karakter protokol UDP, karena TCP bersifat Connection Oriented dimana sebelum data dapat di transmisikan antara dua host, dua proses yang berjalan pada lapisan aplikasi harus melakukan negosiasi untuk membuat sesi koneksi terlebih dahulu. Koneksi TCP ditutup dengan menggunakan proses terminasi koneksi TCP (TCP Connection Termination).

Untuk setiap host TCP, koneksi yang terjadi antara dua host terdiri atas dua buah jalur, yakni jalur keluar dan jalur masuk atau yang dikenal juga sebagai Full Duplex. Dengan menggunakan teknologi lapisan yang lebih rendah yang mendukung Full Duplex, maka data pun dapat secara simultan diterima dan dikirim. Header TCP berisi nomor urut (TCP Sequence Number) dari data yang ditransmisikan dan sebuah Acknowledgment dari data yang masuk.

Data yang dikirimkan ke sebuah koneksi TCP akan diurutkan dengan sebuah nomor urut paket dan akan mengharapkan paket Positive Acknowledgment dari penerima. Jika tidak ada paket Acknowledgment dari penerima, maka segmen TCP akan ditransmisikan ulang. Pada pihak penerima, segmen - segmen yang datang tidak sesuai dengan urutanya akan diletakkan dibelakang untuk mengurutkan segmen - segmen TCP. Untuk menjamin integritas setiap segmen TCP, TCP mengimplementasikan penghitungan TCP Checksum.

Pada praktikum kali ini kita akan mencoba untuk membuat script untuk berkomunikasi melalui protokol TCP dengan menggunakan bahasa pemrogramanPython. Pertama kita harus jalankan kedua VM yaitu VM Server dan VM Client. Setelah itu kita buat script untuk sisi Server dengan menggunakan perintah sebagai berikut.

(42)

Laboratorium Teknik Informatika | Pemrograman Jaringan 42

Setelah itu kita simpan file tersebut dan kita lanjutkan dengan membuat script pada sisi Client dengan menggunakan perintah sebagai berikut.

Lalu kita isi script tersebut dengan kodingan berikut.

Setelah itu kita simpan file tersebut dan kita lanjutkan dengan menjalankan script yang telah kita buat pada sisi Server dengan menggunakan perintah sebagai berikut.

(43)

Laboratorium Teknik Informatika | Pemrograman Jaringan 43

Setelah itu kita jalankan script yang telah kita buat pada sisi Client dengan menggunakan perintah sebagai berikut.

Setelah itu kita akan diminta untuk memasukkan pesan yang ingin kita kirimkan yang kurang lebih tampilanya menjadi sebagai berikut.

Kita bisa mengirimkan pesan apa saja lalu kita tekan enter sehingga akan muncul kembali pesan yang kita kirimkan sebagai berikut.

Setelah itu semua selesai kita bisa melihat hasilnya pada bagian Server yang dimana hasilnya akan menjadi kurang lebih sebagai berikut.

Kita bisa terus mencoba berkomunikasi dengan script tersebut atau juga bisa kita kembangkan agar bisa kita implementasikan lebih baik.

(44)

Laboratorium Teknik Informatika | Pemrograman Jaringan 44

DAFTAR PUSTAKA

1. [URL] :https://wiki.python.org/moin/UdpCommunication

Referensi

Dokumen terkait