Saya perlu menambahkan rute yang tidak akan dihapus setelah reboot. Saya membaca dua cara melakukannya:
Tambahkan
up route add -net 172.X.X.0/24 gw 172.X.X.X dev ethX
ke file/etc/network/interfaces
atau
Buat file /etc/network/if-up.d/route dengan:
#!/bin/sh
route add -net 172.X.X.0/24 gw 172.X.X.X dev ethX
dan membuatnya dapat dieksekusi:
chmod +x /etc/network/if-up.d/route
Jadi saya bingung. Apa cara terbaik untuk melakukannya?
Jawaban:
Anda sebutkan
/etc/network/interfaces
, jadi itu adalah sistem Debian ...Buat tabel routing bernama. Sebagai contoh, saya telah menggunakan nama, "mgmt," di bawah ini.
Di atas, kernel mendukung banyak tabel routing dan merujuknya dengan bilangan bulat unik bernomor 0-255. Nama, mgmt, juga didefinisikan untuk tabel.
Di bawah, tampilan pada default
/etc/iproute2/rt_tables
berikut, menunjukkan bahwa beberapa nomor dicadangkan. Pilihan dalam jawaban 200 ini adalah arbitrer; seseorang dapat menggunakan nomor apa pun yang belum digunakan, 1-252.Di bawah, file antarmuka Debian 7/8 menentukan
eth0
daneth1
.eth1
adalah jaringan 172.eth0
bisa menggunakan DHCP juga.172.16.100.10
adalah alamat IP untuk ditugaskaneth1
.172.16.100.1
adalah alamat IP router.Mulai ulang atau mulai ulang jaringan.
Perbarui - Menguraikan EL
Saya perhatikan dalam komentar bahwa Anda "bertanya-tanya untuk RHEL juga." Di Enterprise Linux ("EL" - RHEL / CentOS / et al), buat tabel routing bernama seperti yang disebutkan di atas.
File EL
/etc/sysconfig/network
:File EL
/etc/sysconfig/network-scripts/ifcfg-eth0
, menggunakan konfigurasi statis (tanpa NetworkManager dan tidak menentukan "HWADDR" dan "UUID" untuk contoh, di bawah) berikut./etc/sysconfig/network-scripts/ifcfg-eth1
File THE EL (tanpa NetworkManager dan tidak menentukan "HWADDR" dan "UUID" sebagai contoh, di bawah) mengikuti.File EL
/etc/sysconfig/network-scripts/route-eth1
:File EL
/etc/sysconfig/network-scripts/rule-eth1
:sumber
Pada distro berbasis Debian Anda dapat menambahkan rute statis secara permanen sebagai berikut:
Pada distro berbasis RHEL:
sumber
sudo
ada artinya dalam kedua perintah Anda. Entah Anda sudah melakukan root, jadi>>
berfungsi, atau tidak, dalam hal>>
ini diterapkan sebagai pengguna asli Anda dan hanyaecho
dijalankan sebagai root. Juga, ini gagal gagal jika ada beberapa antarmuka didefinisikan dalam/etc/network/interfaces
.