Script zum Traffic loggen

  • Hi ich will auf meinem Proxy, das Volumen loggen,
    hab dazu in ner SuSE Mailing folgendes Script gefunden:


    Code
    1. ( cat /var/log/messages; zcat /var/log/messages-*.gz ) | \
    2. grep "pppd" | grep "Sent" | grep "received" | \
    3. awk ' BEGIN { r=0; s=0; } { r+=$10; s+=$7; } END \
    4. { print "R: "r"\nS: "s; print "Sum: "r+s }'


    Als Ergebnis, erhalte ich jetzt:


    R: 4.8405e+11
    S: 5.29129e+10
    Sum: 5.36963e+11


    Das kann aber im Leben nicht stimmen,
    da es sich hierbei um einen reinen HTTP und FTP Proxy für ca. 20 Benutzer handelt,
    mit normalen DSL Anschluß, der aber erst seit Mai läuft!


    :hilfe


    Greetz

  • Quote

    Original von AnK
    Hi ich will auf meinem Proxy, das Volumen loggen,
    hab dazu in ner SuSE Mailing folgendes Script gefunden:
    Greetz


    warum nimmst ned einfach ucd-snmpd + mrtg?
    dann siehst du auch eine grafische auslastung ueber
    tag/woche/monat


    -- randy


    edit: das script haut bei dial-on-demand pppoe nicht
    hin, weil nach jedem auflegen der pppd die bytes
    seit dem letzen start (und ned session) reported.

  • Ich habe ein kleines cronscript im Einsatz, hier mal ein Ausschnitt:



    Zurücksetzen kannst du den Zähler am Ende des Monat über /sbin/iptables -Z


    Alternativ kannst du dir die Daten auch aus /proc holen und in eine mysql-db loggen.
    Oder du wertest die logfiles von squid &Co. aus - da gibt es massig Lösungen für. :)


    Schau auch mal hier: http://www.traffic-tool.de/

  • Vielen Dank erstmal für die Vorschläge.


    Hab das Script Onlinecalc von folgender Adresse runtergeladen und installiert:
    Onlinecalc
    Ich weiss zwar nicht genau was, das Script loggt aber der Traffic kann es schlecht sein, da er im Laufe des Tages sogar abnimmt!


    Ist also ein bisschen ungenau, das Problem liegt denke ich mal am Dial-on-Demand Modus.


    Mal schaun, was mit den Squid Logfiles anzufangen ist...


    Greetz

  • hi,
    wenn du iptables benutzt dann kann ich dir "ulog-acctd" empfehlen. einfahc den demon starten und in iptables mit "iptables -A OUTPUT -j ULOG; iptables -A INPUT -j ULOG" starten. durch suabere iptables regeln kannst du das ding dann konfigurieren
    am ende kommt eine logfile herraus die dann ungefähr so aussieht (auch einstellbar)

    Code
    1. slime 1060606010 6 212.172.60.43 80 213.6.122.178 56794 16 15794 U "ippp0" "-" "-"
    2. slime 1060606030 6 80.190.230.101 80 213.6.122.178 37331 15 13004 U "ippp0" "-" "-"
    3. slime 1060606030 6 80.190.230.101 80 213.6.122.178 34730 7 3193 U "ippp0" "-" "-"
    4. slime 1060606012 6 213.30.246.148 80 213.6.122.178 44314 10 8808 U "ippp0" "-" "-"
    5. slime 1060605985 17 213.6.122.178 137 213.6.121.88 1025 1 257 U "-" "ippp0" "-"
    6. slime 1060606055 6 80.190.230.101 80 213.6.122.178 56133 11 6956 U "ippp0" "-" "-"
    7. slime 1060606056 6 80.190.230.101 80 213.6.122.178 59440 14 9156 U "ippp0" "-" "-"
    8. slime 1060606055 6 80.190.230.101 80 213.6.122.178 34831 20 15275 U "ippp0" "-" "-"
    9. slime 1060606054 6 80.190.230.101 80 213.6.122.178 44795 11 5935 U "ippp0" "-" "-"
    10. slime 1060606055 6 80.190.230.101 80 213.6.122.178 35484 24 17176 U "ippp0" "-" "-"


    und irgendeine zahl davon ist dann der traffic :)
    das ganze kann man schön per script und mit rrdtool auswerten und dann sogar garfiken für jedes protokoll oder über bestimmte zeiträume, ... erzeugen. der phantasie sind keine grenzen gesetzt.

  • Ich habe auch eine DDR (Dial on Demand Routing) Inet Anbindung und verwende MRTG in Kombination mit einem Wraper-Shell-Script, welches den Traffic von /proc/net/dev ausliest.
    Wen Interesse besteht, kann ich das ja mal posten...

  • Quote

    Original von slime


    und irgendeine zahl davon ist dann der traffic :)


    Wenn du jetzt noch wüsstest welche, dann fändest du es auch toll.


    Sorry, musste sein...


    So long


    Olli

  • AnK :
    Ich denke die Ursache deines Problemes ist recht einfach.
    Bei DSL wird das Device nicht gelöscht, das heißt er zählt immer weiter.
    Dieser Zähler ist aber ein normaler Longinteger oder sowas (müßte ich nachlesen was genau). Wenn er nun bei 999999999etc angekommen ist ist die nächste Stelle -99999999etc also ein Pufferüberlauf.
    Ich würde sagen, dass in 3 Monaten DSL-Nutzug mit 2 Usern mehr als genug Traffic zustande kommt um mehrere Überläufe zu sehen.

  • 1770


    das kleine b ist die anzahl der bytes.
    das kann man konfigurieren wie das ding loggt.


    ich war eben nur zu faul das ganze passend rauszusuchen.
    verdammt, das wird man sich doch noch erlauben dürfen.
    edit:
    ich hab nachgezählt, also die 5te stelle von hinten.

  • Quote

    Original von schMA
    Wen Interesse besteht, kann ich das ja mal posten...


    Yo wäre, nicht schlecht wenn du das mal posten könntest,
    bin ja quasi noch auf der Suche bzw. teste gard ein paar Möglichkeiten.


    Quote

    Original von slime
    und irgendeine zahl davon ist dann der traffic :)


    Naja, welche Zahl es jetzt genau ist, ist ja gar net so wichtig. ;D


    Quote

    Original von WarEagle
    Ich würde sagen, dass in 3 Monaten DSL-Nutzug mit 2 Usern mehr als genug Traffic zustande kommt um mehrere Überläufe zu sehen.


    Sind schon ein bisschen mehr als 5, durchschnittlich sind es 15.
    Da bin ich ja schon mal gespannt, wann der Puffer wieder überläuft... X(



    Vorab schon mal vielen Dank an alle die hier ihre Lösungen gepostet haben,
    hätte eigentlich nicht gedacht das soviele Antworten zusammen kommen.

  • @WarEagle
    Das DSL-Device wird doch gelöscht?


    slime
    Sorry, war ja nicht so gemeint, hättest das nicht alles raussuchen müssen. Aber es hat dir sicher auch nicht geschadet. :D


    So long


    Olli

  • Quote

    Original von 1770
    @WarEagle
    Das DSL-Device wird doch gelöscht?


    bist du dir da so sicher? Schau mal im offlinemodus mit ifconfig nach, ich weiß von einem Kumpel, dass er sein traffickontrollscript genau wegen dieses überlaufes anpassen mußte.
    Normal wird nur das routing deaktiviert, nicht aber das device abgeschaltet.

  • @WarEagle


    Also das pppd-device verschwindet, bei mir. Ist ja nicht viel anders als bei z.B. ISDN, halt pppoe. Allerdings, solange es keine interne Karte ist hat man das Device der Netzwerkkarte. Sollte aber auch gegen Überlauf geschützt sein, hab noch nichts dergleichen gehört, wäre ja auch seltsam, DSL hat ja kaum Bandbreite.


    So long


    Olli

  • Quote

    Original von 1770
    @WarEagle
    Ist ja nicht viel anders als bei z.B. ISDN,


    Einspruch, mein ISDN-Device verschwindet nicht. Es kommt immer drauf an was du an Firewallscripten laufen hast. Früher habe ich auch das Device immer abgeschaltet, seit ich IP-Tables nutze bleibt mein Device oben und ich ändere nur das Routing.

  • @WarEagle
    Nunja, dann is wohl beides möglich. Aber wie trennst du die Verbindung? Ich schick dem pppd halt n Signal, und das beendet sich und entfernt das Device.


    What shells


    Olli

  • Quote

    Original von 1770
    @WarEagle
    Nunja, dann is wohl beides möglich. Aber wie trennst du die Verbindung? Ich schick dem pppd halt n Signal, und das beendet sich und entfernt das Device.


    What shells


    Olli


    Ich schicke HiSax ein Signal er trennt die Leitung, aber da das Device noch im Firewalling eingebunden ist wird es nicht gelöscht, man müßte ja sonst nach jedem einwählen die Firewallregeln neu setzen.

  • @WarEagle
    Stimmt. Habs wohl mit Modem verwechselt, da müsste es so sein. Zumindest ists bei mir bei dsl so. Aber mit der Firewall hat ja das Device bzw. dessen Existenz nix zu tun.


    So long


    Olli

  • Quote

    Original von AnK
    Yo wäre, nicht schlecht wenn du das mal posten könntest,
    bin ja quasi noch auf der Suche bzw. teste gard ein paar Möglichkeiten.


    Soll ja kein Problem sein...



    Also das ist das Shell-Wraper-Script (read_system.sh) (habe ein ähnliches noch für meine APC USV..)



    Und so sieht der entsprechende Teil der mrtg config aus

  • Quote

    Original von 1770
    aber mit der Firewall hat ja das Device bzw. dessen Existenz nix zu tun. i


    Oh doch, du mußt das Device haben um iptable-regeln aufzubauen, wenn du das device entfernst dann fallen auch die regeln weg. Daher wird bei ip table-systemn das device in der regel behalten, sonst müßtest du wie schon gesagt bei jedem einwählen die firewall neu initialisieren.