Omogućavanje prosljeđivanja IP-a za IPv4 u Debian GNU/Linuxu

Enabling Ip Forwarding

Postavljanje računalne mreže ponekad može biti teško. Omogućavanje prosljeđivanja IPv4 na Linux stroju prilično je jednostavan zadatak, na sreću.

Pojam IP prosljeđivanje opisuje slanje mrežnog paketa s jednog mrežnog sučelja na drugo na istom uređaju. Trebalo bi ga omogućiti kada želite da vaš sustav djeluje kao usmjerivač koji prenosi IP pakete s jedne mreže na drugu.



Na Linux sustavu jezgra Linuxa ima varijablu pod nazivom `ip_forward` koja zadržava tu vrijednost. Dostupan je pomoću datoteke `/proc/sys/net/ipv4/ip_forward`. Zadana vrijednost je 0 što znači da nema prosljeđivanja IP -a, jer običnom korisniku koji pokreće jedno računalo bez dodatnih komponenti to obično nije potrebno. Nasuprot tome, za usmjerivače, pristupnike i VPN poslužitelje to je bitna značajka.



Zatim ćemo vam objasniti kako privremeno i trajno omogućiti prosljeđivanje IP adrese.



Prosljeđivanje IP -a kao privremeno rješenje

Kako biste omogućili ovaj parametar jezgre u hodu, imate dvije mogućnosti. Opcija 1 jednostavno pohranjuje vrijednost 1 u varijablu odozgo na sljedeći način:

#izbaciti 1 > /posto/sys/neto/ipv4/ip_naprijed

Opcija 2 koristi naredbu `sysctl` koja vam omogućuje podešavanje različitih parametara jezgre tijekom izvođenja [2]. Kao administrativni korisnik pokrenite sljedeću naredbu:

#sysctl-unet.ipv4.ip_forward =1

Imajte na umu da se ova postavka odmah mijenja. Također, rezultat se neće sačuvati nakon ponovnog pokretanja sustava.



Pohranjenu vrijednost možete postaviti na sljedeći način:

#mačka /posto/sys/neto/ipv4/ip_naprijed

Ova naredba vraća vrijednost 0 za nema prosljeđivanja IP -a i vrijednost 1 za omogućeno prosljeđivanje IP -a. Alternativno, upotreba `sysctl` također vam prikazuje trenutni status:

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

Omogućavanje IP prosljeđivanja trajno

Da bi se to postiglo potrebno je učiniti još neke korake. Prvo uredite datoteku `/etc/sysctl.conf`. Potražite redak koji sadrži unos # net.ipv4.ip_forward = 1 i uklonite # na početku retka.

Zatim spremite datoteku i pokrenite naredbu `sysctl` kako biste omogućili prilagođene postavke:

#sysctl-str /itd/sysctl.conf

Opcija `-p` je kratica za` –load` i zahtijeva naziv za praćenje konfiguracijske datoteke.

Zatim ponovno pokrenite datotečni sustav proc koji pruža informacije o statusu jezgre Linuxa pomoću sljedeće naredbe:

#/itd/init.d/procps ponovno pokretanje

Otprilike 2015. naziv datoteke skraćen je od `procps.sh` na` procps`. Dakle, na starijim Debian sustavima skripta koju morate pozvati zove se `procps.sh`.

Suočavanje s Systemd -om

Sljedeća prepreka došla je s izdavanjem Systemd verzije 221. Prosljeđivanje IP -a prema zadanim je postavkama onemogućeno, a za omogućavanje je potrebna dodatna datoteka. Ako ga još nema, samo ga dodajte. Naziv datoteke sastoji se od naziva mrežnog sučelja iza kojeg slijedi sufiks `.network`, na primjer` eth0.network` za mrežno sučelje `/dev/eth0`. Kao što je navedeno u dokumentaciji [4], druga se proširenja zanemaruju.

Sljedeći isječak koda prikazuje postavke za mrežno sučelje `/dev/tun0`. Sadrži dva odjeljka - `Match` i` Network '. U odjeljku Podudaranje definirajte naziv mrežnog sučelja, a u odjeljku mreže omogućite Prosljeđivanje IP -a.

# cat /etc/systemd/network/tun0.network
[Podudaranje]
Ime= tun0
[Mreža]
IPPoslijedi= ipv4

Zaključak

Aktiviranje prosljeđivanja IP -a za IPv4 nije misterija. Samo nekoliko koraka i tu ste. Sretno hakiranje!

Linkovi i reference

* [1] Postavljanje Systemd-Networkd, Debian Wiki
* [2] Juergen Haas: Naučite Linux sysctl naredbu
* [3] Systemd News za verziju 221
* [4] Dokumentacija za Systemd