Thursday, August 25, 2011

OpenBSD: PF - Membuat Router Sederhana (NAT)

NAT biasanya dipakai apabila kita hanya mempunyai 1 jatah ip yang terkoneksi internet dari ISP, padahal komputer yang ingin terkoneksi internet jumlahnya lebih dari 1, maka kita dapat menggunakan NAT sebagai solusinya.

Karena NAT hampir selalu digunakan pada router dan gateway jaringan, kita perlu pengaktifkan IP Forwarding sehingga paket data dapat bergerak dengan leluasa antar interface jaringan di mesin OpenBSD. Pada OpenBSD IP Forwarding dapat diaktifkan dengan menggunakan mekanisme sysctl:
root# sysctl net.inet.ip.forwarding=1
root# sysctl net.inet6.ip6.forwarding=1
Untuk membuat perubahan tersebut secara permanen, artinya saat kita boot tidak hilang, maka kita buka file /etc/sysctl.conf dengan teks editor kesayangan anda kemudian hilangkan tanda '#' pagar pada kata  net.inet.ip.forwarding=1 dan net.inet6.ip6.forwarding=1 (untuk dukungan IPv6):
root# vi /etc/sysctl.conf
      net.inet.ip.forwarding=1
      net.inet6.ip6.forwarding=1
Kita asumsikan kita mempunyai 2 buah interface network yaitu external interface dengan chipset realtek (rl0) dan internal interface (vr0). External interface diberi ip dari ISP yaitu 10.16.15.14/28, dan untuk ip lokal yang dipasang pada internal interface adalah 192.169.100.1, sehingga nantinya jaringan komputer client mempunyai alamat network 192.169.100.0/24 .
Sekarang kita konfigurasi dulu ip external interface:
root# touch /etc/hostname.rl0
root# vi /etc/hostname.rl0
      inet 10.16.15.14 255.255.255.240 NONE
Setelah itu kita konfigurasi gateway dan DNS di /etc/mygate dan /etc/resolv.conf
root# vi /etc/mygate 
      10.16.15.1
root# vi /etc/resolv.conf
      nameserver 8.8.8.8
Nah, sekarang kita restart service networknya dengan perintah:
root# sh /etc/netstart
Dan coba ping dari mesin router OpenBSD kita:

root# ping -c 2 google.com
PING google.com (209.85.175.105) 56(84) bytes of data.
64 bytes from nx-in-f105.1e100.net (209.85.175.105): icmp_seq=1 ttl=51 time=44.5 ms
64 bytes from nx-in-f105.1e100.net (209.85.175.105): icmp_seq=2 ttl=50 time=42.3 ms

--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 42.390/43.456/44.523/1.086 ms
Berarti mesin router OpenBSD kita sudah berhasil terkoneksi ke internet, sekarang tinggal kita setting ip pada internal interface kita:
root# touch /etc/hostname.rl0
root# vi /etc/hostname.rl0
      inet 192.169.100.1 255.255.255.240 NONE
Setelah selesai, langkah terakhir yaitu konfigurasi NAT pada PF, yaitu dengan menambahkan baris berikut pada konfigurasi PF di /etc/pf.conf :
match out on EXT_IF from LOCAL_NET to any nat-to EXT_IP
pass on EXT_IF from LOCAL_NET to any
Sehingga jika diimplementasikan pada contoh kasus:
root# vi /etc/pf.conf
match out on rl0 from 192.169.100.0/24 to any nat-to 10.16.15.14
pass on rl0 from 192.169.100.0/24 to any
Karena PF secara default sudah enable (aktif), tinggal kita load ulang konfigurasinya:
root# pfctl -f /etc/pf.conf
Sekarang router OpenBSD sudah siap dipakai.
Semoga bermanfaat.

Labels: , ,

1 Comments:

At February 9, 2012 at 6:19 AM , Anonymous Hendra said...

yang ext ama yang int nya sama aja sih r10 jadi bingung. trus nambahin baris match out on rl0 from 192.169.100.0/24 to any nat-to 10.16.15.14
pass on rl0 from 192.169.100.0/24 to any itu diawal baris/ditengah/diakhir ? mohon pencerahan gan, masih bingung saya.

 

Post a Comment

Subscribe to Post Comments [Atom]

<< Home