Split Routing mit zwei PPPoE-Verbindungen

1329
foaly

Ich habe eine Wheezy-Box von Debian, die als Router / Firewall / Webserver / Samba-Server fungieren soll. Ich habe zwei Konten von meinem Internetdienstanbieter: acc1 mit einer statischen IP-Adresse und acc2 mit dynamischen IP-Adressen. Die Box verfügt über zwei Ethernet-Karten, eth0 und eth1. eth0 ist an mein Modem angeschlossen, eth1 an meinen Switch. eth1: ip: 192.168.2.1 Netzmaske: 255.255.255.0 Subnetz: 192.168.2.0

Ich habe dnsmasq, grundlegende iptables, eingerichtet, um Verbindungen zuzulassen, und beide pppoe-Verbindungen; Jetzt kann ich meine Geräte zu Hause an die Debian-Box anschließen.

Dort habe ich Iproutes eingerichtet, um den Internetzugang zu ermöglichen. Ich setze den Standard in main auf ppp1 (statisch), und nun möchte ich das Subnetz 192.168.2.0/24 durch ppp2 routen.

# ip rule add from 192.168.2.0/24 table Homenet # ip route add default via 168.95.98.254 dev ppp2 table Homenet 

168.95.98.254 ist das Gateway, über das die PPPoe-Verbindungen eine Verbindung herstellen.

Das funktioniert nicht. Sobald diese Einstellungen wirksam werden, können meine Kunden nicht mehr das Internet oder 192.168.2.1 anpingen. Sie können jedoch 168.95.98.254 ping.

ABER wenn ich im obigen Befehl 192.168.2.0/24 durch eine IP-Adresse meines Clients ersetze, funktioniert alles reibungslos, mein Client verbindet sich über eine dynamische IP, während die anderen immer noch die statische IP verwenden.

Was habe ich vermisst (-verstehen)?

Danke für jede Hilfe!

Hier sind einige Ausgänge:

~$ sudo route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp2 168.95.98.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp2 168.95.98.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp1 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1  ~$ sudo ip rule list 0: from all lookup local  32763: from 192.168.2.0/24 lookup Homenet  32764: from 192.168.2.239 lookup Claire  32766: from all lookup main  32767: from all lookup default  ~$ sudo ip route list table Claire default via 168.95.98.254 dev ppp2 # this one works! the same on table Homenet works not.  ~$ sudo ip route list default dev ppp2 scope link  168.95.98.254 dev ppp2 proto kernel scope link src xx.xxx.170.105  168.95.98.254 dev ppp1 proto kernel scope link src xxx.xx.85.229  192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.1  

Ich habe das schon früher in den Debian-Foren nachgefragt, aber es entstanden keine Netzwerk-Gurus. Daher dachte ich, ich könnte es hier genauso gut versuchen.

1

1 Antwort auf die Frage

1
foaly

Zum Schluss: Ich habe ziemlich schnell Hilfe auf der Lartc-Mailingliste gefunden. Meine endgültigen IP-Regeln und IP-Routen lauten wie folgt:

$ ip rule ls 0: from all lookup local  32763: from all iif ppp2 lookup Homenet  32764: from all iif eth1 lookup Homenet  32766: from all lookup main  32767: from all lookup default  $ ip route ls default dev ppp1 scope link  168.95.98.254 dev ppp2 proto kernel scope link src w.x.y.z  168.95.98.254 dev ppp1 proto kernel scope link src a.b.c.d  192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.1  $ ip route ls table Homenet default dev ppp2 scope link  192.168.2.0/24 dev eth1 scope link 

jetzt läuft alles reibungslos. :)