Journal IP accoutting et interfaces virtuelles multiples

Posté par  (site web personnel) .
Étiquettes : aucune
0
15
jan.
2008
Cher Nourjal ( à defaut de forum qui refuse d'enregistrer mon message ),


En ce moment, je m'interroge sur comment faire de l'IP accounting ( ou comptage de Mb, Mo, paquet ) circulant sur des interfaces.

quand les interfaces sont dite "physique", rien n'est plus simple snmp et ifconfig fournissent plein d'information.

Maintenant, quand l'interface est virtuelle tel une interface tap sur un zouli host qui fait tourner des machines virtuelles, le probleme se corse.

Utiliser iptable m'a semblé être une solution, cela est une solution, certes mais effectivement contre productive :
- overhead lié aux regles
- ecriture dans un fichier à maintenir
- un script à la CRON qui doit faire des addition

Si l'on regarde ses interfaces tap et le bridge logiciel qui va avec, l'on se rend vite compte que certaines choses clochent.

Même en googlisant, il est étrange de constaté que chez certains le ifconfig nous montre bien du traffic sur l'interface tap, chez d'autre cela montre un calme plat ... pourtant dans chacun des cas, les interfaces recoivent du traffic.

J'en arrive, mon cher Nourjal ( à defaut de forum ), à me poser ces questions fatidiques :
- comment font ils pour avoir une interface qui fonctionne correctement ?
- Pourquoi un hote serait il incapable de connaitre le traffic réseau de ses machines virtuelle en passant par des outils "standard"/"commun" ?
  • # Chez moi ca marche

    Posté par  . Évalué à 2.

    Par exemple un tunnel openvpn:

    tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
    UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
    RX packets:372428 errors:0 dropped:0 overruns:0 frame:0
    TX packets:382994 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:100
    RX bytes:227228531 (216.7 MiB) TX bytes:65166803 (62.1 MiB)

    Ou bien une interface IPv6 via un tunnel 6-to-4

    sit1 Link encap:IPv6-in-IPv4
    inet6 addr: 2001:6f8:900:9ed::2/64 Scope:Global
    inet6 addr: fe80::4e2f:b10b/128 Scope:Link
    UP POINTOPOINT RUNNING NOARP MTU:1280 Metric:1
    RX packets:16118 errors:0 dropped:0 overruns:0 frame:0
    TX packets:16511 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:2302373 (2.1 MiB) TX bytes:1974039 (1.8 MiB)

    J'utilise CentOS si ca peu aider

    cat /proc/net/dev renvoie bien ces valeurs aussi. Regarde directement là pour voir.

    Un autre exemple sur une Ubuntu (xen dom0)

    tpt@touell:~$ cat /proc/net/dev
    Inter-| Receive | Transmit
    face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
    lo: 71880 334 0 0 0 0 0 0 71880 334 0 0 0 0 0 0
    vif0.0:766476005 4811993 0 0 0 0 0 0 807208340 5621081 0 0 0 0 0 0
    eth0:807208340 5621081 0 0 0 0 0 0 766476005 4811993 0 0 0 0 0 0
    vif0.1: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    veth1: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    vif0.2: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    veth2: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    vif0.3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    veth3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    peth0:66806342416 150923219 910 9308 678 0 0 0 173727954417 177915189 0 0 17 0 0 0
    xenbr0:57732944 1253243 0 0 0 0 0 1253243 0 0 0 0 0 0 0 0
    vif3.0:59933016265 42843365 0 0 0 0 0 0 30442116382 58540846 0 15035 0 0 0 0
    vif13.0:34675641712 15342745 0 0 0 0 0 0 2519740764 21774070 0 1486 0 0 0 0
    • [^] # Re: Chez moi ca marche

      Posté par  (site web personnel) . Évalué à 1.

      cat /proc/net/dev

      Inter-| Receive ____________________________________| Transmit
      face |bytes packets errs drop fifo frame compressed multicast_|bytes packets errs drop fifo colls carrier compressed
      eth5:317921704 1844251 0 0 0 0 0 0 53175589 332626 0 0 0 0 0 0
      eth4: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      br0:246081781 1468598 0 0 0 0 0 1091954 53132797 332620 0 0 0 0 0 0
      tap3: 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0
      tap2: 0 0 0 0 0 0 0 0 0 0 0 1009936 0 0 0 0


      l'on peut facilement voir que br0 communique bien ... mais que tout est droppé au niveau des tap Oo ...

      j'utilise tunctl pour creer mes interfaces tap

      donc, je me dis qu'il y a un probleme, surtout quand je googlise ce point, je tombe soit sur des gens qui ont du traffic sur leurs "tap" soit sur des gens qui ont des jolis "0"

      je ping sans soucis mes interfaces tap.
      le ping -I depuis une des interfaces produit des erreurs :(

      pour ce qui est du script de conf

      iface chaterton inet static
      pre-up /usr/sbin/tunctl -u vface -t $IFACE
      address iface$IFACE
      network X
      broadcast Y
      netmask Z
      up /usr/sbin/brctl addif br0 $IFACE
      down /usr/sbin/brctl delif br0 $IFACE
      post-down /usr/sbin/tunctl -d $IFACE


      tout conseil est le bienvenu ... la distrib de test est une ubuntu.

      ( normalement attribué une IP ne devrait pas poser de probleme )

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.