Istilah Penerusan IP menerangkan pengiriman pakej rangkaian dari satu antara muka rangkaian ke yang lain pada peranti yang sama. Ia harus diaktifkan apabila anda mahu sistem anda bertindak sebagai penghala yang memindahkan paket IP dari satu rangkaian ke rangkaian lain.
Pada sistem Linux kernel Linux mempunyai pemboleh ubah bernama 'ip_forward' yang menyimpan nilai ini. Ia boleh diakses menggunakan fail '/ proc / sys / net / ipv4 / ip_forward'. Nilai lalai adalah 0 yang bermaksud tidak meneruskan IP, kerana pengguna biasa yang menjalankan satu komputer tanpa komponen lebih lanjut tidak memerlukannya, biasanya. Sebaliknya, untuk router, gateway dan pelayan VPN, ia merupakan ciri yang sangat penting.
Seterusnya, kami akan menerangkan kepada anda cara mengaktifkan Pemajuan IP buat sementara waktu, dan secara kekal.
Pemajuan IP Sebagai Penyelesaian Sementara
Untuk mengaktifkan parameter kernel ini dengan cepat, anda mempunyai dua pilihan. Pilihan 1 hanya menyimpan nilai 1 dalam pemboleh ubah dari atas seperti berikut:
# echo 1> / proc / sys / net / ipv4 / ip_forwardPilihan 2 menggunakan perintah 'sysctl' yang membolehkan anda menyesuaikan parameter kernel yang berbeza pada waktu runtime juga [2]. Sebagai pengguna pentadbiran, jalankan arahan berikut:
# sysctl -w bersih.ipv4.ip_forward = 1Perlu diingat bahawa tetapan ini diubah seketika. Hasilnya juga tidak akan dipelihara setelah menghidupkan semula sistem.
Anda boleh meminta nilai yang disimpan seperti berikut:
# kucing / proc / sys / net / ipv4 / ip_forwardPerintah ini mengembalikan nilai 0 untuk Pemajuan IP tanpa, dan nilai 1 untuk Pemajuan IP diaktifkan. Sebagai alternatif, menggunakan 'sysctl' juga menunjukkan status terkini kepada anda:
# sysctl bersih.ipv4.ip_teruskanbersih.ipv4.ip_forward = 0
#
Mengaktifkan Pemajuan IP Secara Kekal
Untuk mencapai ini, beberapa langkah lain perlu dilakukan. Pertama, edit fail '/ etc / sysctl.conf '. Cari baris yang mengandungi entri “#net.ipv4.ip_forward = 1 ", dan hapus # di awal baris.
Kemudian, simpan fail, dan jalankan perintah 'sysctl' untuk mengaktifkan tetapan yang diselaraskan:
# sysctl -p / etc / sysctl.pengesahanPilihan '-p' adalah kependekan dari '-load', dan memerlukan nama untuk fail konfigurasi yang harus diikuti.
Seterusnya, mulakan semula sistem fail proc yang memberikan maklumat mengenai status kernel Linux menggunakan arahan berikut:
# / etc / init.mulakan semula d / procpsPada sekitar tahun 2015 nama fail dipendekkan dari 'procps.sh 'hingga' procps '. Jadi, pada sistem Debian warga tua, skrip yang harus anda gunakan dinamakan 'procps.sh ', sebaliknya.
Berurusan dengan Systemd
Rintangan seterusnya datang dengan pelepasan Systemd versi 221. Pemajuan IP dilumpuhkan secara lalai, dan pengaktifan memerlukan fail tambahan untuk berada di sana. Sekiranya belum ada, tambahkan saja. Nama fail terdiri daripada nama antara muka rangkaian diikuti dengan akhiran '.rangkaian ', misalnya' eth0.rangkaian 'untuk antara muka rangkaian' / dev / eth0 '. Seperti yang dinyatakan dalam dokumentasi [4], sambungan lain tidak diendahkan.
Coretan kod berikut menunjukkan persediaan untuk antara muka rangkaian '/ dev / tun0'. Ia mengandungi dua bahagian - 'Match' dan 'Network'. Di bahagian Match tentukan nama antara muka rangkaian, dan di bahagian rangkaian aktifkan IP Forwarding.
# cat / etc / systemd / network / tun0.rangkaian[Padanan]
Nama = tun0
[Rangkaian]
IPForward = ipv4
Kesimpulannya
Mengaktifkan Pemajuan IP untuk IPv4 bukanlah misteri. Hanya beberapa langkah, dan anda ada di sana. Selamat menggodam!
Pautan dan rujukan
* [1] Menyiapkan Systemd-Networkd, Debian Wiki
* [2] Juergen Haas: Pelajari arahan sysctl Linux
* [3] Systemd News untuk versi 221
* [4] Dokumentasi untuk Systemd