[linux-l] Verbindungsabrechnung fuer eine Wohngemeinschaft

Christoph Biedl cbiedl at gmx.de
So Jun 8 14:10:43 CEST 2003


Gregor Zattler wrote...

[ *grrr* Crossmailing ist noch nerviger als Crossposting ]

> Mir schwebt vor, die Kosten jeder Verbindung anteilig auf den
> Traffic pro Nase zu verteilen und pro Monat aufzusummieren.  Aber
> auch eine einfache Verteilung von Zeiteinheiten wäre möglich.
> 
> Welche Lösungen gibt es dafür?

Nur traffic kannst Du schon mit iptables erschlagen, indem Du ein paar
Nullregeln einfügst. Sei das interne Interface eth0 und haben die Rechner
die IP-Nummern ab 192.168.36.1, dann zählen Regeln wie
   iptables -A FORWARD -i eth0 -s 192.168.36.1 -o ippp0
den von .1 erzeugten Traffic. Traffic zum Router selber wird hier nicht
erfaßt, der kommt durch die INPUT chain. Die Gegenrichtung ist analog.
Auslesen der Zähler mit 'iptables -L'. Wichtig dabei: Die Zähler laufen
früher oder später über, deswegen muß das relativ regelmäßig gemacht
werden. Außerdem könnte .2 die Adresse von .1 verwenden, wenn dieser
Rechner grad abgeschaltet ist und so auf dessen Kosten surfen.

> In diesem Zusammenhang: Gibt es einen vorgefertigte Lösung, bei
> der die Nutzer sich ausdrücklich beim Gateway anmelden müssen, um
> Pakete rausschicken und welche von draußen empfangen zu können?

Vorgefertigt nicht, aber zwei Ideen:

a) Die Rechner im Netz haben default-Route, aber Traffic wird im Router
blockiert, solange bis der Rechner ausdrücklich freigeschaltet wird (Web-
interface). Spoofingproblem wie oben.

b) Mit massivem Overkill-Potential: IP-Tunnel. Die Rechner haben keine
Default-Route, können also den Nameserver erreichen; für richtiges
Internet aber muß man sich auf dem Router "einwählen", z.B. mit ms-vpn
(aka pptp) und nur dann bekommen die Rechner den Weg ins Internet gezeigt.
Vorteile: Du kannst Zeitpunkte von Verbindungsaufbau und -trennung und
das Datenvolumen protokollieren und der Router weiß durch einfaches
Mitzählen, wann niemand mehr das Internet nutzen will und kann trennen.

Noch ein Hinweis: Denke beizeiten an ein verständliches(!) Modell, wie
Du die Kosten auf die Nutzer umlegst (KISS ist dringend angeraten), und
besser gibt es noch eine Möglichkeit zur Kostenkontrolle. Streit über
Abrechnungen sind häßlich.

	Christoph




Mehr Informationen über die Mailingliste linux-l