Bin noch etwas unerfahren in Linux und habe folgendes
Problem.
Habe auf einem alten Rechner Fedora Core 2 installiert um
ihn als Router zu verwenden.
Der Rechner hat 2 NICs
eth0 192.168.0.1 255.255.255.0 (ins interne Netz)
eth1 192.168.47.2 255.255.255.0 (ans DSL Modem welches die
192.168.47.1 hat)
Die DSL Verbindung (ppp0) habe ich mit rp-pppoe eingerichtet
mit der Option beim Booten die Verbindung aufzubauen.
Das Funktioniert soweit auch. Nach dem Booten steht die DSL
Verbindung und ich kann von den anderen Rechnern im Netz sowohl die IP von
eth0, eht1 und ppp0 anpingen.
Um zu testen ob auch das Routing funktioniert habe ich es
mal zum testen wie folgt aktiviert.
echo 1
>/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s
192.168.0.0/24 -d 0/0 -o ppp0 -j MASQUERADE
Bei den anderen Rechnern (192.168.0.x) habe ich als
Standardgateway 192.168.0.1 und als DNS den DNS-Server 217.237.151.161 von
T-Online eingesetzt. Mit dem Ergebnis dass das Routing funktioniert.
Da die Verbindung damit ja totoal ungesichert ist und ich
das Routing auch nach dem Booten neu starten müsste habe ich die Datei
/etc/ppp/ip-up.local wie folgt angepasst.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash
# Anmerkung: internes netz hier: 192.168.0.0
# Turn on IP forwarding
echo 1 >
/proc/sys/net/ipv4/ip_forward
# Das NAT-Modul laden, andere benoetigte Module werden
# automatisch nachgeladen
modrobe iptable_nat
# Alle Chains leeren
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
# Standardpolicies setzen
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -I FORWARD -j TCPMSS -o ppp0
--clamp-mss-to-pmtu -p tcp --tcp-flags SYN,RST SYN
# internen Netzwerkverkehr freigeben
iptables -A INPUT -i eth0 -p all -j ACCEPT
iptables -A INPUT -i lo -p
all -j ACCEPT
# Masquerading einschalten
# iptables -t nat -A POSTROUTING -o
ppp0 -s 192.168.0.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o ppp0
-j MASQUERADE
# Spoofing verhindern
iptables -A INPUT -i ppp0 -s
192.168.0.0/24 -j DROP
iptables -A INPUT -i ppp0 -s
127.0.0.0/8 -j DROP
# internen Netzwerkverkehr an das Internet weiterleiten
iptables -A FORWARD -p all -i
eth0 -o ppp0 -j ACCEPT
# bestehende Verbindungen freischalten
iptables -A FORWARD -i ppp0 -m state --state
ESTABLISHED,RELATED -o eth0 -j ACCEPT
# bestehende Verbindungen in die Firewall zulassen
iptables -A INPUT -i ppp0 -m
state --state ESTABLISHED,RELATED -j ACCEPT
# ICMP
fragmentation-needed -j
ACCEPT
iptables -A FORWARD -p icmp
-j ACCEPT
iptables -A INPUT -p icmp -j
ACCEPT
iptables -A FORWARD -p tcp
--tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
# DNS-Anfragen zulassen
iptables -A INPUT -p tcp -i
ppp0 --sport 53 -j ACCEPT
iptables -A INPUT -p udp -i
ppp0 --sport 53 -j ACCEPT
# SSH
iptables -A INPUT -p tcp -i
ppp0 --dport 22 -j ACCEPT
iptables -A INPUT -p udp -i
ppp0 --dport 22 -j ACCEPT
echo "ip-up.local ausgefuehrt" >>
/var/log/messages
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
Mit dem Ergebnis das nach dem booten zwar die DSL-Verbindung
steht aber der Rechner nicht routet.
Leider habe ich bis jetzt keinen Fehler gefunden und komme
nicht auf die Lösung. Ich vermute mal das ich noch etwas aktivieren muss oder
das ich irgendwie einen Fehler in die ip-up.local gebracht habe.
Hoffe dass mir da jemand weiterhelfen kann.