Menghubungkan Beberapa Zona Vultr Dengan N2N

N2N adalah aplikasi VPN open source layer 2/3. Tidak seperti banyak program VPN lainnya, N2N dapat menghubungkan komputer yang terletak di belakang router NAT. Ini menawarkan keuntungan besar untuk terhubung ke lingkungan cloud tanpa harus bergantung pada protokol khusus seperti protokol ESP (digunakan oleh ipsec). Untuk mencapai koneksi ini, N2N menggunakan supernode yang dapat merutekan informasi antara node NAT'ed. Koneksi VPN ini dapat digunakan untuk menghubungkan beberapa instance Vultr di seluruh wilayah secara bersamaan.

Prasyarat

Dalam contoh ini kita akan menggunakan tiga node di beberapa zona:

  • Paris
  • Miami
  • Sydney

Instalasi perangkat lunak

Perintah berikut akan dieksekusi pada setiap instance.

Mulailah dengan menginstal build-essentialdari repo dan juga libssl-dev, karena kita akan membangun dari kode sumber terbaru.

apt-get install -y build-essential libssl-dev

Selanjutnya, unduh kode sumber dari github.

cd /tmp
git clone https://github.com/ntop/n2n.git

Kompilasi semua binari.

cd n2n 
make
make install

The make installperintah akan telah menciptakan supernodedan edgebinari dalam /usr/sbindirektori. Selesai dengan membersihkan file.

rm -rf /tmp/n2n

Instalasi - Node Paris

Node pertama adalah supernode kita. Supernode ini akan memulai layanan supernode yang akan mendengarkan pada port UDP 1200. Secara default aplikasi N2N tidak membuat file layanan. Jadi kita perlu menyediakan milik kita sendiri.

Buat file layanan 'n2n_supernode':

nano /etc/systemd/system/n2n_supernode.service

Tambahkan konten berikut:

[Unit]
Description=n2n supernode
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/supernode -l 1200

[Install]
WantedBy=multi-user.target

Arahan '-l' mendefinisikan port UDP 1200. Ini adalah port tempat supernode akan mendengarkan. Untuk memastikan semuanya bekerja, mulai layanan supernode:

systemctl start n2n_supernode

Periksa status supernode.

systemctl status n2n_supernode

Ini akan menunjukkan status yang mirip dengan yang berikut ini.

● n2n_supernode.service - n2n supernode
   Loaded: loaded (/etc/systemd/system/n2n_supernode.service; disabled; vendor prese
   Active: active (running) since Wed 2018-08-15 17:07:46 UTC; 5s ago
 Main PID: 4711 (supernode)
    Tasks: 1
   Memory: 80.0K
      CPU: 1ms
   CGroup: /system.slice/n2n_supernode.service
           └─4711 /usr/sbin/supernode -l 1200

Selanjutnya kita akan membuat layanan tepi. Layanan tepi ini akan mengklaim IP pribadi untuk komunikasi antara sisi-sisi lain di zona Vultr lainnya.

Seperti halnya layanan supernode, ini juga membutuhkan file layanannya sendiri.

nano /etc/systemd/system/n2n_edge.service

Tambahkan konten berikut:

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target n2n_supernode.service

[Service]
ExecStart=/usr/sbin/edge -l localhost:1200 -c Vultr -a 192.168.1.1 -k mypassword -f

[Install]
WantedBy=multi-user.target

Dalam file layanan ini kami mendefinisikan opsi baris perintah berikut:

  • -l localhost:1200: Ini akan terhubung ke localhost pada port UDP 1200.
  • -c Vultr: Ini adalah komunitas yang akan bergabung dengan edge. Semua tepi dalam komunitas yang sama muncul di LAN yang sama (segmen jaringan lapisan 2). Tepi yang tidak berada di komunitas yang sama tidak akan saling berkomunikasi.
  • -a 192.168.1.1: IP ditugaskan untuk antarmuka ini. Ini adalah alamat IP LAN virtual N2N yang diklaim.
  • -k mypassword: Kata sandi yang digunakan untuk setiap sisi. Semua sisi yang berkomunikasi harus menggunakan kunci dan nama komunitas yang sama.
  • -f: Menonaktifkan mode daemon dan menyebabkan edge berjalan di latar depan. Ini diperlukan untuk file layanan, jika systemctltidak tidak akan memulai layanan.

Untuk memastikan semuanya bekerja, mulai layanan.

systemctl start n2n_edge

Lalu, cari status layanan.

systemctl status n2n_edge   

Outputnya akan mirip dengan yang berikut ini.

● n2n_edge.service - n2n edge
   Loaded: loaded (/etc/systemd/system/n2n_edge.service; disabled; vendor preset: en
   Active: active (running) since Wed 2018-08-15 17:10:46 UTC; 3s ago
 Main PID: 4776 (edge)
    Tasks: 1
   Memory: 396.0K
      CPU: 8ms
   CGroup: /system.slice/n2n_edge.service
           └─4776 /usr/sbin/edge -l localhost:1200 -c Vultr -a 192.168.1.1 -k mypass

Jika kami memeriksa 'ifconfig', Anda akan melihat IP virtual N2N diklaim oleh edge0antarmuka.

ifconfig

Outputnya akan mirip dengan yang berikut ini.

edge0     Link encap:Ethernet  HWaddr 42:14:55:64:7d:21
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::4014:55ff:fe64:7d21/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Setelah ini selesai, aktifkan dan buat aturan firewall. Pastikan untuk mengganti node_miami_ipdan node_sydney_ipteks dengan IP publik dari Sydney dan Miami. (Kami akan menggunakannya nanti).

ufw allow 22/tcp
ufw allow from node_miami_ip to any port 1200
ufw allow from node_sydney_ip to any port 1200
ufw enable

Hal terakhir yang harus dilakukan dengan simpul ini adalah mengaktifkan kedua layanan saat boot.

systemctl enable n2n_supernode.service
systemctl enable n2n_edge.service

Instalasi - Node Miami

Node Miami akan terhubung ke super node yang saat ini berjalan di zona Paris. Untuk mencapai ini, kita hanya perlu membuat file layanan untuk edgeaplikasi.

Mulai dengan membuat file layanan tepi.

nano /etc/systemd/system/n2n_edge.service

Tambahkan konten berikut.

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/edge -l node_paris_ip:1200 -c Vultr -a 192.168.1.2 -k mypassword -f

[Install]
WantedBy=multi-user.target

Catatan : Ganti node_paris_ipdengan IP publik dari instance yang berjalan di Paris

Ini akan terhubung ke simpul di Paris pada port UDP 1200, bergabung dengan komunitas ' Vultr', klaim IP 192.168.1.2dan otentikasi dengan ' mypassword'.

Selanjutnya, mulai layanan.

systemctl start n2n_edge

Periksa status untuk indikasi bahwa layanan telah dimulai dengan benar dan sedang berjalan.

systemctl status n2n_edge   

Selanjutnya, pastikan bahwa edge0IP diklaim.

ifconfig

Ini akan menampilkan 192.168.1.2alamat IP.

edge0     Link encap:Ethernet  HWaddr 42:14:55:64:7d:21
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::4014:55ff:fe64:7d21/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Hal selanjutnya yang harus dilakukan adalah mengaktifkan layanan saat boot.

systemctl enable n2n_edge.service

Secara opsional, aktifkan firewall dan tambahkan aturan SSH.

ufw allow 22/tcp
ufw enable

Kita sekarang dapat melakukan ping kedua sisi yang sedang berjalan dalam instance kita.

Di Paris, ping instance Vultr di Miami

ping 192.168.1.2

Di Miami, ping ujung di Paris

ping 192.168.1.1

Instalasi - Node Sydney

Akhirnya, kami akan menambahkan benua terakhir kami ke dalam campuran: Australia. Mulai lagi dengan membuat layanan tepi, layanan tepi ini juga akan terhubung ke supernode yang dikonfigurasi sebelumnya di Paris.

nano /etc/systemd/system/n2n_edge.service

Tambahkan konten berikut.

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/edge -l node_paris_ip:1200 -c Vultr -a 192.168.1.3 -k mypassword -f

[Install]
WantedBy=multi-user.target

Catatan : Ganti node_paris_ipdengan IP publik dari instance yang berjalan di Paris.

Ini akan terhubung ke simpul di Paris pada port UDP 1200, bergabung dengan komunitas ' Vultr', klaim IP 192.168.1.3dan otentikasi dengan ' mypassword'.

systemctl start n2n_edge

Periksa status untuk memastikan layanan dimulai.

systemctl status n2n_edge   

Pastikan bahwa edge0IP diklaim.

edge0     Link encap:Ethernet  HWaddr 46:56:b0:e9:8f:8a
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
        inet6 addr: fe80::4456:b0ff:fee9:8f8a/64 Scope:Link
        UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
        RX packets:0 errors:0 dropped:0 overruns:0 frame:0
        TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000
        RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Sekali lagi, aktifkan layanan ini saat boot.

systemctl enable n2n_edge.service

Secara opsional, aktifkan firewall dan tambahkan aturan SSH.

ufw allow 22/tcp
ufw enable

Kita sekarang dapat melakukan ping setiap instance Vultr dari setiap node.

ping 192.168.1.1
ping 192.168.1.2
ping 192.168.1.3

Jika Anda ingin menguji koneksi antara masing-masing ujung node, aktifkan aturan firewall pada instance Miami dan Paris. Ini akan memungkinkan komunikasi antar sisi.

Di Miami, tambahkan aturan berikut. (Pastikan untuk mengganti node_paris_ipdan node_sydney_ipmengirim teks dengan IP publik dari instance Sydney dan Paris.)

ufw allow from node_paris_ip to any port 1200
ufw allow from node_sydney_ip to any port 1200

Di Sydney, tambahkan aturan berikut.

ufw allow from node_paris_ip to any port 1200
ufw allow from node_miami_ip to any port 1200

Sekarang Anda dapat mematikan atau menyalakan ulang supernode. Koneksi jaringan akan terus ada. Hanya edge baru yang akan mengalami masalah konektivitas saat layanan supernode sedang down.

Kesimpulan

Kami telah berhasil mengonfigurasi koneksi VPN antara beberapa zona. Ini seharusnya menawarkan banyak kemungkinan baru untuk skenario ketersediaan tinggi ke lingkungan kita yang baru dikonfigurasi.



Leave a Comment

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut