Protokol perutean jaringan terbagi dalam dua kategori utama:protokol gateway interior dan protokol gateway eksterior. Protokol gateway interior digunakan oleh router untuk berbagi informasi dalam satu sistem otonom. Jika Anda menjalankan Linux, Anda dapat membuat sistem Anda berfungsi sebagai router melalui tumpukan perutean open source (GPLv2) Quagga.
Apa itu Quagga?
Lebih banyak sumber daya Linux
- Lembar contekan perintah Linux
- Lembar contekan perintah Linux tingkat lanjut
- Kursus online gratis:Ikhtisar Teknis RHEL
- Lembar contekan jaringan Linux
- Lembar contekan SELinux
- Lembar contekan perintah umum Linux
- Apa itu container Linux?
- Artikel Linux terbaru kami
Quagga adalah rangkaian perangkat lunak perutean dan cabang dari GNU Zebra. Ini menyediakan implementasi dari semua protokol routing utama seperti Open Shortest Path First (OSPF), Routing Information Protocol (RIP), Border Gateway Protocol (BGP), dan Intermediate System to Intermediate System (IS-IS) untuk platform mirip Unix.
Meskipun Quagga mengimplementasikan protokol perutean untuk IPv4 dan IPv6, Quagga tidak bertindak sebagai router yang lengkap. Router yang sebenarnya tidak hanya mengimplementasikan semua protokol routing tetapi juga memiliki kemampuan untuk meneruskan lalu lintas jaringan. Quagga hanya mengimplementasikan tumpukan perutean, dan tugas meneruskan lalu lintas jaringan ditangani oleh kernel Linux.
Arsitektur
Quagga mengimplementasikan protokol perutean yang berbeda melalui daemon khusus protokol. Nama daemon sama dengan protokol routing yang diikuti dengan huruf "d". Zebra adalah daemon inti dan protokol-independen yang menyediakan lapisan abstraksi ke kernel dan menyajikan API Zserv melalui soket TCP ke klien Quagga. Setiap daemon khusus protokol bertanggung jawab untuk menjalankan protokol yang relevan dan membangun tabel perutean berdasarkan informasi yang dipertukarkan.
Penyiapan
Tutorial ini mengimplementasikan protokol OSPF untuk mengkonfigurasi routing dinamis menggunakan Quagga. Pengaturan mencakup dua host CentOS 7.7, bernama Alpha dan Beta. Kedua host berbagi akses ke 192.168.122.0/24 jaringan.
Alfa Host:
IP:192.168.122.100/24
Gateway:192.168.122.1
Host Beta:
IP:192.168.122.50/24
Gateway:192.168.122.1
Instal paket
Pertama, instal paket Quagga di kedua host. Ini tersedia di repo dasar CentOS:
yum install quagga -y
Aktifkan penerusan IP
Selanjutnya, aktifkan penerusan IP pada kedua host karena itu akan dilakukan oleh kernel Linux:
sysctl -w net.ipv4.ip_forward = 1
sysctl -p
Konfigurasi
Sekarang, masuk ke /etc/quagga direktori dan buat file konfigurasi untuk pengaturan Anda. Anda memerlukan tiga file:
- zebra.conf :File konfigurasi daemon Quagga, tempat Anda akan menentukan antarmuka dan alamat IP serta penerusan IP
- ospfd.conf :File konfigurasi protokol, tempat Anda akan menentukan jaringan yang akan ditawarkan melalui protokol OSPF
- daemon :Di mana Anda akan menentukan daemon protokol yang relevan yang diperlukan untuk dijalankan
Di host Alfa,
[root@alpha]# cat /etc/quagga/zebra.conf
interface eth0
ip address 192.168.122.100/24
ipv6 nd suppress-ra
interface eth1
ip address 10.12.13.1/24
ipv6 nd suppress-ra
interface lo
ip forwarding
line vty
[root@alpha]# cat /etc/quagga/ospfd.conf
interface eth0
interface eth1
interface lo
router ospf
network 192.168.122.0/24 area 0.0.0.0
network 10.12.13.0/24 area 0.0.0.0
line vty
[root@alphaa ~]# cat /etc/quagga/daemons
zebra=yes
ospfd=yes
Pada host Beta,
[root@beta quagga]# cat zebra.conf
interface eth0
ip address 192.168.122.50/24
ipv6 nd suppress-ra
interface eth1
ip address 10.10.10.1/24
ipv6 nd suppress-ra
interface lo
ip forwarding
line vty
[root@beta quagga]# cat ospfd.conf
interface eth0
interface eth1
interface lo
router ospf
network 192.168.122.0/24 area 0.0.0.0
network 10.10.10.0/24 area 0.0.0.0
line vty
[root@beta ~]# cat /etc/quagga/daemons
zebra=yes
ospfd=yes
Konfigurasi firewall
Untuk menggunakan protokol OSPF, Anda harus mengizinkannya di firewall:
firewall-cmd --add-protocol=ospf –permanent
firewall-cmd –reload
Sekarang, jalankan daemon zebra dan ospfd.
# systemctl start zebra
# systemctl start ospfd
Lihat tabel rute pada kedua host menggunakan:
[root@alpha ~]# ip route show
default via 192.168.122.1 dev eth0 proto static metric 100
10.10.10.0/24 via 192.168.122.50 dev eth0 proto zebra metric 20
10.12.13.0/24 dev eth1 proto kernel scope link src 10.12.13.1
192.168.122.0/24 dev eth0 proto kernel scope link src 192.168.122.100 metric 100
Anda dapat melihat bahwa tabel perutean di Alfa berisi entri 10.10.10.0/24 melalui 192.168.122.50 ditawarkan melalui protokol zebra . Demikian pula, pada host Beta, tabel berisi entri jaringan 10.12.13.0/24 melalui 192.168.122.100 .
[root@beta ~]# ip route show
default via 192.168.122.1 dev eth0 proto static metric 100
10.10.10.0/24 dev eth1 proto kernel scope link src 10.10.10.1
10.12.13.0/24 via 192.168.122.100 dev eth0 proto zebra metric 20
192.168.122.0/24 dev eth0 proto kernel scope link src 192.168.122.50 metric 100
Kesimpulan
Seperti yang Anda lihat, pengaturan dan konfigurasinya relatif sederhana. Untuk menambah kerumitan, Anda dapat menambahkan lebih banyak antarmuka jaringan ke router untuk menyediakan perutean untuk lebih banyak jaringan. Anda juga dapat mengimplementasikan protokol BGP dan RIP menggunakan metode yang sama.