IMPLEMENTASI PADA JARINGAN VIRTUAL
Setelah melakukan desain jaringan sekaligus melakukan subneting pada jaringan tersebut, maka langkah selanjutnya adalah
mengimplementasikan jaringan tersebut dalam jaringan virtual menggunakan user mode linux (UML).
1. Pertama-tama jalankan exceed untuk menjalankan xterm di lingkungan windows
2. Kemudian login ke linux ( via putty ke sugriwa )
3. Masukkan perintah :
export DISPLAY=[ip_computer_yg_digunakan]:0
4. kemudian buat switch sejumlah yang dibutuhkan :
uml_switch -unix 3901 >
/dev/null < /dev/null &
uml_switch -unix 3902 >
/dev/null < /dev/null &
uml_switch -unix 3903 >
/dev/null < /dev/null &
uml_switch -unix 3904 >
/dev/null < /dev/null &
uml_switch -unix 3905 >
/dev/null < /dev/null &
uml_switch -unix 3906 >
/dev/null < /dev/null &
5. Setelah membuat switch buat gateway ( matahari ) dengan perintah dan
langsung login dengan nama login ”root” :
linux
ubd0=cow_matahari,root_fs umid=matahari con=pts con0=xterm
eth0=tuntap,,,10.126.13.176 eth1=daemon,,unix,3901 &
Berikut adalah screen shoot ketika matahari dibuka :
Dan setelah login :
1.
Kemudian buat juga bridge dengan perintah dan nama login ”root” :
linux
ubd0=cow_bridge,root_fs umid=bridge con=pts con0=xterm eth0=daemon,,unix,3901
eth1=daemon,,unix,3906 &
2.
Kemudian buat masing-masing router dengan perintah dan nama login ”root” :
linux
ubd0=cow_mars,root_fs umid=mars con=pts con0=xterm eth0=daemon,,unix,3906
eth1=daemon,,unix,3905 &
linux
ubd0=cow_titan,root_fs umid=titan con=pts con0=xterm eth0=daemon,,unix,3906
eth1=daemon,,unix,3902 &
linux
ubd0=cow_uranus,root_fs umid=uranus con=pts con0=xterm eth0=daemon,,unix,3902
eth1=daemon,,unix,3904 &
linux
ubd0=cow_pluto,root_fs umid=pluto con=pts con0=xterm eth0=daemon,,unix,3904
eth1=daemon,,unix,3903 &
3.
Yang terakhir buat juga host-host dengan perintah :
linux
ubd0=cow_host0_1,root_fs umid=host0_1 con=pts con0=xterm eth0=daemon,,unix,3906
&
linux
ubd0=cow_saturnus,root_fs umid=saturnus con=pts con0=xterm
eth0=daemon,,unix,3905 &
linux
ubd0=cow_host128_1,root_fs umid=host128_1 con=pts con0=xterm
eth0=daemon,,unix,3905 &
linux
ubd0=cow_host64_1,root_fs umid=host64_1 con=pts con0=xterm eth0=daemon,,unix,3902
&
linux
ubd0=cow_host96_1,root_fs umid=host96_1 con=pts con0=xterm
eth0=daemon,,unix,3904 &
linux
ubd0=cow_metis,root_fs umid=metis con=pts con0=xterm eth0=daemon,,unix,3904
&
linux
ubd0=cow_host32_1,root_fs umid=host32_1 con=pts con0=xterm
eth0=daemon,,unix,3903 &
linux
ubd0=cow_jupiter,root_fs umid=jupiter con=pts con0=xterm eth0=daemon,,unix,3903
&
4.
Sekarang meng-konfigurasi masing-masing konsole, yang pertama
meng-konfigurasi gateway :
ifconfig lo
127.0.0.1 up
ifconfig eth0
10.126.13.177 netmask 255.255.255.0 broadcast 10.126.13.255
ifconfig eth1
192.168.39.1 netmask 255.255.255.224 broadcast 192.168.39.31
5.
Untuk konfigurasi bridge pada console bridge, yaitu :
brctl addbr
br0
brctl stp br0
on
ifconfig eth0
up
ifconfig eth1
up
brctl addif
br0 eth0
brctl addif
br0 eth1
ifconfig br0
192.168.39.2 netmask 255.255.255.0 broadcast 192.168.39.31
ifconfig br0
up
6.
Konfigurasi pada masing-masing router :
·
Mars
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.3 netmask 255.255.255.224 broadcast 192.168.39.31
ifconfig eth1
192.168.39.129 netmask 255.255.255.224 broadcast 192.168.39.159
·
Titan
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.4 netmask 255.255.255.224 broadcast 192.168.39.31
ifconfig eth1
192.168.39.65 netmask 255.255.255.224 broadcast 192.168.39.95
·
Uranus
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.66 netmask 255.255.255.224 broadcast 192.168.39.95
ifconfig eth1
192.168.39.97 netmask 255.255.255.224 broadcast 192.168.39.127
·
Pluto
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.99 netmask 255.255.255.224 broadcast 192.168.39.127
ifconfig eth1
192.168.39.33 netmask 255.255.255.224 broadcast 192.168.39.63
7.
Konfigurasi pada masing-masing host :
host0_1)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.5 netmask 255.255.255.224 broadcast 192.168.39.31
saturnus)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.130 netmask 255.255.255.224 broadcast 192.168.39.159
host128_1)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.131 netmask 255.255.255.224 broadcast 192.168.39.159
host64_1)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.67 netmask 255.255.255.224 broadcast 192.168.39.95
host96_1)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.100 netmask 255.255.255.224 broadcast 192.168.39.127
metis)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.98 netmask 255.255.255.224 broadcast 192.168.39.127
host32_1)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.35 netmask 255.255.255.224 broadcast 192.168.39.63
jupiter)
ifconfig lo
127.0.0.1 up
ifconfig eth0
192.168.39.34 netmask 255.255.255.224 broadcast 192.168.39.63
8.
Kemudian menjalankan script untuk routing pada masing-masing console,
berikut adalah scriptnya :
gateway)
route add
default gw 10.126.13.1
route add -net
192.168.39.128/27 gw 192.168.39.3
route add -net
192.168.39.64/27 gw 192.168.39.4
route add -net
192.168.39.96/27 gw 192.168.39.4
route add -net
192.168.39.32/27 gw 192.168.39.4
iptables -t
nat -A POSTROUTING -j MASQUERADE
echo 1 >
/proc/sys/net/ipv4/ip_forward
bridge)
route add
default gw 192.168.39.1
echo 1 >
/proc/sys/net/ipv4/ip_forward
mars)
route add
default gw 192.168.39.1
route add -net
192.168.39.64/27 gw 192.168.39.4
echo 1 >
/proc/sys/net/ipv4/ip_forward
titan)
route add
default gw 192.168.39.1
route add -net
192.168.39.96/27 gw 192.168.39.66
route add -net
192.168.39.32/27 gw 192.168.39.66
route add -net
192.168.39.128/27 gw 192.168.39.3
echo 1 >
/proc/sys/net/ipv4/ip_forward
uranus)
route add
default gw 192.168.39.65 route add -net 192.168.39.32/27 gw
192.168.39.99
echo 1 >
/proc/sys/net/ipv4/ip_forward
pluto)
route add
default gw 192.168.39.97 echo 1 >
/proc/sys/net/ipv4/ip_forward
host0_1)
route add
default gw 192.168.39.1
saturnus)
route add
default gw 192.168.39.129
host128_1)
route add
default gw 192.168.39.129
host64_1)
route add
default gw 192.168.39.65
host96_1)
route add
default gw 192.168.39.97
metis)
route add
default gw 192.168.39.97
host32_1)
route add
default gw 192.168.39.33
jupiter)
route add
default gw 192.168.39.33
Jaringan telah selesai dibuat kita tinggal mengetest-nya
apakah jaringan dapat terhubung, baik secara internal maupun eksternal (
terhubung keluar ). Dengan menjalankan perintah ping pada virtual consol
diikuti alamat ip komputer tujuan, yaitu :
ping {ip_address_komputer_tujuan}
Berikut
contoh screen shoot perintah ping dari virtual console pluto ke matahari
(192.168.39.1) :
Berikut
contoh screen shoot perintah ping dari virtual console matahari ke metis
(192.168.39.98) :
Sedangkan
jika menuju ke jaringan luar contoh screen shoot perintah ping dari virtual
console saturnus ke kresna di AJK ( 10.126.13.7 ) :
Setelah semua koneksi di-cek dan menghasilkan output kurang lebih seperti di atas, maka
jaringan virtual berhasil dibuat. Dan jika salah satu muncul pesan berikut,
output:
misal matahari melihat koneksi pada host yang tidak ada, maka akan muncul
Yang berarti koneksi pada 192.168.39.254 tidak ada, hal
ini disebabkan host tersebut memang tidak ada.
Secara lengkap script untuk keperluan membangun virtual
console dengan topologi jaringan seperti di atas pada UML adalah sebagai
berikut :
#parameter:
#~
create => untuk buat switch, gateway, router dan workstation
#~
config {gateway | bridge | nama_router | nama_komputer} => konfigurasi
#~
routing {gateway | nama_computer | nama_router} => routing
case
"$1" in
create) uml_switch -unix 3901 >
/dev/null < /dev/null &
uml_switch -unix 3902 > /dev/null < /dev/null &
uml_switch -unix 3903 > /dev/null < /dev/null &
uml_switch -unix 3904 > /dev/null < /dev/null &
uml_switch -unix 3905 > /dev/null < /dev/null &
uml_switch -unix 3906 > /dev/null < /dev/null &
echo "|======
|"
echo " 30%"
echo
sleep 2
linux
ubd0=cow_matahari,root_fs umid=matahari con=pts con0=xterm
eth0=tuntap,,,10.126.13.176 eth1=daemon,,unix,3901 &
sleep 10
linux
ubd0=cow_bridge,root_fs umid=bridge con=pts con0=xterm eth0=daemon,,unix,3901
eth1=daemon,,unix,3906 &
sleep 10
linux
ubd0=cow_mars,root_fs umid=mars con=pts con0=xterm eth0=daemon,,unix,3906
eth1=daemon,,unix,3905 &
sleep 10
linux
ubd0=cow_titan,root_fs umid=titan con=pts con0=xterm eth0=daemon,,unix,3906
eth1=daemon,,unix,3902 &
sleep 10
linux
ubd0=cow_uranus,root_fs umid=uranus con=pts con0=xterm eth0=daemon,,unix,3902
eth1=daemon,,unix,3904 &
sleep 10
linux
ubd0=cow_pluto,root_fs umid=pluto con=pts con0=xterm eth0=daemon,,unix,3904
eth1=daemon,,unix,3903 &
echo "|============
|"
echo " 60%"
echo
sleep 10
linux
ubd0=cow_host0_1,root_fs umid=host0_1 con=pts con0=xterm eth0=daemon,,unix,3906
&
sleep 10
linux
ubd0=cow_saturnus,root_fs umid=saturnus con=pts con0=xterm
eth0=daemon,,unix,3905 &
sleep 10
linux
ubd0=cow_host128_1,root_fs umid=host128_1 con=pts con0=xterm
eth0=daemon,,unix,3905 &
sleep 10
linux
ubd0=cow_host64_1,root_fs umid=host64_1 con=pts con0=xterm
eth0=daemon,,unix,3902 &
sleep 10
linux
ubd0=cow_host96_1,root_fs umid=host96_1 con=pts con0=xterm
eth0=daemon,,unix,3904 &
sleep 10
linux
ubd0=cow_metis,root_fs umid=metis con=pts con0=xterm eth0=daemon,,unix,3904
&
sleep 10
linux
ubd0=cow_host32_1,root_fs umid=host32_1 con=pts con0=xterm eth0=daemon,,unix,3903
&
sleep 10
linux
ubd0=cow_jupiter,root_fs umid=jupiter con=pts con0=xterm eth0=daemon,,unix,3903
&
echo "|====================|"
echo " 100% done"
echo
;;
config) case "$2" in
gateway)
ifconfig lo 127.0.0.1 up
ifconfig eth0 10.126.13.177 netmask
255.255.255.0 broadcast
10.126.13.255
ifconfig eth1 192.168.39.1 netmask
255.255.255.224 broadcast
192.168.39.31
bridge)
brctl addbr br0
brctl stp br0 on
ifconfig eth0 up
ifconfig eth1 up
brctl addif br0 eth0
brctl addif br0 eth1
ifconfig br0 192.168.39.2 netmask
255.255.255.0 broadcast
192.168.39.31
ifconfig br0 up
mars)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.3 netmask
255.255.255.224 broadcast
192.168.39.31
ifconfig eth1 192.168.39.129 netmask
255.255.255.224 broadcast
192.168.39.159
titan)ifconfig
lo 127.0.0.1 up
ifconfig eth0 192.168.39.4 netmask
255.255.255.224 broadcast
192.168.39.31
ifconfig eth1 192.168.39.65 netmask
255.255.255.224 broadcast
192.168.39.95
uranus)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.66 netmask
255.255.255.224 broadcast
192.168.39.95
ifconfig eth1 192.168.39.97 netmask
255.255.255.224 broadcast
192.168.39.127
pluto)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.99 netmask
255.255.255.224 broadcast
192.168.39.127
ifconfig eth1 192.168.39.33 netmask
255.255.255.224 broadcast
192.168.39.63
host0_1)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.5 netmask
255.255.255.224 broadcast
192.168.39.31
saturnus)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.130 netmask
255.255.255.224 broadcast
192.168.39.159
host128_1)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.131 netmask
255.255.255.224 broadcast
192.168.39.159
host64_1)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.67 netmask
255.255.255.224 broadcast
192.168.39.95
host96_1)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.100 netmask
255.255.255.224 broadcast
192.168.39.127
metis)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.98 netmask
255.255.255.224 broadcast
192.168.39.127
host32_1)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.35 netmask
255.255.255.224 broadcast
192.168.39.63
jupiter)
ifconfig lo 127.0.0.1 up
ifconfig eth0 192.168.39.34 netmask
255.255.255.224 broadcast
192.168.39.63
*) echo "Parameter 2 salah
Jeeh!"
echo "1. gateway"
echo "2. bridge"
echo "3. mars"
echo "4. titan"
echo "5. uranus"
echo "6. pluto"
echo "7. host0_1"
echo "8. saturnus"
echo "9. host128_1"
echo "10. host64_1"
echo "11. host96_1"
echo "12. metis"
echo "13. host32_1"
echo "14. jupiter"
esac
routing)
case "$2" in
gateway)
route add default gw 10.126.13.1
route add -net 192.168.39.128/27 gw 192.168.39.3
route add -net 192.168.39.64/27 gw
192.168.39.4
route add -net 192.168.39.96/27 gw 192.168.39.4
route add -net 192.168.39.32/27 gw
192.168.39.4
iptables -t nat -A POSTROUTING -j
MASQUERADE
echo 1 >
/proc/sys/net/ipv4/ip_forward
bridge)
route add default gw 192.168.39.1
echo 1 > /proc/sys/net/ipv4/ip_forward
mars)
route add default gw 192.168.39.1
route add -net 192.168.39.64/27 gw 192.168.39.4
echo 1 > /proc/sys/net/ipv4/ip_forward
titan)
route add default gw 192.168.39.1
route add -net 192.168.39.96/27 gw 192.168.39.66
route add -net 192.168.39.32/27 gw 192.168.39.66
route add -net 192.168.39.128/27 gw 192.168.39.3
echo 1 > /proc/sys/net/ipv4/ip_forward
uranus)
route add default gw 192.168.39.65
route add -net 192.168.39.32/27 gw 192.168.39.99
echo
1 > /proc/sys/net/ipv4/ip_forward
pluto)
route add default gw 192.168.39.97
echo 1 > /proc/sys/net/ipv4/ip_forward
host0_1)
route add default gw 192.168.39.1
saturnus)
route add default gw 192.168.39.129
host128_1)
route add default gw 192.168.39.129
host64_1)
route add default gw 192.168.39.65
host96_1)
route add default gw 192.168.39.97
metis)
route add default gw 192.168.39.97
host32_1)
route add default gw 192.168.39.33
jupiter)
route add default gw 192.168.39.33
*)
echo "Parameter 2 salah Jeeh!"
echo "1. gateway"
echo "2. bridge"
echo "3. mars"
echo "4. titan"
echo "5. uranus"
echo "6. pluto"
echo "7. host0_1"
echo "8. saturnus"
echo "9. host128_1"
echo "10. host64_1"
echo "11. host96_1"
echo "12. metis"
echo "13. host32_1"
echo "14. jupiter"
esac
*)
echo "Parameter 1 salah jeeeh!"
echo "1. create => buat virtual machine"
echo "2. config => config virtual machine"
echo "3. routing => routing virtual
machine"
esac
Untuk mematikan virtual consol tinggal masukkan perintah
halt pada console yang akan dimatikan. Berikut adalah screen shoot cara
mematikan virtual console pada matahari :
Sewaktu pembuatan script untuk routing seringkali terjadi
kesalahan pada pe-routingan yang menyebabkan host-host tidak dapat saling
terhubung. Pada router setelah proses routing juga pada matahari diperlukan
perintah :
echo 1 >
/proc/sys/net/ipv4/ip_forward
Agar router dapat melewatkan melewatkan paket yang di
bawahnya pada jaringan yang di atasnya.
Sedangkan pada matahari sebagai gateway perlu dijalankan
perintah :
iptables –t nat –A POSTROUTING –j MASQUERADE
Agar jaringan virtual kita dapat mengenal jaringan luar
dengan gateway 10.126.13.1 ( gateway di AJK ).
Jaringan yang dibuat merupakan jaringan virtual sehingga jika di ping dari luar, maka jaringan kita tidak
dapat terdeteksi, hal ini wajar karena kita hanya membuat jaringan virtual.
Dengan proses yang sama cara peng-konfigurasi-an pada jaringan yang
sesungguhnya adalah hampir sama, hanya saja untuk menghubungkan device
ethernet, bridge, workstation dilakukan secara fisik.
No comments:
Post a Comment
silahkan membaca dan berkomentar