GNU/Linux >> Belajar Linux >  >> Linux

Rute Linux Tambahkan Perintah dengan Contoh

Routing adalah cara komputer berkomunikasi di jaringan lokal atau melalui internet. Untuk berkomunikasi melalui jaringan, komputer perlu mengetahui gateway mana yang harus mengirimkan lalu lintas. Sebuah gateway bisa menjadi router di jaringan Anda.

Perintah rute digunakan di Linux untuk menampilkan dan mengubah tabel perutean ip.

Dalam tutorial ini, saya akan menjelaskan cara menggunakan perintah rute untuk menambahkan rute statis melalui gateway untuk mengirim lalu lintas.

1) Tampilkan tabel perutean

Sebelum mengedit tabel perutean, ada baiknya melihat tabel default dengan rute yang ada di Kernel Linux Anda.

Gunakan perintah rute dengan -n opsi untuk menampilkan tabel perutean IP kernel saat ini. Perintah ini membantu mengidentifikasi jaringan yang terhubung secara lokal dengan rutenya.

Perintah berikut menampilkan tabel perutean:

$ route -n
Kernel IP routing table
Destination   Gateway      Genmask         Flags  Metric Ref  Use Iface
0.0.0.0       192.168.1.1  0.0.0.0         UG     600      0  0   eno1
169.254.0.0   0.0.0.0      255.255.0.0     U      1000     0  0   eno1
172.16.20.0   0.0.0.0      255.255.255.0   U      0        0  0   vmnet8
172.17.0.0    0.0.0.0      255.255.0.0     U      0        0  0   docker0
172.18.0.0    0.0.0.0      255.255.0.0     U      0        0  0   br-707c8e2f7441
192.168.1.0   0.0.0.0      255.255.255.0   U      600      0  0   eno1
192.168.161.0 0.0.0.0      255.255.255.0   U      0        0  0   vmnet1

Anda juga dapat menggunakan netstat -nr perintah untuk mencetak koneksi jaringan, tabel perutean, statistik antarmuka, koneksi penyamaran, dan keanggotaan multicast.

Tampilkan tabel perutean dengan perintah netstat:

$ netstat -nr
 Kernel IP routing table
 Destination    Gateway      Genmask        Flags  MSS  Window irtt Iface
 0.0.0.0        192.168.1.1  0.0.0.0        UG     0    0      0    eno1
 169.254.0.0    0.0.0.0      255.255.0.0    U      0    0      0    eno1
 172.16.20.0    0.0.0.0      255.255.255.0  U      0    0      0    vmnet8
 172.17.0.0     0.0.0.0      255.255.0.0    U      0    0      0    docker0
 172.18.0.0     0.0.0.0      255.255.0.0    U      0    0      0    br-707c8e2f7441
 192.168.1.0    0.0.0.0      255.255.255.0  U      0    0      0    eno1
 192.168.161.0  0.0.0.0      255.255.255.0  U      0    0      0    vmnet1

Sekarang kita memiliki perintah ip untuk menampilkan rute

$ ip route show

2) Tambahkan rute baru

Seperti yang kami katakan di atas, untuk memanipulasi tabel perutean, kami menggunakan route add perintah ( add adalah opsinya) untuk secara manual menunjukkan jalur statis yang akan digunakan paket melalui jaringan. Ini digunakan untuk menetapkan rute statis sementara yang akan berubah hanya jika administrator secara manual mengubah nilai rute baru.

Ada banyak kemungkinan untuk menggunakan tambahan rute perintah.

Kami harus menunjukkan jaringan tujuan, subnet mask jaringan, dan gateway yang akan digunakan.

route add -net <network_address> gw <gateway> <interface_name>

Atau, sekarang Anda dapat menggunakan ip route perintah, sintaks sebagai berikut:

ip route add <network_address> via <gateway> dev <interface_name>

Misalnya, mari tambahkan jaringan rute baru 10.0.0.0/8 dan melalui alamat IP gateway 192.168.1.1:

# route add -net 10.0.0.0/8 gw 192.168.1.1 eno1

Sekarang kita dapat menampilkan tabel routing menggunakan route -n :

# route -n
Kernel IP routing table
Destination   Gateway      Genmask      Flags  Metric Ref Use Iface
0.0.0.0       192.168.1.1  0.0.0.0       UG     600    0   0   eno1
10.0.0.0      192.168.1.1  255.0.0.0     UG     0      0   0   eno1
169.254.0.0   0.0.0.0      255.255.0.0   U      1000   0   0   eno1
172.16.20.0   0.0.0.0      255.255.255.0 U      0      0   0   vmnet8
172.17.0.0    0.0.0.0      255.255.0.0   U      0      0   0   docker0
172.18.0.0    0.0.0.0      255.255.0.0    U      0      0   0   br-707c8e2f7441
192.168.1.0   0.0.0.0      255.255.255.0  U      600    0   0   eno1
192.168.161.0 0.0.0.0      255.255.255.0  U      0      0   0   vmnet1

Anda dapat menambahkan netmask opsi jika Anda ingin menambahkan nilai netmask. Jika tidak disediakan, maka perintah rute akan menemukan nilai netmask secara otomatis.

# route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.100 eth0
Kernel IP routing table
Destination  Gateway       Genmask       Flags Metric Ref Use Iface
192.168.1.0  192.168.1.100 255.255.255.0 UG    0      0   0   eth0
192.168.1.0  *             255.255.255.0 U     0      0   0   eth0
169.254.0.0  *             255.255.0.0   U     0      0   0   eth0
10.0.0.0     192.168.1.254 255.0.0.0     UG    0      0   0   eth0
default      192.168.1.1   0.0.0.0       UG    0      0   0   eth0

Untuk menambahkan rute ke host tertentu gunakan -host pilihan. Kami hanya harus menunjukkan gateway yang akan digunakan.

route add -host <host_IP_address> gw <gateway>

Misalnya, mari tambahkan host tertentu '10.0.0.10' lalu tampilkan tabel perutean

# route add -host 10.0.0.10 gw 192.168.1.1 eno1
# route -n
 Kernel IP routing table
 Destination   Gateway      Genmask         Flags Metric Ref Use Iface
 0.0.0.0       192.168.1.1  0.0.0.0         UG    600    0   0   eno1
 10.0.0.0      192.168.1.1  255.0.0.0       UG    0      0   0   eno1
 10.0.0.10     192.168.1.1  255.255.255.255 UGH   0      0   0   eno1
 169.254.0.0   0.0.0.0      255.255.0.0     U     1000   0   0   eno1
 172.16.20.0   0.0.0.0      255.255.255.0   U     0      0   0   vmnet8
 172.17.0.0    0.0.0.0      255.255.0.0     U     0      0   0   docker0
 172.18.0.0    0.0.0.0      255.255.0.0     U     0      0   0   br-707c8e2f7441
 192.168.1.0   0.0.0.0      255.255.255.0   U     600    0   0   eno1
 192.168.161.0 0.0.0.0      255.255.255.0   U     0      0   0   vmnet1

Dalam contoh di atas, kolom bendera memiliki nilai yang berbeda dan itu tidak dapat dipahami.

Kemungkinan flag dan definisinya:

U - rute sudah habis
H - targetnya adalah tuan rumah
G - gunakan gerbang
R - memulihkan rute untuk perutean dinamis
D - diinstal secara dinamis oleh daemon atau redirect
M - dimodifikasi dari daemon perutean atau pengalihan
A - diinstal oleh addrconf
C - entri cache
! - tolak rute

3) Tolak dan Hapus rute

Kita dapat memanipulasi tabel routing tidak hanya untuk menambahkan rute statika tetapi juga untuk menghapus atau menolak rute yang kita masukkan lebih awal.

Untuk menghapus jaringan tujuan dari tabel perutean gunakan route del perintah:

route del -net <network_address> gw <gateway> <interface_name>

Misalnya untuk menghapus rute ke jaringan 10.0.0.0/8 kami:

# route del -net 10.0.0.0/8 gw 192.168.1.1 eno1

Keluaran

# route -n
 Kernel IP routing table
 Destination   Gateway     Genmask         Flags Metric Ref Use Iface
 0.0.0.0       192.168.1.1 0.0.0.0         UG    600    0   0   eno1
 10.0.0.10     192.168.1.1 255.255.255.255 UGH   0      0   0   eno1
 169.254.0.0   0.0.0.0     255.255.0.0     U     1000   0   0   eno1
 172.16.20.0   0.0.0.0     255.255.255.0   U     0      0   0   vmnet8
 172.17.0.0    0.0.0.0     255.255.0.0     U     0      0   0   docker0
 172.18.0.0    0.0.0.0     255.255.0.0     U     0      0   0   br-707c8e2f7441
 192.168.1.0   0.0.0.0     255.255.255.0   U     600    0   0   eno1
 192.168.161.0 0.0.0.0     255.255.255.0   U     0      0   0   vmnet1

Untuk melarang alamat IP tetapi masih ada di tabel perutean. Perhatikan bahwa kita masih menggunakan parameter opsi tambah tetapi di akhir perintah, kita harus menggunakan reject pilihan. Kami dapat menyimpan gateway kami atau tidak, tetapi kami tidak menyebutkan antarmuka keluaran.

route  add -host <host_IP_address> reject

Dalam perintah berikut kami akan menolak host kami '10.0.0.10':

# route add -host 10.0.0.10 reject

Tampilkan tabel perutean setelah perubahan:

# route -n
 Kernel IP routing table
 Destination   Gateway     Genmask         Flags Metric Ref Use Iface
 0.0.0.0       192.168.1.1 0.0.0.0         UG    600    0   0   eno1
 10.0.0.10      -          255.255.255.255 !H    0      -   0    -
 10.0.0.10     192.168.1.1 255.255.255.255 UGH   0      0   0   eno1
 169.254.0.0   0.0.0.0     255.255.0.0     U     1000   0   0   eno1
 172.16.20.0   0.0.0.0     255.255.255.0   U     0      0   0   vmnet8
 172.17.0.0    0.0.0.0     255.255.0.0     U     0      0   0   docker0
 172.18.0.0    0.0.0.0     255.255.0.0     U     0      0   0   br-707c8e2f7441
 192.168.1.0   0.0.0.0     255.255.255.0   U     600    0   0   eno1
 192.168.161.0 0.0.0.0     255.255.255.0   U     0      0   0   vmnet1

Rute yang ditambahkan menggunakan perintah di atas tidak persisten selama reboot, jadi kami telah menambahkan rute statis ke file konfigurasi agar tetap permanen.

Untuk menambahkan rute statis persisten untuk distribusi Linux apa pun, Anda dapat menggunakan file generik /etc/rc.local.

Untuk Ubuntu dan Debian gunakan file bernama '/etc/network/interfaces' dan di RHEL/CentOS gunakan '/etc/sysconfig/network-scripts/route-ethX'.

Kesimpulan

Dalam tutorial ini, kita belajar bagaimana menambahkan rute statis di Linux menggunakan perintah route add. Kami harus mencatat bahwa dengan metode itu, rute tidak akan berubah kecuali Anda memodifikasinya. Penting untuk menghapus rute yang tidak kita butuhkan.

Related Read: How to Permanently add Static Route in Linux

Linux
  1. Perintah Tee Linux dengan Contoh

  2. Perintah kepala Linux dengan Contoh

  3. Perintah JQ di Linux dengan Contoh

  1. Perintah wc Linux dengan Contoh

  2. Perintah sortir Linux dengan Contoh

  3. Perintah Echo di Linux (Dengan Contoh)

  1. Perintah man di Linux dengan Contoh

  2. Perintah AWK di Linux dengan Contoh

  3. Perintah Curl di Linux dengan Contoh