Activarea redirecționării IP pentru IPv4 în Debian GNU / Linux

Enabling Ip Forwarding



Configurarea unei rețele de calculatoare poate fi uneori dificilă. Activarea redirecționării IPv4 pe o mașină Linux este, din fericire, o sarcină destul de simplă.

Termenul Redirecționare IP descrie trimiterea unui pachet de rețea de la o interfață de rețea la alta pe același dispozitiv. Ar trebui să fie activat atunci când doriți ca sistemul dvs. să acționeze ca un router care transferă pachete IP de la o rețea la alta.







Pe un sistem Linux, nucleul Linux are o variabilă numită `ip_forward` care păstrează această valoare. Este accesibil folosind fișierul `/ proc / sys / net / ipv4 / ip_forward`. Valoarea implicită este 0, ceea ce înseamnă că nu există redirecționare IP, deoarece un utilizator obișnuit care rulează un singur computer fără alte componente nu are nevoie de aceasta, de obicei. În schimb, pentru routere, gateway-uri și servere VPN este o caracteristică esențială.



Apoi, vă vom explica cum să activați redirecționarea IP temporar și permanent.



Redirecționarea IP ca soluție temporară

Pentru a activa acest parametru kernel din mers aveți două opțiuni. Opțiunea 1 stochează pur și simplu valoarea 1 în variabila de mai sus, după cum urmează:





#aruncat 1 > /la sută/sys/net/ipv4/ip_forward

Opțiunea 2 folosește comanda `sysctl` care vă permite să reglați și parametrii kernelului diferiți la runtime [2]. Ca utilizator administrativ executați următoarea comandă:

#sysctl-înnet.ipv4.ip_forward =1

Rețineți că această setare este modificată instantaneu. De asemenea, rezultatul nu va fi păstrat după repornirea sistemului.



Puteți interoga valoarea stocată după cum urmează:

#pisică /la sută/sys/net/ipv4/ip_forward

Această comandă returnează o valoare 0 pentru lipsa redirecționării IP și o valoare 1 pentru redirecționarea IP activată. Ca alternativă, folosirea `sysctl` vă arată, de asemenea, starea curentă:

# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward =0
#

Activarea redirecționării IP în mod permanent

Pentru a realiza acest lucru, trebuie parcurși și alți pași. Mai întâi, editați fișierul `/ etc / sysctl.conf`. Căutați o linie care conține intrarea # net.ipv4.ip_forward = 1 și eliminați # la începutul liniei.

Apoi, salvați fișierul și rulați comanda `sysctl` pentru a activa setările ajustate:

#sysctl-p /etc./sysctl.conf

Opțiunea `-p` este scurtă pentru„ –load “și necesită un nume pentru fișierul de configurare care trebuie urmat.

Apoi, reporniți sistemul de fișiere proc care oferă informații despre starea kernel-ului Linux folosind următoarea comandă:

#/etc./init.d/procps reporniți

În jurul anului 2015 numele fișierului a fost scurtat de la „procps.sh” la „procps”. Deci, pe sistemele Debian în vârstă, scriptul pe care trebuie să-l invocați se numește în schimb „procps.sh”.

Tratarea Systemd

Următorul obstacol a venit odată cu lansarea Systemd versiunea 221. Redirecționarea IP este dezactivată în mod implicit, iar activarea necesită un fișier suplimentar pentru a fi acolo. Dacă încă nu există, adăugați-l. Numele fișierului constă din numele interfeței de rețea urmat de sufixul '.network', de exemplu `eth0.network` pentru interfața de rețea` / dev / eth0`. După cum se menționează în documentație [4], alte extensii sunt ignorate.

Următorul fragment de cod arată configurarea interfeței de rețea `/ dev / tun0`. Conține două secțiuni - „Match” și „Network”. În secțiunea Potrivire definiți numele interfeței de rețea și în secțiunea rețea activați redirecționarea IP.

# cat /etc/systemd/network/tun0.network
[Meci]
Nume= tun0
[Reţea]
IPForward= ipv4

Concluzie

Activarea redirecționării IP pentru IPv4 nu este un mister. Doar câțiva pași și sunteți acolo. Hacking fericit!

Linkuri și referințe

* [1] Configurarea Systemd-Networkd, Debian Wiki
* [2] Juergen Haas: Aflați comanda Linux sysctl
* [3] Știri Systemd pentru versiunea 221
* [4] Documentație pentru Systemd