setalah kita membuat vm dan container, tentunya kita berharap vm / container yang kita buat bisa konek ke internet lah ya. namun tidak serta merta bisa langsung konek ke internet, kita harus melaukan beberapa langkah diantaranya kita bisa mengunakan teknik NAT (Network Address Translation)
pada kasus ini, saya hanya mengkoneksikan container dengan jarinagn internet, namun caranya sama dengan kita mengkonekan vm ke internet.
sebelumnya mencoba ini, coba liat create container dulu, coba kita cek ip address dan koneksi internet terlebih dahulu
dengan ip address 10.212.113.100 dan belum bisa terkoneksi dengan internet.
langkah selanjutanya coba kita menambahkan interface yang bergungsi untuk NAT dari vm ke internet dengan interface vmbr1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
root@pve:~# nano /etc/network/interfaces auto vmbr0 iface vmbr0 inet static address 192.168.10.150 netmask 255.255.255.0 gateway 192.168.10.254 bridge_ports eth0 bridge_stp off bridge_fd 0 post-up echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp #ditambahkan auto vmbr1 iface vmbr1 inet static address 10.212.113.1 netmask 255.255.255.0 bridge_ports none bridge_stp off bridge_fd 0 post-up echo 1 > /proc/sys/net/ipv4/ip_forward post-up iptables -t nat -A POSTROUTING -s '10.212.113.0/24' -o vmbr0 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '10.212.113.0/24' -o vmbr0 -j MASQUERADE |
pada settingan diatas terutama utnuk vmbr1 berfungsi untuk mengaktifkan ip forwarding dan mengaktifkan NAT nya dengan masquerade pada iptables.
pada perintah post-up dan post-down berufngsi jika interface vmbr1 up maka perintah post-up akan berjalan namun jika vmbr1 down maka post-down akan berjalan.
setelah itu restart networknya
1 2 |
root@pve:~# /etc/init.d/networking restart [ ok ] Restarting networking (via systemctl): networking.service. |
testing ip nya dengan ifconfig
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
root@pve:~# ifconfig eth0 Link encap:Ethernet HWaddr 08:00:27:f8:39:36 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:54970 errors:0 dropped:0 overruns:0 frame:0 TX packets:13387 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14096519 (13.4 MiB) TX bytes:13133935 (12.5 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:8400 errors:0 dropped:0 overruns:0 frame:0 TX packets:8400 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:3484838 (3.3 MiB) TX bytes:3484838 (3.3 MiB) veth102i0 Link encap:Ethernet HWaddr c2:21:fe:ad:77:49 inet6 addr: fe80::c021:feff:fead:7749/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:26 errors:0 dropped:0 overruns:0 frame:0 TX packets:2864 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1914 (1.8 KiB) TX bytes:272899 (266.5 KiB) vmbr0 Link encap:Ethernet HWaddr 08:00:27:f8:39:36 inet addr:192.168.10.150 Bcast:192.168.10.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fef8:3936/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:248 errors:0 dropped:0 overruns:0 frame:0 TX packets:106 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:73903 (72.1 KiB) TX bytes:62977 (61.5 KiB) vmbr1 Link encap:Ethernet HWaddr 32:d9:59:e5:c4:04 inet addr:10.212.113.1 Bcast:10.212.113.255 Mask:255.255.255.0 inet6 addr: fe80::30d9:59ff:fee5:c404/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 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) |
okee interface vmbr1 sudah ter-create, sekarang saatnya mengubah interface container dari vmbr0 ke vmbr1
pada container lxc.routecloud.idb di bagian networknya dihapus dulu kemudian di add lagi.
tambahkan interface denagan nama yang sama seperti semua, namun yang beda hanya nama bridge nya yaitu menjadi vmbr1 sesuai dengan interface yang sudah kita buat.
“ini yang keren di proxmox yaitu ketika kita menghapus interface kita tidak usah mematikan vm / containernya” – bagi saya itu keren (0_0)
Sekarang kita testing di containernya
akhirnya bisa konek ke internet, pada proses ada (DUP!) karena ada masalah pada duplikasi mac address (soale saya pake vm 😛 ) jadi di router mendeteksi ada 1 ip namun di pake oleh 2 mac address. tapi itu gak masalah yg penting bisa konek.
oke sebelum saya tidur, saya mau coba install ssh dulu di container, biar bisa di remote dari luar network.
topologi
container (CT) <—-> proxmox <——-> pc remote
jadi ceritanya nanti pc remote bakal ngeremote containernya
IP Proxmox
vmbr0 –> 192.168.10.150
vmbr1 –> 10.212.113.1
IP container –> 10.212.113.10
sebelumnya update dulu repo pada containernya (inget ya yg container bukan pada host proxmoxny)
1 |
apt-get update |
setelah itu install sshnya (sebenarnya sudah terinstall sshnya pada container namun saya coba ternyata ada packet yang blm terinstall jadi kadang gak bisa diremote)
1 |
apt-get install ssh nano |
setelah itu kita setting pada Proxmoxnya (inget node proxmox nya bukan container)
1 |
root@pve:~# iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 10.212.113.10:22 |
inti settingan iptables ini hanya pengalihan akses dari proxmox yang mengakses port 2222 akan dialihakan pada container (10.212.113.10)
langsung coba saja pada pc remote
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
root@alanprastyo-Aspire-4741:~# ssh root@192.168.10.150 -p 2222 root@192.168.10.150's password: Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 4.4.19-1-pve i686) * Documentation: https://help.ubuntu.com/ Last login: Thu Oct 13 12:33:56 2016 from 192.168.10.91 root@lxc:~# ifconfig eth0 Link encap:Ethernet HWaddr 36:9e:4b:6a:1e:62 inet addr:10.212.113.10 Bcast:0.0.0.0 Mask:255.255.255.0 inet6 addr: fe80::349e:4bff:fe6a:1e62/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:22847 errors:0 dropped:0 overruns:0 frame:0 TX packets:22844 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:34428707 (34.4 MB) TX bytes:1806572 (1.8 MB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) |
okee sudah berhasil, sekarang saya mau tidur dulu 😛
semoga memberikan manfaat kepada teman-teman 🙂
System Engineer
Komentar