Netwerken

IP-doorsturen inschakelen voor IPv4 in Debian GNU/Linux

IP-doorsturen inschakelen voor IPv4 in Debian GNU/Linux
Het opzetten van een computernetwerk kan soms lastig zijn. IPv4 Forwarding inschakelen op een Linux-machine is gelukkig een vrij eenvoudige taak.

De term IP Forwarding beschrijft het verzenden van een netwerkpakket van de ene netwerkinterface naar de andere op hetzelfde apparaat. Het moet worden ingeschakeld als u wilt dat uw systeem fungeert als een router die IP-pakketten van het ene netwerk naar het andere overdraagt.

Op een Linux-systeem heeft de Linux-kernel een variabele genaamd 'ip_forward' die deze waarde behoudt. Het is toegankelijk via het bestand '/proc/sys/net/ipv4/ip_forward'. De standaardwaarde is 0, wat betekent dat er geen IP Forwarding is, omdat een gewone gebruiker die een enkele computer zonder verdere componenten gebruikt dat meestal niet nodig heeft. Voor routers, gateways en VPN-servers is het daarentegen een vrij essentiële functie.

Vervolgens zullen we u uitleggen hoe u IP Forwarding tijdelijk en permanent kunt inschakelen.

IP-doorsturen als tijdelijke oplossing

Om deze kernelparameter on-the-fly in te schakelen, heb je twee opties:. Optie 1 slaat eenvoudig de waarde van 1 op in de variabele van hierboven als volgt:

# echo 1 > /proc/sys/net/ipv4/ip_forward

Optie 2 gebruikt het 'sysctl'-commando waarmee je ook tijdens runtime verschillende kernelparameters kunt aanpassen [2]. Voer als beheerder de volgende opdracht uit:

# sysctl -w net.ipv4.ip_forward=1

Houd er rekening mee dat deze instelling onmiddellijk wordt gewijzigd. Het resultaat wordt ook niet bewaard na het opnieuw opstarten van het systeem.

U kunt de opgeslagen waarde als volgt opvragen:

# cat /proc/sys/net/ipv4/ip_forward

Deze opdracht retourneert een waarde van 0 voor geen IP Forwarding, en een waarde van 1 voor IP Forwarding ingeschakeld. Als alternatief toont het gebruik van 'sysctl' u ook de huidige status:

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

IP-doorsturen permanent inschakelen

Om dit te bereiken moeten nog een aantal andere stappen worden ondernomen. Bewerk eerst het bestand '/etc/sysctl.conf'. Zoek naar een regel met de vermelding "#net.ipv4.ip_forward=1”, en verwijder de # aan het begin van de regel.

Sla vervolgens het bestand op en voer de opdracht 'sysctl' uit om de aangepaste instellingen in te schakelen:

# sysctl -p /etc/sysctl.conf

De optie '-p' is een afkorting voor '-load' en vereist een naam voor het configuratiebestand dat moet worden gevolgd.

Start vervolgens het proc-bestandssysteem dat informatie geeft over de status van de Linux-kernel opnieuw met de volgende opdracht:

# /etc/init.d/procps opnieuw opstarten

In ongeveer 2015 werd de bestandsnaam afgekort van 'procps'.sh' naar 'procps'. Dus op oudere Debian-systemen heet het script dat u moet aanroepen 'procps.sh', in plaats daarvan.

Omgaan met Systemd

De volgende hindernis kwam met de release van Systemd-versie 221. IP Forwarding is standaard uitgeschakeld en voor het inschakelen moet er een extra bestand aanwezig zijn. Als het er nog niet is, voeg het dan gewoon toe. De bestandsnaam bestaat uit de naam van de netwerkinterface gevolgd door het achtervoegsel '.netwerk', bijvoorbeeld 'eth0.netwerk' voor de netwerkinterface '/dev/eth0'. Zoals vermeld in de documentatie [4], worden andere extensies genegeerd.

Het volgende codefragment toont de instellingen voor de netwerkinterface '/dev/tun0'. Het bevat twee secties - 'Match' en 'Network'. Definieer in het gedeelte Match de naam van de netwerkinterface en schakel IP Forwarding in het netwerkgedeelte in.

# cat /etc/systemd/network/tun0.netwerk
[Bij elkaar passen]
Naam=tun0
[Netwerk]
IPForward=ipv4

Conclusie

Het activeren van IP Forwarding voor IPv4 is geen mysterie. Slechts een paar stappen en je bent er. Gelukkig hacken!

Links en referenties

* [1] Systemd-Networkd, Debian Wiki instellen
* [2] Juergen Haas: leer de Linux sysctl-opdracht
* [3] Systemd News voor versie 221
* [4] Documentatie voor Systemd

Open source-poorten van commerciële game-engines
Gratis, open source en platformonafhankelijke game-engine-recreaties kunnen worden gebruikt om zowel oude als enkele van de vrij recente gametitels te...
Beste opdrachtregelspellen voor Linux
De opdrachtregel is niet alleen je grootste bondgenoot bij het gebruik van Linux, hij kan ook de bron van entertainment zijn omdat je hem kunt gebruik...
Beste gamepad-toewijzingsapps voor Linux
Als je graag games op Linux speelt met een gamepad in plaats van een typisch toetsenbord- en muisinvoersysteem, zijn er enkele handige apps voor jou. ...