Senin, 02 November 2009

Quagga

Quagga adalah sebuah software aplikasi yang digunakan untuk
aplikasi routing protokol.Bagian quagga ada beberapa macam:
1. Zebra – merupakan bagian penghubung antara linux kernel
dengan aplikasi routing protokol.
2. Routing Daemon – merupakan aplikasi pengatur routing protokol.
Misal: ospfd adalah daemon yang mengatur routing protocol
OSPF, ripd adalah daemon yang mengatur routing protokol RIP
Perintah Quagga mirip dengan perintah yang ada di CISCO router.
Untuk installasi :
Router # apt­get install quagga

File konfigurasi awal di /etc/quagga
Router # ls /etc/quagga
daemons
debian.conf
Aktifkan quagga dengan mengedit file /etc/quagga/daemons
Router # vim /etc/quagga/daemons
Rubah protokol yang kita inginkan dengan merubah “no” menjadi
“yes”, contoh :
zebra = yes
ospfd = yes
artinya kita mengaktifkan zebra (wajib) dan protokol OSPF, begitu
juga dengan protokol yang lainnya
Membuat konfigurasi awal, list konfigurasi yang digunakan quagga :
zebra.conf --- untuk aplikasi zebra

ospfd.conf --- untuk routing protokol OSPF

ripd.conf --- untuk routing protokol RIP

bgpd.conf --- untuk routing protokol BGP

Bisa juga dengan cara mencopy contoh konfigurasi di documentation
Router# cp /usr/share/doc/quagga/examples/zebra.conf.sample
/etc/quagga/zebra.conf
Begitu juga file konfigurasi lainnya.
Untuk menjalankan daemon quagga, jalankan perintah :
Router# /etc/init.d/quagga start
Begitu juga untuk stop dan restart
Router# /etc/init.d/quagga stop
Router# /etc/init.d/quagga restar




apabila
kita ingin membangun jaringan dengan OSPF menggunakan quagga
langkah-langkah yang harus dilakukan adalah :
Mengaktifkan quagga setelah membuat konfigurasi awal Router # /etc/init.d/quagga start
Starting Quagga daemons (prio:10): zebra ospfd.
Melihat daemon konfigurasi dengan perintah (misal : ospf)

Router # netstat ­nlptu | grep zebra
tcp 0 0 127.0.0.1:2601
0.0.0.0:* LISTEN 2096/zebra
Router # netstat ­nlptu | grep ospf
tcp 0 0 127.0.0.1:2604
0.0.0.0:* LISTEN 2100/ospfd
artinya Zebra bekerja pada port 2601 dan ospfd pada 2604, begitu

juga apabila kita menggunakan “ripd” dan yang lainnya
Mengkonfigurasi zebra (password default “zebra”) :

Router # telnet localhost 2601
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
Hello, this is Quagga (version 0.98.3).
Copyright 1996­2005 Kunihiro Ishiguro, et al.
User Access Verification
Password:
Router> en
Password:
Router#
Begitu juga dengan ospfd

Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
Hello, this is Quagga (version 0.98.3).
Copyright 1996­2005 Kunihiro Ishiguro, et al.
User Access Verification
Password:
ospfd>en
Password:
ospfd# conf t
ospfd(config)# router ospf
ospfd(config­router)# network 10.252.108.0/24 area
0
Lakukan distribusi jaringan sesuai dengan topologinya




Lanjut membaca.. “Quagga”  »»

Routing Dinamik dengan RIP pada Linux

A.Tujuan
Selama ini jaringan di kantor saya bekerja , dalam routing antar kantor yang berbeda sudah menggunakan routing dinamik dengan menggunakan RIP. Perangkat yang digunakan untuk menghubungkan kantor Mall FX yang ada di kawasan sudirman dengan Apartemen K-Place adalah switch layer 3 dengan merek Allied Telesis. Sekarang ini ada kebutuhan untuk menambahkan sebuah PC router sebagai gateway untuk jalur komunikasi ke provider lain, solusi yang diambil adalah menggunakan OS Centos 5.3 dan menginstall zebra untuk routing dinamik.
Berikut adalah topologi dari rencana pengembangan:

Yang akan dibahas disini adalah melakukan konfigurasi pada gateway 1 supaya tabel routing update antara mall fx, apartemen k-place dengan gateway 1 dengan routing dinamik RIP.
B. Konfigurasi Gateway 1
Download file zebra:
[root@KUNINGAN ~]# wget ftp://ftp.zebra.org/pub/zebra/zebra-0.95a.tar.gz
Ekstrak file zebra:
[root@KUNINGAN ~]# tar zxvf zebra-0.95a.tar.gz
Masuk kedalam file zebra:
[root@KUNINGAN ~]# cd zebra-0.95a
root@KUNINGAN zebra-0.95a]# ./configure –sysconfdir=/etc/zebra –disable-ipv6




–enable-tcp-zebra
[root@KUNINGAN zebra-0.95a]# make
[root@KUNINGAN zebra-0.95a]# make install
/etc/zebra adalah tempat file hasil instalasi.
Kopikan file zebra.conf.sample menjadi zebra.conf
[root@KUNINGAN zebra]# cd /etc/zebra/
[root@KUNINGAN etc]# cp zebra.conf.sample zebra.conf
[root@KUNINGAN zebra]# cp ripd.conf.sample ripd.conf
[root@KUNINGAN zebra]# cp ospfd.conf.sample ospfd.conf
root@KUNINGAN zebra]# cp bgpd.conf.sample bgpd.conf
Supaya service otomatis dijalankan ketika Gateway di restart.
[root@KUNINGAN zebra]# cp /root/zebra-0.95a/init/redhat/zebra.init /etc/rc.d/init.d/zebra
[root@KUNINGAN zebra]# cp /root/zebra-0.95a/init/redhat/ripd.init /etc/rc.d/init.d/ripd
[root@KUNINGAN zebra]# cp /root/zebra-0.95a/init/redhat/ospfd.init /etc/rc.d/init.d/ospfd
[root@KUNINGAN zebra]# cp /root/zebra-0.95a/init/redhat/bgpd.init /etc/rc.d/init.d/bgpd
[root@KUNINGAN zebra]# chmod 755 /etc/rc.d/init.d/*
Ubah file zebra, ripd, ospfd, bgpd yang sudah dikopi ke /etc/rc.d/init.d/
File zebra
[root@KUNINGAN zebra]# vim /etc/init.d/zebra
. /etc/rc.d/init.d/functions menjadi . /etc/init.d/functions
[ -f /etc/zebra.conf ] || exit 0 menjadi [ -f /etc/zebra/zebra.conf ] || exit 0
# daemon /usr/sbin/zebra –d menjadi daemon /usr/local/sbin/zebra –d
[root@KUNINGAN zebra]# vim /etc/init.d/ripd
. /etc/rc.d/init.d/functions menjadi . /etc/init.d/functions
[ -f /etc/ripd.conf ] || exit 0 menjadi [ -f /etc/zebra/ripd.conf ] || exit 0
# daemon /usr/sbin/ripd –d menjadi daemon /usr/local/sbin/ripd –d
[root@KUNINGAN zebra]# vim /etc/init.d/ospfd
. /etc/rc.d/init.d/functions menjadi . /etc/init.d/functions
[ -f /etc/ospfd.conf ] || exit 0 menjadi [ -f /etc/zebra/ospfd.conf ] || exit 0
# daemon /usr/sbin/ospfd –d menjadi daemon /usr/local/sbin/ospfd –d
[root@KUNINGAN zebra]# vim /etc/init.d/bgpd
. /etc/rc.d/init.d/functions menjadi . /etc/init.d/functions
[ -f /etc/bgpd.conf ] || exit 0 menjadi [ -f /etc/zebra/bgpd.conf ] || exit 0
# daemon /usr/sbin/bgpd –d menjadi daemon /usr/local/sbin/bgpd –d
Tambahkan di :
[root@KUNINGAN zebra]# vim /etc/services
zebrasrv 2600/tcp
zebra 2601/tcp
ripd 2602/tcp
ripng 2603/tcp
ospfd 2604/tcp
bgpd 2605/tcp
ospf6d 2606/tcp
Jalankan service :
[root@KUNINGAN zebra]# service zebra start
[root@KUNINGAN zebra]# service ripd start
[root@KUNINGAN zebra]# service ospfd start
[root@KUNINGAN zebra]# service bgpd start
Lihat port yang sedang running di gateway 1 dengan perintah nmap, jika nmap belum ada maka install dulu :
[root@KUNINGAN zebra]#yum install nmap
[root@KUNINGAN zebra]#nmap localhost
PORT STATE SERVICE
2600/tcp open zebrasrv
2601/tcp open zebra
2602/tcp open ripd
2604/tcp open ospfd
2605/tcp open bgpd
Ok zebra sudah berjalan dengan baik, berarti gateway 1 sudah bisa routing dinamik dengan RIP, OSPF, dan BGP.
C. Routing RIP
Agar routing RIP jalan, maka ada dua file yang harus di konfigurasi di masing-masing gateway, yaitu zebra.conf dan ripd.conf
Isi dari file zebra.conf adalah ip address dari interface yang ada pada gateway.
Isi dari file ripd.conf adalah alamat jaringan yang terhubung dengan gateway.
Untuk mengubah file zebra.conf bisa langsung lewat editor atau telne t lewat port 2601, dengan lewat jalur telnet maka kita akan mengkonfigurasi seperti router cisco. Supaya lebih seru mari kita konfigurasi lewat telnet saja, dengan password zebra.
Konfigurasi zebra.conf
Pastikan bahwa di gateway 1 firewall dah mati dengan :
[root@kuningan ~]# iptables –F
Telnet lewat windows:
D:\Documents and Settings\angga>>telnet 10.200.16.11 2601

Lanjut membaca.. “Routing Dinamik dengan RIP pada Linux”  »»

setting IP tables

Cara setting iptables

Pada kernel linux yang baru, terdapat fasilitas netfilter dan iptables yang menggantikan ipchains dengan penambahan beberapa fasilitas diantaranya pemberian tanda pada setiap paket yang difilter, penambahan table NAT dan mangle.
Table-table ini mempunyai fungsi sendiri-sendiri, sesuai dengan namanya, table NAT menangani semua keperluan mengenai Network Addresss Translation, termasuk juga port redirection dan IP Masquerading, sedangkan untuk table Mangle bisa digunakan untuk memberikan tanda pada sebuah paket, dan selanjutnya untuk diolah atau ditransmisikan pada kondisi tertentu.
Pembahasan mengenai table Mangle ini tidak dibahas disini, karena hal tersebut menyimpang dari topik kita, yaitu Network Address Translation (NAT).
Seperti dibicarakan sebelumnya. terjadi perubahan juga pada implementasi IP Masquerading, yang semula diletakkan di table filter, namun pada iptables, IP Masqurading diletakkan pada table tersendiri yaitu NAT. Oleh karena itu penulis hanya menambahkan pengimplementasian IP Masquerading pada kernel 2.4.xx, sedangkan untuk hak ciptanya masih dipegang sdr. Agus Hartanto .
Jika anda belum mengetahui apakah IP Masquerade itu, dan apa kegunaannya, silahkan lihat tulisan terdahulu yaitu NAT dengan linux hasil karya sdr. Agus, karena dalam artikel ini tidak dijelaskan lagi secara detail mengenai hal tersebut, takut nanti dituduh menyontek ide orang lain , penulis juga masih menggunakan gambaran yang dikemukakan oleh tulisan sdr. Agus karena iptables pada dasarnya mirip dengan ipchains dan agar pembaca lebih mudah memahaminya. Pembahasan pada contoh-contoh yang dikemukakan menggunakan RedHat linux sebagai acuan, sehingga mungkin ada perbedaan letak file jika anda menggunakan distro lain selain RedHat.
1. Persiapan
Untuk koneksi ke internet menggunakan IP Masquerade, minimal harus ada sebuah mesin linux dalam jaringan yang tersambung ke internet dan mempunyai sedikitnya satu real/official IP, selain itu tentu saja kernel linux juga harus mendukung IP Masquerade. Adapun program untuk mengaktifkan IP Masquerade pada kernel 2.4.x adalah menggunakan iptables, meskipun sebenarnya ipchains dan ipfwadm juga tersedia, namun iptables mempunyai kinekerja lebih cepat dibandingkan dengan pendahulunya, dan mempunyai tingkat keamanan lebih tinggi, seperti pembatasan jumlah paket yang masuk.
iptables secara default telah tersedia pada kernel 2.4.x, namun apabila anda ingin mengkompilasinya secara terpisah, program tersebut dapat anda cari dan download melalui netfilter.samba.org, atau melalui site site linux archive lainnya seperti freshmeat.
Untuk langkah awal, komputer-komputer yang terkoneksi ke jaringan internal, sebaiknya diberi alamat menggunakan IP private dan diletakkan dalam satu netmask dengan komputer yang menjadi gateway.
Contoh :
ISP ppp0 router.linux-kita.com
client1 192.168.1.2
client2 192.168.1.3
client3 192.168.1.4
server 192.168.1.1
netmask 255.255.255.0
Untuk keperluan IP-Masquerade, kernel anda harus mendukung beberapa driver dibawah ini :





* Enable loadable module support
CONFIG_MODULES
- Mengijinkan anda untuk memanggil komponen kernel
dalam bentuk modul
* Networking support
CONFIG_NET
* Network firewalls
CONFIG_FIREWALL
* TCP/IP networking
CONFIG_INET
* Netfilter Support
CONFIG_NETFILTER
* Netfilter: Connection Tracking
CONFIG_IP_NF_CONNTRACK
* Netfilter: Iptables Style support
CONNFIG_IP_NF_IPTABLES
* Netfilter: Filter Packets
CONFIG_IP_NF_FILTER
* Netfilter: Reject Packets
CONFIG_IP_NF_TARGET_REJECT
* Netfilter: NAT Support
CONFIG_IP_NF_NAT
CONFIG_IP_NF_NAT_NEEDED
* Netfilter: IP Masquerading
CONFIG_IP_NF_TARGET_MASQUERADE
* Netfilter: Redirection
CONFIG_IP_NF_TARGET_REDIRECT
* Netfilter: IRC NAT Support
CONFIG_IP_NF_NAT_IRC
* Netfilter: Table Mangle
CONFIG_IP_NF_MANGLE
* Netfilter: Log target support
CONFIG_IP_NF_TARGET_LOG
* Netfilter: Ipchains Style Support
CONFIG_IP_NF_COMPAT_IPCHAINS
* Netfilter: Ipfwadm Style Support
CONFIG_IP_NF_COMPAT_IPFWADM
* Dummy net driver support
CONFIG_DUMMY
Pada kernel 2.4.x yang terpasang pada redhat, option-option di atas sudah diaktifkan dalam bentuk modul, sehingga anda tidak perlu mengkompile ulang kernel lagi, yang tentu sangat melelahkan bagi yang belum terbiasa Dan untuk menggunakan modul-modul tersebut, anda tidak perlu memanggilnya terlebih dahulu menggunakan modprobe, namun anda hanya perlu menjalankan iptables, dan secara otomatis, modul yang diperlukan akan diload ke dalam memory oleh iptables.
2. Mengaktifkan IP_FORWARDING
Untuk mengaktifkan ip_forward anda harus memberikan nilai 1 ke file /proc/sys/net/ipv4/ip_forward, contohnya dengan mengetikkan perintah di prompt linux :
[root@server /]# echo “1? > /proc/sys/net/ipv4/ip_forward
Ini sangat penting untuk diperhatikan, karena sejak Kernel 2.0.34 , kernel tidak mengaktifkannya secara default.
Atau cara lain, anda bisa menambahkan baris berikut pada file /etc/sysctl.conf:
net.ipv4.ip_forward = 1
dengan adanya baris tersebut maka script /etc/rc.d/init.d/network akan memberikan nilai 1 secara otomatis ke file /proc/sys/net/ipv4/ip_forward pada saat memulai linux.
3. Memanggil modul modul pendukung IP Masquerade
Seperti yang telah disebutkan diatas, pada kernel 2.4.x modul-modul yang tersedia tidak perlu dipanggil terlebih dahulu, anda hanya menjalankan iptables, dan secara otomatis, modul-modul yang diperlukan akan diload ke memory. Adapun beberapa modul netfilter yang terdapat pada kernel 2.4.x (terletak di direktori /lib/modules/2.4.x/kernel/net/ipv4/netfilter) adalah:
ipchains.o ip_nat_ftp.o iptable_nat.o ipt_mark.o ipt_owner.o ipt_TCPMSS.o
ip_conntrack_ftp.o ip_nat_irc.o ip_tables.o ipt_MARK.o ipt_REDIRECT.o ipt_tos.o
ip_conntrack_irc.o ip_queue.o ipt_limit.o ipt_MASQUERADE.o ipt_REJECT.o ipt_TOS.o
ip_conntrack.o iptable_filter.o ipt_LOG.o ipt_MIRROR.o ipt_state.o ipt_unclean.o
ipfwadm.o iptable_mangle.o ipt_mac.o ipt_multiport.o ipt_tcpmss.o
4. Mengkonfigurasikan Aturan dari IP Forwarding dan sedikit ttg Firewall
Untuk mengaktifkan IP Masquerade, anda harus memberikan perintah :
iptables -t nat -A POSTROUTING -s yyy.yyy.yyy.yyy./x -j MASQUERADE dengan table seperti diatas.
Untuk lebih jelasnya coba perhatikan contoh dibawah ini :
Anda mempunyai jaringan dengan alamat IP gateway linux 192.168.1.1 dan klien klien 192.168.1.2 s/d 192.168.0.4 dengan netmask 255.255.255.0 , dan anda ingin mengaktifkan IP Masquerading atas alamat alamat ini, maka anda harus mengetikkan perintah :
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQUERADE
Anda mempunyai alamat alamat IP spt diatas tapi anda ingin hanya klien dengan IP bernomer 192.168.1.5 dan 192.168.0.10 saja yang bisa mengakses internet, maka seharusnya anda hanya mengetikkan perintah :
iptables -t nat -A POSTROUTING -s 192.168.1.5/32 -d 0.0.0.0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.10/32 -d 0.0.0.0/0 -j MASQUERADE
Anda mempunyai alamat alamat IP spt diatas dan anda ingin semua klien bisa mengakses internet, kecuali IP 192.168.1.5 dan 192.168.1.10 saja yang tidak bisa mengakses internet, maka seharusnya anda mengetikkan perintah :
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0/0 -j MASQUERADE
untuk mengaktifkan masquerading. Baru kemudian kita cegat kedua komputer tersebut dengan perintah :
iptables -I INPUT -s 192.168.1.5/32 -d 0/0 -j DROP
iptables -I INPUT -s 192.168.1.10/32 -d 0/0 -j DROP
Administrasi fasilitas fasilitas tertentu
Kita bisa juga melakukan pencegatan terhadap paket paket yang akan masuk ke port tertentu, hal ini juga memungkinkan kita untuk mematikan atau menghidupkan beberapa fasilitas internet, misalnya anda ingin klien anda dengan alamat 192.168.1.5 tidak diperbolehkan untuk melakukan chatting, maka kita bisa men-deny, paket paket dari klien 192.168.1.5 yang akan menuju ke port IRC (contoh port nomer 6667).
Dibawah ini contoh untuk mencegat paket TCP dari klien dengan alamat 192.168.1.5 yang menuju ke port 6667 :
iptables -I INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP
Untuk membuka atau menghapus aturan aturan yang telah kita buat kita bisa mengganti option -I , -A dsb, misalnya dengan option -D sebagai contoh:
iptables -I INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP
dapat dihapus dengan perintah :
iptables -D INPUT -p tcp -s 192.168.1.5/32 -d 0/0 –destination-port 6667 -j DROP
Catatan option option iptables yg digunakan diatas
-A menambahkan rule
-I menyisipkan (insert) rule firewall ke baris paling atas
-D menghapus rule yg telah dibuat
-s source address
-d destination address
DROP Pada iptables tidak dikenal target DENY, sebagai pengganti menggunakan target DROP

Lanjut membaca.. “setting IP tables”  »»

Search Box