
Har du en gammal dator som har 2 Ethernet-interface?
Varför inte låta den bli en router?
Fördelen med att bygga egen router är att du har full kontroll på mjukvaran. Köper du något färdigt, oftast tillverkat i Kina, så har du sämre koll på vad som egentligen händer. Det här gudien bygger på debian, men bör lika bra ubuntu eller mint
Konfigurera Debian som router med DHCP och internetdelning
Den här guiden visar hur du sätter upp en Debian-maskin som router. Trafiken skickas från ett internt nät till internet via två nätverkskort.
Scenario:
- enp2s0: Ansluten till internet eller ett överordnat nät, får dynamisk IP via DHCP
- enp3s0: Ansluten till ett internt nät (t.ex. 10.0.0.0/24), delar ut IP-adresser via DHCP
Steg 1: Aktivera IP-forwarding
Temporärt:
sysctl -w net.ipv4.ip_forward=1
Permanent:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Steg 2: Sätt IP-adress på det interna nätet (enp3s0)
Tillfälligt:
ip addr add 10.0.0.1/24 dev enp3s0
ip link set enp3s0 up
För permanent konfiguration, använd /etc/network/interfaces
eller motsvarande.
Steg 3: Installera och konfigurera DHCP-server
apt update
apt install isc-dhcp-server
Redigera /etc/default/isc-dhcp-server
:
INTERFACESv4="enp3s0"
Redigera /etc/dhcp/dhcpd.conf
:
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.100 10.0.0.200;
option routers 10.0.0.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 1.1.1.1, 8.8.8.8;
}
Starta om DHCP-servern:
systemctl restart isc-dhcp-server
systemctl enable isc-dhcp-server
Steg 4: Ställ in NAT (Masquerading)
iptables -t nat -A POSTROUTING -o enp2s0 -j MASQUERADE
För att spara regeln permanent:
apt install iptables-persistent
Steg 5: Kontrollera routing
ip route
Exempel på korrekt routingtabell:
default via 192.168.1.1 dev enp2s0
10.0.0.0/24 dev enp3s0 proto kernel scope link src 10.0.0.1
192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.112
Felsökning om det inte fungerar
Kontrollera IP-forwarding
sysctl net.ipv4.ip_forward
Det ska stå:
net.ipv4.ip_forward = 1
Om inte, aktivera:
sysctl -w net.ipv4.ip_forward=1
Kontrollera NAT-regeln
iptables -t nat -L -v
Det ska finnas en MASQUERADE
-regel för enp2s0.
Kontrollera klientens nätverksinställningar
På klienten:
ip addr
ip route
Klienten ska ha en IP-adress i 10.0.0.x och default gateway 10.0.0.1.
Testa från klienten:
ping 10.0.0.1
ping 8.8.8.8
Kontrollera om Debian själv har internet
ping 8.8.8.8
Om detta inte fungerar, kontrollera anslutningen på enp2s0.
Sniffa trafik vid behov
Lyssna på DHCP-trafik:
tcpdump -i enp3s0 port 67 or port 68 -n
Lyssna på ICMP-trafik utåt:
tcpdump -i enp2s0 icmp
Sammanfattning
Debian agerar router mellan ett internt nät (enp3s0) och ett externt nät (enp2s0). DHCP-servern delar ut IP-adresser till det interna nätet och NAT översätter trafiken så att klienter kan nå internet.
Här kan du ladda ner Debian