Berikut adalah rangkuman perintah dan konfigurasi routing di Linux yang paling sering digunakan, beserta penjelasannya:
1. Melihat Routing Table
Perintah:
ip route show
Penjelasan:
Menampilkan tabel routing aktif di server.
Informasi ini menunjukkan jaringan tujuan, gateway, dan antarmuka yang digunakan.
2. Menambahkan Default Gateway
Perintah:
ip route add default via <gateway> dev <interface>
Contoh:
ip route add default via 192.168.1.1 dev eth0
Penjelasan:
Mengarahkan semua lalu lintas yang tidak memiliki rute spesifik ke gateway 192.168.1.1 melalui antarmuka eth0.
3. Menambahkan Rute ke Jaringan Tertentu
Perintah:
ip route add <destination> via <gateway> dev <interface>
Contoh:
ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
Penjelasan:
Mengarahkan lalu lintas untuk jaringan 192.168.2.0/24 melalui gateway 192.168.1.1.
4. Menghapus Rute
Perintah:
ip route del <destination> via <gateway>
Contoh:
ip route del 192.168.2.0/24 via 192.168.1.1
Penjelasan:
Menghapus rute tertentu dari tabel routing.
5. Mengatur IP Forwarding
Perintah:
Aktifkan sementara:
echo 1 > /proc/sys/net/ipv4/ip_forward
Permanenkan di file konfigurasi:
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
Penjelasan:
IP forwarding memungkinkan server Linux bertindak sebagai router untuk meneruskan lalu lintas antar jaringan.
6. Menjadikan Server Sebagai Router dengan NAT
Perintah:
iptables -t nat -A POSTROUTING -o <interface> -j MASQUERADE
Contoh:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Penjelasan:
NAT (Network Address Translation) digunakan untuk meneruskan lalu lintas dari jaringan lokal ke internet melalui antarmuka tertentu (eth0).
7. Mengecek Jalur Routing ke Destinasi
Perintah:
ip route get <destination>
Contoh:
ip route get 8.8.8.8
Penjelasan:
Menampilkan jalur spesifik yang akan diambil oleh lalu lintas menuju destinasi tertentu.
8. Periksa Konektivitas
Perintah:
Ping:
ping <destination>
Contoh:
ping 8.8.8.8
Fungsi: Menguji koneksi ke jaringan atau host tertentu.
Traceroute:
traceroute <destination>
Contoh:
traceroute google.com
Fungsi: Melacak jalur lengkap yang diambil paket menuju host tertentu.
9. Melihat Semua Rute Aktif
Perintah:
route -n
Penjelasan:
Menampilkan tabel routing dalam format lama, termasuk alamat IP (bukan nama host).
10. Menambahkan Rute Berbasis Sumber
Perintah:
Tambahkan tabel routing di /etc/iproute2/rt_tables:
200 custom_table
Tambahkan rute ke tabel baru:
ip route add <destination> dev <interface> table custom_table
Tambahkan aturan routing:
ip rule add from <source_ip> table custom_table
Contoh:
ip route add 192.168.2.0/24 dev eth1 table 200
ip rule add from 192.168.1.100/32 table 200
Penjelasan:
Digunakan untuk routing berbasis sumber (source-based routing), misalnya untuk lalu lintas dari IP tertentu.
11. Simpan Konfigurasi Routing
Routing yang disetel menggunakan perintah langsung akan hilang setelah reboot. Untuk menyimpan secara permanen:
Debian/Ubuntu:
Edit file /etc/network/interfaces:
auto eth0
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
CentOS/RHEL:
Tambahkan rute di /etc/sysconfig/network-scripts/route-<interface>:
192.168.2.0/24 via 192.168.1.1 dev eth0
Kesimpulan
Paling Sering Digunakan: ip route add, ip route del, ip route show.
Untuk Routing Kompleks: Gunakan tabel routing tambahan dan IP forwarding.
Debugging: Gunakan ping, traceroute, dan ip route get.
Dengan memahami ini, Anda sudah memiliki dasar yang kuat untuk mengelola routing di server Linux. 🚀