Sunday, June 16, 2019

Keren !! Inilah Cara Hack Akun Facebook Terbaru 2019

Pernah gak liat postingan Facebook teman, tapi postingannya aneh tidak seperti biasa? atau pas mau masuk akun facebook tiba-tiba tidak bisa, katanya password salah ? Besar kemungkinan akun tsbt sudah di hack oleh hacker.

foto hacking fb
Example



Sudah banyak kasusnya, dan di blog ini sudah sempat dibahas bagaimana cara mengembalikan akun facebook yang di hack secara detail. Walaupun begitu, tetap aja ada yang tidak berhasil dan terpaksa harus menghapus akun facebook yang di hack tsbt.

Itulah kenapa, mimin ingin membagi informasi tentang bagaimana cara hack facebook agar kamu bisa melindungi akun facebook kamu dari serangan hacker yang tidak bertanggung jawab. Jadi jangan salah paham dulu yak, (kaya kamu salah mengartikan perhatian dia ke kamu hehehe), karna disini mimin tidak berniat membantu kamu melakukan hack ke akun orang lain.

Disini mimin akan bagikan informasi ini karena ingin kamu belajar bagaimana membuat akun facebook kamu aman. Karena menjaga dan menghormati privacy orang itu sangat mimin junjung tinggi (cieeee elaaahhh  hehehhe)

Belum lagi undang-undang ITE. Hati-hati buat yang niat macam-macam bisa masuk penjara.

Cara nge-hack akun Facebook seseorang

Judul yang benar untuk artikel ini adalah “cara hack akun facebook“, bukan “cara hack facebook“.

Banyak dari kita yang tidak paham apa perbedaan hal ini.

Pertama, kalau kita ingin hack facebook, maka fokusnya adalah facebook, situs facebook itu sendiri, dan kita perlu pengetahuan hacking yang benar-benar tinggi untuk bisa menembus pertahanan situs facebook. Dan hal ini hampir ga mungkin dilakukan oleh orang biasa.

Sedangkan kalau kita bicara mengenai cara hack “akun” facebook, fokus kita ada di user, atau penggunanya. Fokus kita ada di orang yang di targetkan. Dan ini artinya, yang kita targetkan adalah perangkat dari orang tsbt, misalnya handphone, tablet, laptop, komputer, atau akun emailnya.

Jadi disini caranya pun bisa jadi lebih mudah, karena pertahanan laptop si target ga mungkin sama dengan server facebook yang dijaga ketat dengan system canggih dan engineer yang juga hebat.

Apalagi kalau target adalah teman yang laptop/hp nya bisa kamu pinjem sebentar2. Itu akan bikin pekerjaan hack-menghack ini jadi jauh lebih mudah.

Jadi disini fokus kita adalah ke pengguna. Dan berikut ini adalah beberapa cara yang untuk melakukan hack ke akun facebook seseorang..

Inilah Cara Hack Akun Facebook Terbaru 2019

Cara hack ini yang paling mudah, simple dan bahkan bisa dilakukan oleh pemula. Jadi cara ini juga yang paling ga terduga sih. Cara ini bisa jadi mudah karena kita bisa akses perangkat orang tsbt, mungkin pinjem beberapa menit cukup untuk hal ini.

A.1 Install aplikasi spyware
Spyware merupakan aplikasi kejahatan yang berfungsi untuk memata matai aktivitas komputer kita. Tentu saja aplikasi ini memata-matai aktivitas yang ada di komputer kita tanpa kita sadari layaknya mata-mata. Setelah merekam semua aktivitas di komputer kamu, Spyware akan mengirimkan pesan kepada pihak ketiga atau si pembuat spyware.

spyware nugaskuyy
Spyware


Banyak banget apllikasi spyware yang bisa digunakan untuk memata-matai kegiatan seseorang di perangkat mereka.

Aplikasi ini bisa dipakai bahkan untuk tahu apa aja yang mereka lakukan di perangkat tsbt tak terkecuali email dan password facebook kamu.

Untuk installnya gampang banget, tinggal pinjem ponselnya sebentar terus pasang aplikasi nya udah deh aplikasi spyware akan mengirimkan semua aktivitas di perangkat nya.

Makanya gaes jangan asal minjemin Ponsel atau perangkat kamu ke sembarang orang. Kita tidak tahu kan apa yang akan mereka lakukan pada perangkat kita. Tetap waspada dan hati hati ya !

A.2 Lihat password tersimpan
Pernah gak saat kita log in Facebook di browser ada pilihan untuk mensave password dan email kita? Biasanya kita tertarik untuk menyimpannya agar jika kita lupa password tidak harus memperbaiki akun dan ribet mengganti password akun facebook kita.

Pop up pada jendela browser akan menyimpan email dan password kita, oleh karena itu siapapun yang bisa akses perangkat kita, bisa mengakses data password facebook yang tersimpan tersebut.

Cara ini sama juga, asalkan ada alasan kita buat pinjem perangkat mereka sebentar, lalu cek password yang tersimpan, maka sudah pasti dapat itu data loginnya.

Nah … udah tahukan bahayanya, ayo jangan asal pinjemin ponsel atau laptop kamu ya gaes !

Kalau temen hack mungkin cuma iseng atau pengen jahilin kamu. Dan biasanya ga akan sampe merusak. Tapi ya, jaga-jaga wajib sih.
Sosial Media terbesar saat ini adalah Facebook. Bahkan sebuah riset mengatakan bahwa 1/4 penduduk bumi saat ini adalah pengguna Facebook.

Sayangnya, tidak semua orang punya pemahaman yang baik dalam proteksi dan keamanan akun mereka. Sehingga mereka bisa jadi target empuk.
Tingkat keamanan server Facebook memang sangat tinggi. Tapi penggunanya engga 😀

Berikut ini beberapa metode hacking yang bisa dipakai untuk hack akun pengguna dari jarak jauh tanpa pinjem-pinjeman hp.

TAHUKAH APA ITU MITM(Man In The Middle) ??

B.1 Phishing
Phising merupakan suatu metode hacking yang udah ada sejak jaman dahulu kala. Dan ga hanya dilakukan untuk hack akun facebook, tapi bisa untuk semua jenis akun. Entah itu akun sosmed, internet banking, akun email, dll.

phising nugaskuyy
Phising


Phising site dibuat sedemikian rupa, sehingga mirip sama tampilan website targetnya.

Dikasus kita sekarang ini misalnya, tampilan situs phising akan dibuat seperti tampilan login facebook. Yang berbeda hanya di url-nya saja.

Ketika kamu klik link ke situs tersebut, dan kamu tidak jeli, kamu pikir kamu sedang berada dilaman login facebook. Padaha bukan. Lalu kamu dengan bodo*nya memasukkan username dan password kamu dilaman tsbt.

Data login kamu tersebut akan otomatis disimpan dan dikirim ke si pembuat situs pishing tsbt.

Langkah antisipasinya adalah saat kamu dapat sms ataupun email yang berisi link dan mereka meminta kamu mengklik link tsbt, pastikan bahwa link tersebut beneran link yang menuju ke website resmi bukan website tiruan/abal-abal.

Inilah Cara Hack Akun Facebook Terbaru 2019

B.2. Keylogger
Nah… cara hack facebook yang biasa digunakan selanjutnya adalah menggunakan metode Keylogger.

keylogger nugaskuyy
Keylogger


Apa sih keylogger??? Keylogger merupakan Aplikasi yang dapat merekam semua aktivitas pengguna komputer.

Metode ini sangat mudah untuk digunakan. Hacker hanya perlu memasang aplikasi pada komputer korban kemudian apapun yang diketik oleh korban akan di save menjadi Log yang akan dikirimkan melalui Email atau alamat FTP.
Untuk penginstallan keylogger, ini biasanya dilakukan dengan cara mengirimkan email berisi link donwload aplikasi ini, atau lewat situs-situs download gratis yang bisa diam-diam menginstal aplikasi ini.

Aplikasi ini mirip seperti virus karena biasanya selalu tersembunyi dan berjalan di background tanpa kita ketahui.

B.3. Hijacking Session
Tahu gak gaes? menggunakan wifi disembarang tempat ternyata dapat digunakan peretas melalui cookie browser untuk mengautentikasi pengguna pada situs WEB untuk mengakses akun korban.

Metode ini sering digunakan para hacker untuk mengambil email dan password Facebook korban.

Masih mau cari wifi walaupun kamu jadi gak aman???  kalo mimin sih masih wkwkwkkw

B.4. Menggunakan Social Engineering
Social engginering adalah manipulasi psikologis yang dilakukan oleh seseorang dalam sebuah aksi untuk menguak informasi target target melalui korban atau pihak lain agar memperoleh informasi yang dimaksud.

Biasanya hacker akan memanfaatkan kata kunci sederhana seperti tanggal lahir korban untuk mencoba membuka akun facebook korban. Dengan metode ini hacker akan sangat mudah masuk ke akun facebook korban.

B.5. Memanfaatkan Kelalaian Target
Kamu suka lupa log out dari akun facebook kamu? hayooo siapa yang suka ceroboh disini? Perilaku yang lalai seperti lupa log-out akun facebook memang terlihat biasa aja, tapi kalau kejadiannya di komputer publik, ini bisa jadi masalah.

Hal ini bisa disalah gunakan untuk melakukan kejahatan oleh orang yang tidak bertanggung jawab. Mulai sekarang lebih berhati – hati lagi ya gaes.

Cara mengamankan akun Facebook dari hack
Nah… mimin akan share berapa hal yang harus kamu jaga untuk mengamankan akun facebok kamu dari serangan  para hacker.  berikut cara mengamankan akun facebook dari hack :

Pertama , Sembunyikan alamat emailmu dari profil facebook, selain untuk mengamankan dari serangan hacker menyembunykan email juga mencegah spaming dan phishing ke email kamu.

Inilah Cara Hack Akun Facebook Terbaru 2019

Kedua, Pastikan bahwa alamat email pemulihan dan nomor hp adalah milik kamu pribadi, bukan punya temen atau pacar atau tetangga. Karena nomor hp dan email bisa dipakai untuk mengambil akses ke akun facebook kamu.

Ketiga, tambahkan kontak terpercaya. Dan pastikan kontak terpercaya ini adalah akun keluarga dan orang-orang yang kamu 100% yakin dan kenal baik. Ini bisa jadi proteksi kalau akun kamu di hack bisa didapatkan kembali dengan menghubungi kontak terpercaya ini.

Keempat, Aktifkan fitur verifikasi dua langkah di facebook. Fitur verifikasi dua langkah ini berfungsi sebagai penghalang. Setiap kali kamu akan masuk ke facebook, facebook akan mengirimkan kode ke nomor hp kamu, sehingga ketika terjadi kelalaian, misalnya ada yang tau password kamu, mereka tetap tidak berhasil login, karena akan diminta kode 6 digit yang dikirimkan ke nomor hp kamu.

Kelima, aktifkan pemberitahuan login di perangkat asing. Untuk langkah keempat dan kelima bisa kamu baca disini bukugue.com/cara-melindungi-akun-facebook-dari-hacker/

Akhir Kata
Nah gaes begitulah beberapa metode cara Hack Facebook dan cara mengamankan akun facebook kamu dari serangan hacker.

Semoga informasi ini bisa kamu terima dan ditanggapi dengan bijak. Jangan sampai setelah kamu baca artikel ini malah berniat mencoba hal hal yang negative dengan menghack facebook orang lain.

Ohya, jika kamu punya metode hack facebook dengan cara yang lebih mudah dari cara diatas boleh ya di share dikolom komentar.


Sekian artikel kali ini. Selamat beraktivitas. Terimakasih

Friday, May 31, 2019

Download Film Khalifah Abu Bakar As-Siddiq

foto pemeran umar dan abu bakar, nugaskuyy
Pemeran Umar dan Abu Bakar

Download Film Khalifah Abu Bakar As-Siddiq - Link Dibawah
Nama Abu Bakar As Siddiq.RA sudah sangat familiar dalam umat islam, baik dulu maupun sekarang. Dialah manusia yang dianggap paling ter-agung dalam sejarah islam setelah Rasulullah SAW. Kemuliaan akhlaknya, kemurahan hatinya dalam mengorbankan harta benda dan kekayaannya, kebijaksanaannya dalam menyelesaikan masalah umat, ketenangannya dalam menghadapi kesukaran, kerendahan hatinya ketika berkuasa serta tutur bahasanya yang lembut lagi menarik adalah sukar dicari bandingannya baik dahulu maupun sekarang. Dialah tokoh sahabat terbilang yang paling akrab dan paling disayangi oleh Rasulullah SAW.

Nama Sebenarnya Abu Bakar As-Siddiq adalah Abdullah bin Qahafah. Sebelum islam, beliau adalah seorang saudagar yang tersangat kaya serta datangnya dan keluarga bangsawan yang sangat dihormati oleh masyarakat Quraisy. Bahkan ketika beliau belum memeluk islam, Abu Bakar telah terkenal sebagai seorang pembesar qurasiy yang tinggi akhlaknya dan beliau tidak pernah minum arak sebagaimana yang lazimnya dilakukan oleh pembesar-pembesar quraisy lainnya.

Dari Segi umur, Abu Bakar R.A adalah dua tahun lebih muda dibandingkan Rasulullah SAW dan telah menjalin persahabatan yang akrab dengan baginda rasul lama sebelum Rasulullah SAW menjadi Rasul. Beliaulah tokoh sahabat besar yang dianggap paling banyak sekali berkorban harta benda untuk menegakkan agama islam di samping Nabi Muhammad SAW karena besarnya pengorbanan beliau itulah Rasulullah SAW pernah mengatakan bahwa islam telah tegak diatas harta Siti Khadijah dan pengorbanan Abu Bakar R.A. Adapun gelar As-siddiq yang diberikan kepadanya itu adalah karena sikapnya yang selalu membenarkan apa saja perkataan maupun perbuatan nabi Muhammad SAW. Dalam hal ini baiknya kita petik suatu kisah seperti uang diriwayatkkan oleh ibn Mas'ud yang diceritakan sendiri kepadanya oleh Abu Bakar, tentang bagaimana Abu Bakar R.A memeluk agama Islam.


Sungguh kehidupan Abu Bakar As-Siddiq adalah penuh dengan nasihat, penuh dengan ajaran serta kenang-kenangan yang indah mulia. Selama dua tahun pemerintahannya itu baginda telah berjaya menyusun tiang-tiang pokok dan kekuatan Islam. Baginda telah membangunkan kekuatan-kekuatan yang penting bagi memelihara kepercayaan kaum Muslimin dan bagi memelihara keagungan Agama Islam. Bahkan baginda telah mengakhiri riwayat pemerintahan yang dipimpinnya dengan menundukkan sebahagian daripada negeri Syam dan sebahagian daripada negeri Iraq, lalu pulang ke rahmatullah dengan dada yang lapang, ketika umur baginda menginjak 63 tahun. Baginda dikebumikan di samping makam Rasulullah S.A.W. di Masjid Madinah. Semoga riwayat serta penjuangan baginda menjadi contoh ibadat yang murni bagi sekelian kaum Muslimin.

Link Video >> Abu Bakar R.A

Tuesday, May 21, 2019

CCNA (Version 1.1) - Cyberops Skill Exam



Maybe you have been looking for where the answer to cyberops exam skills is, and finally takes you to this article. Let me be clear, the cyberops exam that I posted earlier is the result of my own exam that I documented. Cyberops Quiz until I posted Cyberops final exam. But the problem here is that there are lots of questions from you about where the answers from Cyberops skill exam.

So like this, when I was in college in semester 5, we got courses on network security which led us to cyberops. The lecturer also provided lecture material from Cyberops skill exam that we have had an account. During learning, lecturers usually give practical assignments apart from material on CCNA cyberops such as "How to hack ...", "Examine data on wireshark", "How to operate snort ..." and others. The task given by the lecturer is to complete the value of our assignments. As for the quiz and test scores taken from the exam in the CCNA. 

Therefore, by saying a big apology, I can't post an answer about the Cyberops Exam because I can't open the skill. If seen in the picture it might look like the image below. 

nugaskuyy.com picture
Sorry


I could not work on the skill exam because the lecturer did not open the skill at the CCNA cyberops because of the above reasons. Maybe I can help you by sending me the exam skill for me to try. Remember, I'm just trying to help.

Note: Please comment politely and do not put direct links, or spam. Thank you very much.

Tuesday, April 30, 2019

Metode Pengembangan Sistem Prototype, Tahapan dan Kelebihannya


Metode Pengembangan Sistem Prototype, Tahapan dan Kelebihannya - Metode Prototype merupakan salah satu metode pengembangan sistem perangkat lunak. Metode Prototype ini merupakan teknik baru dalam mengembangkan perangkat lunak. Dari sekian banyak metode pengembangan perangkat lunak metode ini merupakan metode yang cukup sederhana dan simple.

Metode Prototype ini merupakan metode baru yang diinspirasi dari metode pengembangan waterfall, dimana dalam metode ini pelanggan/client menjadi peranan penting untuk pengembangan perangkat lunak. Kebutuhan pelanggan sangat dikedepankan dalam membuat sistem.

Berikut ini tahapan dalam pengembangan sistem menggunakan metode prototype:



  1. Pengumpulan Kebutuhan - Pada tahapan ini pelanggan/client dan pengembang mendiskusikan tentang perangkat yang akan dikembangkan. Kebutuhan sistem akan dikumpulkan pada tahap ini tergantung saaat diskusi dengan client.
  2. Membangun Prototype - Pada tahapan ini pengembang merancang prototype sistem yang akan dibangun kemudian diperlihatkan kepada pelanggan sebagai rancangan awal. Contohnya adalah membuat inputan dan outputnya. 
  3. Evaluasi Prototyping - Setelah rancangan dilihat oleh client, perubahan dan masukkan dari client yang memungkin untuk mengubah rancangan protoype nya sehingga sangat diperlukan untuk berdiskusi dengan client agar sistem yang dihasilkan sesuai dengan yang diharakan.
  4. Mengkodekan Sistem - Setelah prototype siap selanjutnya adalah memulai pengkodean untuk sistemnya. Kode ditulis dalam bahasa pemograman oleh programmer.
  5. Menguji Sistem - Setelah selesai pengkodean, tahapan selanjutnya adalah menguji sistem yang berjalan apakah sudah sesuai dengan yang diharapkan atau belum. Pengujian dilakukan dengan metode blackbox testing , whitebox, arsitek, dan link lainnya.
  6. Evaluasi Sistem - Pada tahapan ini pelanggan mengevaluasi sistem yang telah dibuat oleh pengembang, apabila ada revisi maka pengembang melakukan tahapan 4 dan 5, jika tidak maka sistem dapat digunakan.
  7. Menggunakan Sistem - Siap !!
Kelebihan dan kekurangan Metode Prototype:

Kelebihan :
  1. Menghemat Waktu dalam pengembangan sistem.
  2. Penentuan kebutuhan lebih mudah terwujud.
  3. Client aktif dalam pengembangan sistem.
  4. Komunikasi baik antara pengembang dan pelanggan.
  5. Pengembang dapat lebih mudah menentukan kebutuhan pelanggan.
Kelemahan :
  1. Proses perancangan dan analisis terlalu singkat.
  2. Biasanya kurang fleksibel dalam menghadapi perubahan.
  3. Pengembangan kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi yang tidak relevan dan algoritma yang tidak efisien.

Tuesday, April 23, 2019

Cara Membuat Text Box di Postingan Blog



Saat ini banyak sekali blogger yang menggunakan text box untuk keperluan tulisan mereka, mulai dari mempercantik, memperindah, memperkuat dan lainnya. Text box adalah sebentuk kotak untuk meletakkan teks sehingga kita dapat meletakkan tulisan kita di sana. 

Text box ini berbentuk syntax HTML, kalau biasanya postingan blog itu menulis di Compose, kalau kalian ingin menambahkan membuat text box kalian harus pindahkan kanvas postingan kalian ke HTML.



Setelah itu kalian tinggal pilih text box seperti apa yang kalian ingin kan, dibawah ini


Kode HTML:
<div style="background-color: white; border: 3px #1780dd dotted; padding: 10px; text-align: left;">

Kode HTML:
<div style="background-color: white; border: 3px #1780dd solid; padding: 10px; text-align: left;">

Kode HTML:
<div style="background-color: #f3f3f3; padding: 10px; text-align: left;">
masukan text disini 
</div>

Nah, itu tadi adalah ketiga text box yang sering saya gunakan. Tapi rata-rata saya menggunakan yang tanpa border hanya abu-abu backgroundnya. Jika kalian ingin membuat text boxnya menjadi custom silahkan lakukan sendiri pada kode HTML nya.

Monday, April 22, 2019

Cara Membuat Google Chart/Grafik Responsive



Pada postingan kali ini kita akan membahas lanjutan dari google chart/grafik yang sudah saya posting sebelumnya. Kalau kalian belum lihat bagaimana cara membuat google chartnya, bisa kalian lihat pada postingan saya sebelumnya disini.


Dipostingan sebelumnya, saya menulis tentang membuat chart/grafik tanpa menggunakan package tambahan untuk laravelya. Namun dalam hal tersebut memiliki masalah tentang responsive nya. Grafik yang disediakan oleh google belum responsive, untuk itu kita perlu menambahkan fungsi tambahan agar grafik yang kita sediakan responsive sesuai dengan device yang kita gunakan saat ini.

Contoh grafik yang tidak responsive.

Full page

Setelah dikecilkan

Lalu bagaimana kita akan melakukannya ?

Kita harus menambahkan function windows nya agar javascript yang dijalankan berdasarkan besar nya layar yang tampil. Cara nya mudah sekali, tinggal masukkan function berikut ini :


 $(window).resize(function(){
      drawVisualization(); //Function chart
      });

Tulis function tersebut sebelum </script>.

Fungsi chart drawVisualization() disana merupakan function chart pada code google chart ini,


Alhasil, grafik akan menjadi responsive.

Friday, April 12, 2019

Membuat Stopwatch dengan JavaScript di Laravel

Kali ini kita akan mencoba membuat stopwatch dengan javascript yang mana akan kita gunakan untuk mencatat waktu tertentu.



Membuat Stopwatch dengan JavaScript di Laravel

Skrip yang disajikan dalam halaman ini adalah kronometer / stopwatch sederhana , dengan opsi Mulai, Berhenti, dan Atur Ulang. Ini menampilkan sepersepuluh detik, detik, dan menit, dan dapat diatur untuk berhenti dan menjalankan fungsi ketika waktu kronometer mencapai nilai tertentu.
- Untuk lebih jelasnya, lihat instruksi di bawah, dan komentar dalam kode.

Untuk menguji skrip ini, klik tombol Mulai. Dalam contoh ini, kronometer diatur untuk berhenti secara otomatis dan menampilkan jendela peringatan setelah 3 detik dan 8/10 detik.

- Fungsi startChr () memulai kronometer.
- Untuk menghentikan stopwatch, panggil fungsi stopChr () .
- Untuk mengatur ulang kronometer, panggil fungsi resetChr () .

<div class="form-group">
<label class="control-label col-md-1 text-bold">Durasi</label>
<div class="col-md-4">
 <input id="durasi" type="text" name="duration" required class="form-control">
</div>

</div>

<div id="showtm" style="font-size:21px; font-weight:800;">0:0</div>
<a onclick="startChr()" class="btn btn-primary">Start</a>
<a onclick="stopChr()" class="btn btn-danger">Stop</a>
<a onclick="resetChr()" class="btn btn-info">Reset</a><br><br><br>

Script functionnya...
<script type="text/javascript"><!--
// chronometer / stopwatch JS script - coursesweb.net

// Here set the minutes, seconds, and tenths-of-second when you want the chronometer to stop
// If all these values are set to 0, the chronometer not stop automatically
var stmints = 0;
var stseconds = 0;
var stzecsec = 0;

// function to be executed when the chronometer stops
function toAutoStop() {
  alert('Your life goes on');
}

// the initial tenths-of-second, seconds, and minutes
var zecsec = 0;
var seconds = 0;
var mints = 0;

var startchron = 0;

function chronometer() {
  if(startchron == 1) {
    zecsec += 1;       // set tenths of a second

    // set seconds
    if(zecsec > 9) {
      zecsec = 0;
      seconds += 1;
    }

    // set minutes
    if(seconds > 59) {
      seconds = 0;
      mints += 1;
    }

    // adds data in #showtm
    document.getElementById('showtm').innerHTML = mints+ ' : '+ seconds+ '<sub>'+ zecsec+ '</sub>';

    // if the chronometer reaches to the values for stop, calls whenChrStop(), else, auto-calls chronometer()
    if(zecsec == stzecsec && seconds == stseconds && mints == stmints) toAutoStop();
    else setTimeout("chronometer()", 100);
  }
}

function startChr() { startchron = 1; chronometer(); }      // starts the chronometer
function stopChr() { startchron = 0;

if(mints === 0)
{
document.getElementById('durasi').value = seconds +' Detik ' ;
}
else{
document.getElementById('durasi').value = mints+ ' Menit '+ seconds +' Detik ' ;
}

 }                      // stops the chronometer
function resetChr() {
  zecsec = 0;  seconds = 0; mints = 0; startchron = 0;
  document.getElementById('showtm').innerHTML = mints+ ' : '+ seconds+ '<sub>'+ zecsec+ '</sub>';
}

// start the chronometer, delete this line if you want to not automatically start the stopwatch
startChr();
--></script>

Sunday, March 31, 2019

Cara Sekali Daftar Adsense Langsung DITERIMA - NO HOAX


Bagi seorang blogger tentu mendengar kata adsense pasti sudah membayangkan tentang uang dan kesuksesan. Hal ini dikarenakan bahwa tidak dipungkiri adsense merupakan impian yang paling diinginkan bagi setiap blogger, karena secara resmi dari google yang benar-benar membayar pada blogger untuk menampilkan iklannya. Tentu saja ini masih menjadi misteri yang masih banyak dicari bagi para blogger.

Apakah kamu seorang blogger yang sudah lama tapi ditolak terus saat mendaftar adsense dengan berbagai alasan ?

Apakah kamu ingin benar-benar diterima adsense, untuk mendapatkan penghasilan ?

Kalian berada pada artikel yang tepat.

Sudah banyak sekali cara para blogger untuk mencoba memperbaiki dan memperindah blog mereka supaya menarik minat pihak google agar diterima adsense. Berbagai cara memperbaiki konten, SEO friendly, blog walking dan lainnya namun itu belum berhasil juga.

Hal ini menjadi salah besar jika anda memprioritaskan blogger untuk adsense, Karena jika anda sudah berusaha keras dan tujuan anda tidak tercapai akan ada saatnya anda akan merasa bahwa anda menulis blog ini terasa sia-sia ini lah yang membuat orang gagal dalam blogging. Namun, jika anda memproritaskna blogging ini untuk tulisan anda, dokumentasi, ataupun karena hobi, tanpa adsense kalian akan tetap menulis blog sehingga diterima tidaknya adsense nanti itu adalah urusan belakangan, inilah yang menjadi MINDSET yang harus diubah para blogger.

Blogger harusnya menulis dengan sepenuh hati apa yang ingin dia tulis pada blog nya sehingga para pembaca dapat merasakan feel dalam membaca blog anda, sehingga google pun akan tertarik melihat blog anda.

Namun, untuk mendapatkan diterimanya dari adsense ada caranya. Dan cara ini sudah saya buktikan sendiri pada blog ini bahwa Postingan dibawah 10, pengunjung dibawah 10 per hari, umur blog kurang dari 2 minggu bisa DITERIMA dan ini TIDAK HOAX.

Tidak perlu SEO, tidak perlu pengunjung minimal 1000 perhari, tidak perlu menunggu minimal umur blog 6 bulan dll.. itu cara lama = KUNO.

Cara Sekali Daftar Adsense Langsung DITERIMA - NO HOAX

 Adapun cara yang saya gunakan sebagai berikut :

1. Jika anda benar-benar ingin diterima, buatlah sebuah blog baru dan tinggalkan blog lama kalian.
2. Niatkan karena Allah untuk mencari rejeki yang HALAL.
3. Setelah anda membuat blog yang baru, belikan domain pada blog baru tersebut. Contoh: .com .blog .id dll
4. Mulai tulisan anda dengan BENAR-BENAR mengetik pada entri blogger sehingga murni tulisan anda.
5. Coba lah untuk menulis paling tidak sampai 15 artikel. Tidak perlu dalam 1 HARI.
6. Buat sebuah Fresh email / Email BARU , BUKAN email yang dipakai untuk blog.
7. Buka situs Adsense, kemudian sign up dengan email baru tersebut.
8. Daftarkan situs blog baru yang telah anda pakaikan domain tadi.
9. Selama masa peninjauan blog anda, tulis selalu artikel setidaknya 1 hari 1 post, sehingga adsense akan menilai bahwa blog anda fresh aktif.
10. Tunggu notif Approved emailnya.

Pengalaman saya telah mencoba ini, dan berhasil benar-benar berhasil. Bukan hanya saya yang mencoba ini, teman saya pun juga telah mencoba nya dan nyata nya benar-benar berhasil.


Tuesday, March 12, 2019

Laravel CRUD dengan AJAX hanya 5 Menit

Bismillahirrahmanirrahim...

Kalau biasanya kita menggunakan laravel murni untuk ngoding, kali ini kita akan belajar bagaimana kita menggunakan ajax pada laravel. Tentu kita akan berfikir kenapa kita menggunakan Ajax ? apa itu AJAX ? kapan harus digunakan ?



Ya, tentu saja pikiran itu pasti muncul ketika disuguhkan dengan sesuatu yang baru apalagi sesuatu tersebut berhubungan dengan yang sedang kita lakukan atau kerjakan. Tapi jangan khawatir kita akan membahas nya satu persatu. Pertama kita kenalan apa itu AJAX.

AJAX adalah singkatan dari Asynchronous Javascript and XMLHTTP, yaitu merupakan suatu teknik pemograman berbasis web untuk menciptakan suatu web yang interaktif. 

Kenapa kita harus menggunakan AJAX ? Misalkan anda mempunyai 1000 data pada aplikasi anda dan ketika anda ingin menambahkan 1 data baru, maka AJAX tidak akan melakukan reload pada halaman web yang menyebabkan 1000 data juga akan ikut ter-reload. Tentu hal ini akan memberatkan aplikasi dan data paket yang lewat. Disini lah fungsi AJAX agar ketika ada fungsi dilakukan di tidak melakukan refresh terhadap halaman tersebut, tapi hanya pada data baru tersebut.

Tertarik ? Ayo kita belajar bagaimana CRUD Laravel dengan menggunakan AJAX....

Download terlebih dahulu js.app yang akan kita gunakan di bit.ly/idstack-asset-laravelajax. Lalu pindahkan pada folder public. Jangan Lupa untuk menghapus isi dari app.css pada folder public bawaan laravel karena kita akan menggunakan yang dari kita download.

Sebelum melakukan CRUD kita akan mendownload Package yang diperlukan Laravel untuk support ajax nya terlebih dahulu yaitu

Composer.json
        "laravelcollective/html": "^5.7.0",
        "yajra/laravel-datatables-oracle": "~8.0"

config/app.php
 //Provider
 Collective\Html\HtmlServiceProvider::class,
 Yajra\DataTables\DataTablesServiceProvider::class,

//Aliases
 'Form' => Collective\Html\FormFacade::class,
 'Html' => Collective\Html\HtmlFacade::class,
 'DataTables' => Yajra\DataTables\Facades\DataTables::class,


Jika sudah mendownload,  selanjutnya kita akan membuat tabel user terlebih dahulu. Berikut ini pada migration table user.

create_users_table.php
<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('password')->nullable();
            $table->rememberToken();
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('users');
    }
}


Selanjutnya kita akan buat layout yang akan kita gunakan.

resources/views/layouts/app.blade.php
<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="Laravel AJAX CRUD with Server Side Validation by IDStack">
    <meta name="author" content="IDStack">
    {{-- CSRF TOKEN --}}
    <meta name="csrf-token" content="{{ csrf_token() }}">

    <link rel="icon" href="{{ asset('assets/img/favicon.ico') }}">

    <title>Laravel AJAX CRUD Server Side Validation</title>

    <!-- Bootstrap core CSS -->
    <link href="{{ asset('assets/vendor/bootstrap/css/bootstrap.min.css') }}" rel="stylesheet">

    <!-- Datatables -->
    <link href="{{ asset('assets/vendor/datatables/datatables.min.css') }}" rel="stylesheet">

    <!-- Font Awesome -->
    <link href="{{ asset('assets/vendor/font-awesome/css/font-awesome.min.css') }}" rel="stylesheet">

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <link href="{{ asset('assets/css/ie10-viewport-bug-workaround.css') }}" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link href="{{ asset('assets/css/navbar-fixed-top.css') }}" rel="stylesheet">

    <!-- Custom styles for laravel -->
    <link href="{{ asset('css/app.css') }}" rel="stylesheet">

    @stack('styles')

    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <script src="{{ asset('assets/js/ie-emulation-modes-warning.js') }}"></script>

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>

  <body>

    <!-- Fixed navbar -->
    <nav class="navbar navbar-default navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="#">Larajax</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#">Home</a></li>
            <li class=""><a href="{{ route('user.index') }}">User</a></li>
          </ul>
          <ul class="nav navbar-nav navbar-right">
            <li class="active"><a href="./">Fixed top <span class="sr-only">(current)</span></a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </nav>

    <div class="container">

    @yield('content')

    </div> <!-- /container -->

    @include('layout._modal')

    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="{{ asset('assets/vendor/jquery/jquery.min.js') }}"></script>
    <script src="{{ asset('assets/vendor/bootstrap/js/bootstrap.min.js') }}"></script>

    <!-- Datatables -->
    <script src="{{ asset('assets/vendor/datatables/datatables.min.js') }}"></script>

    <!-- Sweetalert2 -->
    <script src="{{ asset('assets/vendor/sweetalert2/sweetalert2.all.min.js') }}"></script>

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <script src="{{ asset('assets/js/ie10-viewport-bug-workaround.js') }}"></script>


    <script src="{{ asset('js/app.js') }}"></script>

    @stack('scripts')
  </body>
</html>

resources/views/layouts/_action.blade.php
<a href="{{ $url_show }}" class="btn-show" title="Detail: {{ $model->name }}"><i class="icon-eye-open text-primary" ></i></a> |

<a href="{{ $url_edit }}" class="modal-show edit" title="Edit {{ $model->name }}"><i class="icon-pencil text-inverse"></i></a> |

<a href="{{ $url_destroy }}" class="btn-delete" title="{{ $model->name }}"><i class="icon-trash text-danger"></i></a> 

resources/views/layouts/_modal.blade.php
<div class="modal fade" id="modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header" id="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title" id="modal-title">Form Input</h4>
            </div>

            <div class="modal-body" id="modal-body">
            </div>

            <div class="modal-footer" id="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                <button type="button" class="btn btn-primary" id="modal-btn-save">Save changes</button>
            </div>
        </div>
    </div>
</div> 

welcome.blade.php
@extends('layout.app')

@section('content')
<div class="jumbotron">
    <h1>Navbar example</h1>
    <p>This example is a quick exercise to illustrate how the default, static and fixed to top navbar work. It includes the responsive CSS and HTML, so it also adapts to your viewport and device.</p>
    <p>To see the difference between static and fixed top navbars, just scroll.</p>
    <p>
        <a class="btn btn-lg btn-primary" href="#navbar" role="button">View navbar docs »</a>
    </p>
</div>
@endsection 

Kita akan buat seeder untuk mengisi data random dari laravel sehingga kita memiliki data yang banyak. Dengan perintah php artisan make:seeder UsersTableSeeder

UsersTableSeeder.php
<?php

use Illuminate\Database\Seeder;

class UsersTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        factory(App\User::class, 100)->create();
    }
}


DatabaseSeeder.php
<?php

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     *
     * @return void
     */
    public function run()
    {
        $this->call(UsersTableSeeder::class);
    }
}

Lakukan perintah migrate dengan perintah php artisan make:migrate --seed

Selanjutnya adalah membuat controller dengan perintah php artisan make:controller UserController --resource

UserController.php
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\User;
use DataTables;

class UserController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        return view('pages.users.index');
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        $model = new User();
        return view('pages.users.form', compact('model'));
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
          //
        $this->validate($request, [
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users,email'
        ]);
        $model = User::create($request->all());
        return $model;
    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
        $model = User::findOrFail($id);
        return view('pages.users.show', compact('model'));
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {
         $model = User::findOrFail($id);
        return view('pages.users.form', compact('model'));
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        $this->validate($request, [
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users,email,' . $id
        ]);
        $model = User::findOrFail($id);
        $model->update($request->all());
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {
        $model = User::findOrFail($id);
        $model->delete();
        // User::destroy($id);
    }

    public function dataTable()
    {
        $model = User::query();
        return DataTables::of($model)
            ->addColumn('action', function ($model){
                return view('layout._action', [
                    'model' => $model,
                    'url_show' => route('user.show', $model->id),
                    'url_edit' => route('user.edit', $model->id),
                    'url_destroy' => route('user.destroy', $model->id),
                ]);
            })
            ->addIndexColumn()
            ->rawColumns(['action'])
            ->make(true);
    }
}


routes/web.php
<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

Route::resource('/user', 'UserController');

Route::get('/table/user', 'UserController@dataTable')->name('table.user');

public/js/app.js
 
$('body').on('click', '.modal-show', function (event) {
    event.preventDefault();

    var me = $(this),
        url = me.attr('href'),
        title = me.attr('title');

    $('#modal-title').text(title);
    $('#modal-btn-save').text(me.hasClass('edit') ? 'Update' : 'Create');

    $.ajax({
        url: url,
        dataType: 'html',
        success: function (response) {
            $('#modal-body').html(response);
        }
    });

    $('#modal').modal('show');
});

$('#modal-btn-save').click(function (event) {
    event.preventDefault();

    var form = $('#modal-body form'),
        url = form.attr('action'),
        method = $('input[name=_method]').val() == undefined ? 'POST' : 'PUT';

    form.find('.help-block').remove();
    form.find('.form-group').removeClass('has-error');

    $.ajax({
        url : url,
        method: method,
        data : form.serialize(),
        success: function (response) {
            form.trigger('reset');
            $('#modal').modal('hide');
            $('#datatable').DataTable().ajax.reload();

            swal({
                type : 'success',
                title : 'Success!',
                text : 'Data has been saved!'
            });
        },
        error : function (xhr) {
            var res = xhr.responseJSON;
            if ($.isEmptyObject(res) == false) {
                $.each(res.errors, function (key, value) {
                    $('#' + key)
                        .closest('.form-group')
                        .addClass('has-error')
                        .append('<span class="help-block"><strong>' + value + '</strong></span>');
                });
            }
        }
    })
});

$('body').on('click', '.btn-delete', function (event) {
    event.preventDefault();

    var me = $(this),
        url = me.attr('href'),
        title = me.attr('title'),
        csrf_token = $('meta[name="csrf-token"]').attr('content');

    swal({
        title: 'Are you sure want to delete ' + title + ' ?',
        text: 'You won\'t be able to revert this!',
        type: 'warning',
        showCancelButton: true,
        confirmButtonColor: '#3085d6',
        cancelButtonColor: '#d33',
        confirmButtonText: 'Yes, delete it!'
    }).then((result) => {
        if (result.value) {
            $.ajax({
                url: url,
                type: "POST",
                data: {
                    '_method': 'DELETE',
                    '_token': csrf_token
                },
                success: function (response) {
                    $('#datatable').DataTable().ajax.reload();
                    swal({
                        type: 'success',
                        title: 'Success!',
                        text: 'Data has been deleted!'
                    });
                },
                error: function (xhr) {
                error: function (xhr) {
                    swal({
                        type: 'error',
                        title: 'Oops...',
                        text: 'Something went wrong!'
                    });
                }
            });
        }
    });
};

view/form.blade.php
{!! Form::model($model, [
    'route' => $model->exists ? ['user.update', $model->id] : 'user.store',
    'method' => $model->exists ? 'PUT' : 'POST'
]) !!}

    <div class="form-group">
        <label for="" class="control-label">Name</label>
        {!! Form::text('name', null, ['class' => 'form-control', 'id' => 'name']) !!}
    </div>

    <div class="form-group">
        <label for="" class="control-label">E-Mail</label>
        {!! Form::email('email', null, ['class' => 'form-control', 'id' => 'email']) !!}
    </div>

{!! Form::close() !!} 

view/index.blade.php
@extends('layout.app')

@section('content')
<div class="panel panel-primary">
    <div class="panel-heading">
      <h3 class="panel-title">Datatable
          <a href="{{route('user.create')}}" class="btn btn-success pull-right modal-show" style="margin-top: -8px;" title="Create User"><i class="icon-plus"></i> Create</a>
      </h3>
    </div>
    <div class="panel-body">
          <table id="datatable" class="table table-hover" style="width:100%">
              <thead>
                  <tr>
                      <th>No</th>
                      <th>Name</th>
                      <th>Email</th>
                      <th></th>
                  </tr>
              </thead>
              <tbody>

              </tbody>
             
          </table>
    </div>
</div>
@endsection

@push('scripts')
    <script>
        $('#datatable').DataTable({
            responsive: true,
            processing: true,
            serverSide: true,
            ajax: "{{ route('table.user') }}",
            columns: [
                {data: 'id', name: 'id'},
                {data: 'name', name: 'name'},
                {data: 'email', name: 'email'},
                {data: 'action', name: 'action'}
            ]
        });
    </script>
@endpush 

view/show.blade.php
<table class="table table-hover">
    <tr>
        <th>ID</th>
        <th>Name</th>
        <th>E-Mail</th>
    </tr>
    <tr>
        <td>{{ $model->id }}</td>
        <td>{{ $model->name }}</td>
        <td>{{ $model->email }}</td>
    </tr>
</table>

Monday, February 25, 2019

Summary Chapter 3 : BRANCH CONNECTIONS

Summary Chapter 3 : BRANCH CONNECTIONS

Solusi broadband memberikan teleworkers jarak jauh dengan opsi koneksi berkecepatan tinggi ke lokasi-lokasi bisnis dan ke Internet. Kantor cabang kecil juga dapat terhubung menggunakan teknologi yang sama ini. Bab ini mencakup solusi broadband yang umum digunakan, seperti kabel, DSL, dan nirkabel.

Catatan: Teleworking adalah istilah luas yang mengacu pada melakukan pekerjaan dengan menghubungkan ke tempat kerja dari lokasi terpencil, dengan bantuan telekomunikasi.

  Nilai ISP Point-to-Point Protocol (PPP) karena fitur otentikasi, akuntansi, dan manajemen tautan. Pelanggan menghargai kemudahan dan ketersediaan koneksi Ethernet. Tautan Ethernet tidak mendukung PPP secara native. Solusi untuk masalah ini dibuat, PPP over Ethernet (PPPoE). Bab ini mencakup implementasi PPPoE.

Komponen Kabel

Dua jenis peralatan diperlukan untuk mengirim sinyal ke hulu dan hilir pada sistem kabel:
  • Cable Termination System (CMTS) pada headend operator kabel
  • Cable Modem (CM) pada akhir pelanggan.


Klik komponen yang disorot pada gambar untuk informasi lebih lanjut tentang bagaimana setiap perangkat berkontribusi terhadap komunikasi.

  Sebuah CMTS headend berkomunikasi dengan CM yang terletak di rumah pelanggan. Headend sebenarnya router dengan database untuk menyediakan layanan Internet untuk pelanggan kabel. Arsitekturnya relatif sederhana, menggunakan jaringan HFC. Jaringan HFC adalah jaringan optik-koaksial campuran di mana serat optik menggantikan kabel koaksial bandwidth yang lebih rendah. Serat membawa konten broadband yang sama untuk koneksi Internet, layanan telepon, dan video streaming sebagai kabel koaksial membawa.

Apa itu DSL?

  Digital Subscriber Line (DSL) adalah sarana untuk menyediakan koneksi berkecepatan tinggi melalui kabel tembaga yang terpasang. DSL adalah salah satu solusi teleworker utama yang tersedia.

Kabel DSL


  Angka ini menunjukkan representasi alokasi ruang bandwidth pada kawat tembaga untuk Asymmetric DSL (ADSL). Area berlabel POTS (Plain Old Telephone System) mengidentifikasi rentang frekuensi yang digunakan oleh layanan telepon tingkat suara. Area berlabel ADSL mewakili ruang frekuensi yang digunakan oleh sinyal DSL hulu dan hilir. Area yang mencakup area POTS dan area ADSL mewakili seluruh rentang frekuensi yang didukung oleh pasangan kawat tembaga.

Motivasi PPPoE

  Selain itu, ISP sering menggunakan PPP sebagai protokol data link melalui koneksi broadband. Ada beberapa alasan untuk ini. Pertama, PPP mendukung kemampuan untuk menetapkan alamat IP ke ujung remote link PPP. Dengan PPP diaktifkan, ISP dapat menggunakan PPP untuk menetapkan setiap pelanggan satu alamat IPv4 publik. Lebih penting lagi, PPP mendukung otentikasi CHAP. ISP sering ingin menggunakan CHAP untuk mengautentikasi pelanggan karena selama otentikasi, ISP dapat memeriksa catatan akuntansi untuk menentukan apakah tagihan pelanggan dibayar, sebelum membiarkan pelanggan terhubung ke Internet.

Teknologi ini datang ke pasar dalam urutan berikut, dengan berbagai dukungan untuk PPP:

1. Modem analog untuk dialup yang bisa menggunakan PPP dan CHAP

2. ISDN untuk dialup yang bisa menggunakan PPP dan CHAP

3. DSL, yang tidak membuat tautan point-to-point dan tidak dapat mendukung PPP dan CHAP

Konsep PPPoE

  Router pelanggan biasanya terhubung ke modem DSL menggunakan kabel Ethernet. PPPoE membuat terowongan PPP melalui koneksi Ethernet. Ini memungkinkan frame PPP dikirim melalui kabel Ethernet ke ISP dari router pelanggan. Modem mengkonversi frame Ethernet ke frame PPP dengan mengupas header Ethernet. Modem kemudian mengirimkan frame PPP ini di jaringan DSL ISP.

Konsep PPPoE


PPPoE Configuration

1. Untuk membuat terowongan PPP, konfigurasi menggunakan antarmuka dialer. Antarmuka dialer adalah antarmuka virtual. Konfigurasi PPP ditempatkan pada antarmuka dialer, bukan antarmuka fisik. Antarmuka dialer dibuat menggunakan nomor antarmuka global dialer perintah global. Klien dapat mengkonfigurasi alamat IP statis, tetapi kemungkinan besar secara otomatis akan menetapkan alamat IP publik oleh ISP.

2. Konfigurasi PPP CHAP biasanya mendefinisikan otentikasi satu arah; oleh karena itu, ISP mengotentikasi pelanggan. Nama host dan kata sandi yang dikonfigurasi pada router pelanggan harus sesuai dengan nama host dan kata sandi yang dikonfigurasi pada router ISP. Perhatikan pada gambar bahwa nama pengguna dan kata sandi CHAP sesuai dengan pengaturan pada router ISP.

3. Antarmuka Ethernet fisik yang terhubung ke modem DSL kemudian diaktifkan dengan perintah pppoe memungkinkan konfigurasi antarmuka perintah. Perintah ini memungkinkan PPPoE dan menautkan antarmuka fisik ke antarmuka dialer. Antarmuka dialer terhubung ke antarmuka Ethernet dengan kolam dialer dan perintah konfigurasi antarmuka pppoe-client, menggunakan nomor yang sama. Nomor antarmuka dialer tidak harus sesuai dengan nomor penghubung dialer.

4. Unit transmisi maksimum (MTU) harus ditetapkan ke 1492, versus default 1500, untuk mengakomodasi header PPPoE.

Introducing VPN

  Organisasi memerlukan cara yang aman, andal, dan hemat biaya untuk menghubungkan berbagai jaringan, seperti mengizinkan kantor cabang dan pemasok untuk terhubung ke jaringan kantor pusat perusahaan. Selain itu, dengan semakin banyaknya pekerja televisi, perusahaan memiliki kebutuhan yang meningkat akan cara yang aman, andal, dan hemat biaya untuk menghubungkan karyawan yang bekerja di kantor kecil / kantor rumah (SOHO) dan lokasi terpencil lainnya, dengan sumber daya di situs perusahaan.

Ilustrasi VPN


Manfaat dari VPN termasuk yang berikut:

1. Penghematan biaya - VPN memungkinkan organisasi menggunakan transportasi Internet pihak ketiga yang hemat biaya untuk menghubungkan kantor jarak jauh dan pengguna jarak jauh ke situs utama; oleh karena itu, menghilangkan tautan WAN dan bank modem yang mahal dan berdedikasi. Lebih jauh lagi, dengan munculnya teknologi hemat biaya, bandwidth tinggi, seperti DSL, organisasi dapat menggunakan VPN untuk mengurangi biaya konektivitas mereka sekaligus meningkatkan bandwidth sambungan jarak jauh.

2. Skalabilitas - VPN memungkinkan organisasi menggunakan infrastruktur Internet dalam ISP dan perangkat, yang membuatnya mudah untuk menambahkan pengguna baru. Oleh karena itu, organisasi dapat menambahkan kapasitas dalam jumlah besar tanpa menambahkan infrastruktur yang signifikan.

3. Kompatibilitas dengan teknologi broadband - VPN memungkinkan pekerja lapangan dan telekomuter untuk memanfaatkan konektivitas broadband berkecepatan tinggi, seperti DSL dan kabel, untuk mengakses jaringan organisasi mereka. Konektivitas broadband memberikan fleksibilitas dan efisiensi. Koneksi broadband berkecepatan tinggi juga menyediakan solusi hemat biaya untuk menghubungkan kantor jarak jauh.

4. Keamanan - VPN dapat mencakup mekanisme keamanan yang memberikan tingkat keamanan tertinggi dengan menggunakan enkripsi canggih dan protokol otentikasi yang melindungi data dari akses yang tidak sah.

Pengantar GRE

  Encapsulation Routing Generik (GRE) adalah salah satu contoh dari protokol tunneling VPN dasar, tidak aman, dan situs-ke-situs. GRE adalah protokol tunneling yang dikembangkan oleh Cisco yang dapat mengenkapsulasi berbagai jenis paket protokol di dalam terowongan IP. GRE membuat virtual point-to-point link ke router Cisco di titik-titik jauh, melalui internetwork IP.

GRE Tunnel


GRE memiliki karakteristik ini:

1. GRE didefinisikan sebagai standar IETF (RFC 2784).

2. Pada header IP luar, 47 digunakan dalam bidang protokol untuk menunjukkan bahwa sebuah header GRE akan mengikuti.

3. Enkapsulasi GRE menggunakan bidang tipe protokol di header GRE untuk mendukung enkapsulasi setiap protokol OSI Layer 3. Jenis Protokol didefinisikan dalam RFC 1700 sebagai "EtherTypes".

4. GRE sendiri tidak bernegara; secara default, itu tidak termasuk mekanisme kontrol aliran.

5. GRE tidak termasuk mekanisme keamanan yang kuat untuk melindungi muatannya.

6. Header GRE, bersama dengan header IP tunneling yang ditunjukkan pada gambar, membuat setidaknya 24 byte tambahan untuk paket tunneled.

Konfigurasikan GRE

  GRE digunakan untuk membuat terowongan VPN antara dua situs, seperti yang ditunjukkan pada Gambar 1. Untuk mengimplementasikan terowongan GRE, administrator jaringan harus terlebih dahulu mempelajari alamat IP dari titik akhir. Setelah itu, ada lima langkah untuk mengkonfigurasi terowongan GRE:

Langkah 1. Buat antarmuka terowongan menggunakan perintah nomor terowongan antarmuka.

Langkah 2. Konfigurasikan alamat IP untuk antarmuka terowongan. Ini biasanya alamat IP pribadi.

Langkah 3. Tentukan alamat IP sumber tunnel.

Langkah 4. Tentukan alamat IP tujuan tunnel.

Langkah 5. (Opsional) Tentukan mode terowongan GRE sebagai mode antarmuka terowongan. Mode terowongan GRE adalah mode antarmuka terowongan default untuk perangkat lunak Cisco IOS.

Protokol Routing IGP dan EGP

  RIP, EIGRP dan OSPF adalah Interior Gateway Protocols (IGPs). ISP dan pelanggan mereka, seperti perusahaan dan perusahaan lain, biasanya menggunakan IGP untuk mengarahkan lalu lintas dalam jaringan mereka. IGP digunakan untuk bertukar informasi routing dalam jaringan perusahaan atau sistem otonom (AS).

Border Gateway Protocol (BGP) adalah Protokol Gateway Eksterior (EGP) yang digunakan untuk pertukaran informasi routing antara sistem otonom, seperti ISP, perusahaan, dan penyedia konten (mis., YouTube, Netflix, dll.).

Kapan menggunakan BGP

  Penggunaan BGP paling tepat ketika AS memiliki koneksi ke beberapa sistem otonom. Ini dikenal sebagai multi-homed. Setiap AS dalam gambar multi-homed karena setiap AS memiliki koneksi ke setidaknya dua sistem otonom atau rekan BGP lainnya.

  Sebelum menjalankan BGP, penting bahwa administrator jaringan memiliki pemahaman yang baik tentang BGP. Salah konfigurasi dari router BGP dapat memiliki efek negatif di seluruh Internet.

Ada tiga cara umum organisasi dapat memilih untuk menerapkan BGP dalam lingkungan multi-rumahan:

Default Hanya Rute

ISP mengiklankan rute default ke Perusahaan-A, seperti yang ditunjukkan pada Gambar 1. Tanda panah menunjukkan bahwa default dikonfigurasi pada ISP, bukan pada Perusahaan-A. Ini adalah metode paling sederhana untuk menerapkan BGP. Namun, karena perusahaan hanya menerima rute default dari kedua ISP, perutean sub-optimal dapat terjadi. Misalnya, Perusahaan-A dapat memilih untuk menggunakan rute default ISP-1 ketika mengirim paket ke jaringan tujuan di AS ISP-2.

Rute Default dan Rute ISP

  ISP mengiklankan rute default mereka dan jaringan mereka ke Perusahaan-A, seperti yang ditunjukkan pada Gambar 2. Opsi ini memungkinkan Perusahaan-A untuk meneruskan lalu lintas ke ISP yang sesuai untuk jaringan yang diiklankan oleh ISP tersebut. Sebagai contoh, Perusahaan-A akan memilih ISP-1 untuk jaringan yang diiklankan oleh ISP-1. Untuk semua jaringan lain, salah satu dari dua rute default dapat digunakan, yang berarti perutean sub-optimal mungkin masih terjadi untuk semua rute Internet lainnya.

Semua Rute Internet

  ISP mengiklankan semua rute Internet ke Perusahaan-A, seperti yang ditunjukkan pada Gambar 3. Karena Perusahaan-A menerima semua rute Internet dari kedua ISP, Perusahaan-A dapat menentukan ISP mana yang akan digunakan sebagai jalur terbaik untuk meneruskan lalu lintas untuk jaringan apa pun. Meskipun ini menyelesaikan masalah perutean sub-optimal, router BGP Perusahaan-A harus berisi semua rute Internet, yang saat ini akan menyertakan rute ke lebih dari 550.000 jaringan.


  Broadband transmisi disediakan oleh berbagai teknologi, termasuk DSL, fiber-to-the-home, sistem kabel koaksial, nirkabel, dan satelit. Transmisi ini membutuhkan komponen tambahan di bagian akhir rumah dan di ujung perusahaan. Solusi nirkabel broadband termasuk Wi-Fi kota, seluler / seluler, dan Internet satelit. Jaringan mesh Wi-Fi kota tidak digunakan secara luas. Cakupan seluler / seluler dapat dibatasi dan bandwidth dapat menjadi masalah. Internet satelit relatif mahal dan terbatas, tetapi ini mungkin satu-satunya metode untuk menyediakan akses