Achmad Mardiansyah's Journal

Manage your knowledge by writing it

Troubleshoot: cannot setup NAT on openvz

without comments

suatu hari saya sedang melakukan konfigurasi terhadap guest OS yang ada di server. Guest OS tersebut menggunakan openvz, mempunyai 2 ethernet card, dan saya ingin mengaplikasikan NAT pada guest OS tersebut.

Sayangnya, ketika saya mengeksekusi iptables untuk NAT, saya mendapat error berikut:

iptables v1.3.5: can’t initialize iptables table `nat’: Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

analisis:

dari error log diatas, terlihat bahwa operasi NAT tidak dapat dilakukan karena table NAT di iptables tidak available, dan penyebabnya bisa jadi adalah modul kernel yang berkaitan dengan feature itu belum di load. 

proposed solution:

tidak banyak yang dapat dilakukan di guest OS, oleh karena itu kita akan solve problem ini di host OS.

  1. mengaktifkan forwarding, (/etc/sysctl.conf)
    edit /etc/sysctl.conf
    net.ipv4.ip_forward=1
    net.ipv6.conf.all.forwarding=1
    untuk mengaktifkan konfigurasi di sysctl.conf, cukup ketik: sysctl -p
  2. mengaktifkan modul kernel
    edit /etc/vz/vz.conf
    IPTABLES=”iptable_filter iptable_mangle ipt_limit ipt_multiport ipt_tos ipt_TOS ipt_REJECT ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_LOG ipt_length ip_conntrack ip_conntrack_ftp ip_conntrack_irc ipt_conntrack ipt_state ipt_helper iptable_nat ip_nat_ftp ip_nat_irc ipt_REDIRECT”
  3. mengecek apakah modul NAT sudah aktif:
    lsmod | grep -i nat (akan terlihat modul nf_nat, nf_conntrack)

terkadang action masquerade tidak berhasil di eksekusi, maka alternatifnya adalah dengan menggunakan SNAT seperti dibawah:

iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -o eth0 -j SNAT –to 111.140.170.134

 semoga bermanfaat bagi pembaca

URL pendek: http://wp.me/pRkxT-Y4

Leave a Reply