Pemrograman Jaringan

36
Pemrograman Jaringan Web & DNS Aurelio Rahmadian

description

Pemrograman Jaringan. Web & DNS. Aurelio Rahmadian. Objektif. Web Konsep Dasar Arsitektur HTTP DNS Definisi Proses Kerja. Web – Konsep Dasar. Sejarah Web Ditemukan oleh Tim Berners-Lee Konsep dari universal readership: any individual, on any type of computer, in any location, - PowerPoint PPT Presentation

Transcript of Pemrograman Jaringan

Page 1: Pemrograman Jaringan

Pemrograman JaringanWeb & DNS

Aurelio Rahmadian

Page 2: Pemrograman Jaringan

ObjektifWeb

◦Konsep Dasar◦Arsitektur◦HTTP

DNS◦Definisi◦Proses Kerja

Page 3: Pemrograman Jaringan

Web – Konsep DasarSejarah WebDitemukan oleh Tim Berners-LeeKonsep dari universal readership:

◦any individual,◦on any type of computer,◦in any location,◦should be able to access data◦by using only one simple and

common program

Page 4: Pemrograman Jaringan

Web – Konsep DasarInternetInterconnected Networks

◦Interoperable via standards (TCP/IP)Sejarah

◦ARPANet (akhir 60-an, awal 70-an) – militer

◦Diambil alih & didanai oleh NSF (1986)

◦Commercial backbones (1996 - kini)

Page 5: Pemrograman Jaringan

Web – Konsep DasarInternet vs IntranetInternet

◦Global, open, public◦Disebut juga “extranet” untuk

membedakannya dari IntranetIntranet

◦Jaringan pribadi untuk digunakan secara eksklusif oleh sebuah organisasi

◦Umumnya berada di belakang firewall

Page 6: Pemrograman Jaringan

Web – Konsep DasarLAN

Page 7: Pemrograman Jaringan

Web – Konsep DasarWAN

Page 8: Pemrograman Jaringan

Web – Konsep DasarInternet

Page 9: Pemrograman Jaringan

Web – Konsep DasarInternet vs WebInternet menyediakan

infrastruktur dari transmisi informasi melalui jaringan

Web berisi interlinked information (web pages)

Page 10: Pemrograman Jaringan

Web – ArsitekturSistem web merupakan aplikasi

yang:◦Berarsitektur client-server

Software web browser di sisi client Software web server di sisi server

◦Menggunakan protokol HTTP dalam komunikasi antara client dan server Mempunyai fungsi untuk

mengambil/menjalankan isi file dokumen web di server dan menampilkannya di sisi client

Page 11: Pemrograman Jaringan

Web – Arsitektur

Page 12: Pemrograman Jaringan

Web – Arsitektur

Page 13: Pemrograman Jaringan

Web – ArsitekturClient

◦User-agent◦Program yang digunakan untuk

melakukan request ke server dan mengolah respon dari server

◦Menampilkan informasi yang berasal dari server (teks dan gambar)

Page 14: Pemrograman Jaringan

Web – ArsitekturServer

◦Berbentuk software/program (daemon, httpd) yang dijalankan pada komputer server

◦Berfungsi agar dokumen web yang disimpan di server dapat diakses oleh user melalui internet/intranet

◦Web servers : server yang menyediakan layanan web

◦Web site = host + Web server + information (file system)

Page 15: Pemrograman Jaringan

Web – Arsitektur

Web server Apache dapat ditemukan dalam paket XAMPP

Page 16: Pemrograman Jaringan

Web – ArsitekturURL (Uniform/Universal Resource

Locator)◦URL adalah sistem pengalamatan file

yang digunakan di internet◦Format URL standar dideskripsikan di

RFC 1738

Page 17: Pemrograman Jaringan

Web – HTTPHTTP (Hyper Text Transfer Protocol) adalah

protokol yang dipergunakan untuk mentransfer dokumen dalam World Wide Web (WWW)

Protokol ini ringan, tidak berstatus, dan generik yang dapat dipergunakan berbagai macam tipe dokumen

Pengembangan HTTP dikoordinasi oleh Konsorsium World Wide Web (W3C) dan Internet Engineering Task Force (IETF)

Versi yang umum digunakan adalah HTTP/1.1 (RFC 2616)

Page 18: Pemrograman Jaringan

Web – HTTPHTTP adalah sebuah protokol

meminta/menjawab antara client dan server. Sebuah client HTTP seperti web browser, biasanya memulai permintaan dengan membuat hubungan TCP/IP ke port tertentu di server (biasanya port 80)

Page 19: Pemrograman Jaringan

Web – HTTPHTTP servers, browsers & proxies

◦ Web server dan browser bertukar informasi menggunakan HTTP, oleh karena itu web server sering disebut sebagai HTTP server

◦ Web browser seringkali disebut sebagai HTTP client, tetapi fungsi/kemampuannya tidak terbatas pada HTTP saja

◦ HTTP proxy adalah program yang berperan sebagai server dan client, yakni meminta request pada web server atas nama client yang lain

◦ Proxy memungkinkan pengiriman HTTP melalui firewall, mendukung caching dari pesan HTTP, serta filtering dari request HTTP

Page 20: Pemrograman Jaringan

Web – HTTPHTTP Proxy

Page 21: Pemrograman Jaringan

Web – HTTPContoh Transaksi

◦S = ServerC = Client

◦C : (Inisialisasi koneksi)C : GET /index.htm HTTP/1.1C : Host: www.wikipedia.orgS : 200 OKS : Mime-type: text/htmlS :S : -- data dokumen --S : (close connection)

Page 22: Pemrograman Jaringan

Web – HTTPStatus code adalah tiga digit integer,

dan digit pertama menentukan kategori umum dari respon:◦1xx indicates an informational message◦2xx indicates success of some kind◦3xx redirects the client to another URL◦4xx indicates an error on the client's part

Yes, the system blames it on the client if a resource is not found (i.e., 404)

◦5xx indicates an error on the server's part

Page 23: Pemrograman Jaringan

DNS – DefinisiDomain Name System (DNS)

merupakan sistem penamaan hirarki atas komputer, service, atau resource yang terhubung ke jaringan

DNS membantu user dalam mengakses informasi melalui Internet

Page 24: Pemrograman Jaringan

DNS – DefinisiSecara konsep DNS berperan

sebagai buku telepon untuk Internet, yakni memetakan hostname (misal www.example.com) ke alamat IP (misal 208.77.188.166)

Domain name lebih mudah untuk diingat dan diucapkan dibandingkan alamat IP

Page 25: Pemrograman Jaringan

DNS – DefinisiHirarki dari domain menurun dari

kanan ke kiri (bagian kiri merupakan subdomain bagian kanan)

Bagian paling kanan merupakan top-level domain, misalkan www.example.com merupakan bagian dari top-level domain “.com”

Page 26: Pemrograman Jaringan

DNS – Definisi

Page 27: Pemrograman Jaringan

DNS – DefinisiInternet Assign Number Authority (IANA)

adalah organisasi yang bertanggung jawab atas pembagian DNS root zone

Pada 1980an domain name space dibagi menjadi 2 bagian utama, yaitu:◦country code top-level domain (ccTLD) yang

berupa dua karakter kode teritori (kependekan dari nama negara)

◦generic top-level domain (gTLD) yang merepresentasikan 7 kategori dari nama dan organisasi yaitu gov, edu, com, mil, org, net, int

Page 28: Pemrograman Jaringan

DNS – Proses KerjaMisalkan user merupakan

pegawai di perusahaan XYZ, ingin mengakses www.net.compsci.googleplex.edu melalui web browser, maka user perlu memasukkan hostname tersebut sebagai URL pada address bar

Page 29: Pemrograman Jaringan

DNS – Proses Kerja1. Web browser menerima input hostname,

memanggil local resolver untuk memproses www.net.compsci.googleplex.edu

2. Resolver memeriksa cache apakah sudah ada alamat untuk nama tersebut, kalau sudah maka alamat tersebut diberikan ke web browser

◦ Resolver juga memeriksa host table file apakah ada static mapping (Untuk OS Windows ada di C:\Windows\system32\drivers\etc\hosts)

Page 30: Pemrograman Jaringan

DNS – Proses Kerja3. Resolver membuat query dan

mengirimnya ke local DNS server (misalkan ns1.xyzindustries.com)

4. Local DNS server menerima request dan memeriksa cache. Juga memeriksa apakah memiliki record zone yang dapat mencari www.net.compsi.googleplex.edu

5. ns1.xyzindustries.com membuat request atas hostname yang dicari dan mengirimnya ke root name server

Page 31: Pemrograman Jaringan

DNS – Proses Kerja6. Root name server tidak memberikan

penyelesaian akhir, hanya memberikan nama dan alamat dari name server untuk domain “.edu”

7. ns1.xyzindustries.com membuat request atas hostname yang dicari dan mengirimnya ke name server untuk “.edu”

8. Name server “.edu” memberikan nama dan alamat dari name server untuk domain “googleplex.edu”

9. ns1.xyzindustries.com membuat request atas hostname yang dicari dan mengirimnya ke name server untuk “googleplex.edu”

Page 32: Pemrograman Jaringan

DNS – Proses Kerja10.Server name “googleplex.edu”

memeriksa record yang dimiliki, dan ternyata hostname yang dicari ada di subdomain “compsci.googleplex.edu” yang berada di zone yang berbeda. Diberikan server name untuk zone tersebut

11.ns1.xyzindustries.com membuat request atas hostname yang dicari dan mengirimnya ke name server untuk “compsci.googleplex.edu”

Page 33: Pemrograman Jaringan

DNS – Proses Kerja12. Name server “compsci.googleplex.edu” yang

memiliki otoritas atas www.net.compsci.googleplex.edu. Name server ini memberikan alamat IP atas hostname tersebut ke ns1.xyzindustries.com

13. ns1.xyzindustries.com menyimpan pasangan nama dan alamat IP ini di cache

14. Local name server memberikan hasil pencarian ini ke local resolver pada komputer user

15. Local resolver juga menyimpan hasil pencarian pada cache

16. Local resolver memberikan alamat IP ke web browser

17. Web browser mengirimkan HTTP request

Page 34: Pemrograman Jaringan
Page 35: Pemrograman Jaringan
Page 36: Pemrograman Jaringan

DNS – Verifikasi DNSUntuk mengetahui apakah DNS server

kita dapat mencari hostname yang kita inginkan dapat menggunakan nslookup◦C:\>nslookup google.com

Dapat juga menggunakan tools ini untuk memeriksa DNS Server tertentu untuk mengetahui kemampuannya untuk meresolve hostname◦C:\>nslookup

>Server 206.13.30.12>google.com