Hodnoty ip --stats se u Wi-Fi samy resetují

Hamparle

  • ****
  • 365
  • junior developer ucho
    • Zobrazit profil
    • E-mail
Hodnoty ip --stats se u Wi-Fi samy resetují
« kdy: 05. 12. 2020, 15:05:05 »
Narazil jsem na trochu nepříjemnou věc: proč  hodnoty u ip --stats -h addr jsou nižší (nebo se resetují, ale nevím kdy a proč)? Očekával bych tam kolem ~50GB/2GB(pro oba směry). (souhlasí s příslušnými iptables -nvL u FORWARD u ACCCEPT pro dané směry)

U eth0 se neresetují, je tam 50GB/2GB, ani když vytáhnu kabel, hodnoty zustanou...

Samozřejmě v iptables v-nvL vidím "vše". K tomu  mám otázku bokem: Chtěl bych nějak mí statistiku přenosů, toků. Nějak základně se k tomu dá iptables použít (že si dám poslední pravidlo ACCEPT a nějak tam udělám roztřídění podle cílové/zdrojové adresy), ale je to fungující jen pro opravdu malý počet sledovaných parametrů (a třeba jen pro in/out, pro počítače uvnitř, a neumí to dělit na časové období a  rozlišovat podle protější adresy by znamenalo kartézský součina pravidel --src --dst, takže  nemyslitelné). Co by se hodilo pro nějaké lepší monitorování (prometheus/grafana nabo cacti/rrdtool/mrtg)?

Všiml jsem si jedné věci: toto vrací ip link/addr:
Kód: [Vybrat]
: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ... připojeno
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 ... když je killnutý wpa_supplicant-nepřipojeno
což bych očekával, že tam bude rozdíl. Ale hodnoty před a po odpojení jsou totožné. Zde se reset neděje (přesněji řečeno: odpojení reset nevyvolává)


rese
Původně jsem se chtěl zeptat na podobnou věc ještě u příkazu iw wlanx link, ale ještě si to rozležím v hlavě:

fun fact?: asi jsem vyhrál sportku  zrovna:
Kód: [Vybrat]
iw wlan0 link
        RX: 4 294 610 786 bytes (33483598 packets) ... (2^32 je
4 294 967 296)
        TX: 2515682125 bytes (10368959 packets)

... chvíle poté:

        RX: 885175 bytes (33485308 packets) ... mod 2^32 ?
        TX: 2 515 802 652 bytes (10369946 packets)

(co je jistě, že po resetu wpa_supplicant se hodnoty iw wifina link resetují,  ale u ip -s -h a ). Do třetice, ty hodnoty nesouhlasí, vypadá to, že ip -s ukazuje i větší hodnoty než 4 miliardy


Takže když to shrnu: proč se resetují hodnoty u ip -s -h addr? (očividně ano, když tam není 50GB) Neresetují se, když dojde ke ztrátě zpojení/odpojení (to se ale se resetují hodnoty iw wlan0 link). + Do toho bonus s tou sportkou u iw wlan0>4GB (nedá se vyloučit, že by i tento problém postihoval ip -s, prověřím)

Nějaká jiná událost než odpojení wpa_supplicant (rfkill či "odpojení karty na nižší úrovni")?


Jaký by mohl být důvod resetu hodnot u ip -s -h link ?
« Poslední změna: 06. 12. 2020, 19:14:08 od Petr Krčmář »


Hamparle

  • ****
  • 365
  • junior developer ucho
    • Zobrazit profil
    • E-mail
No to mě p....


Kód: [Vybrat]
ip -s -h addr #...už umí -sh?
    RX: bytes  packets  errors  dropped overrun mcast
    14.8M      34.5M    0       0       0       0 # .....když se to vydělí, tak některé pakety musely mít délku nula bajtů  a nebo jsou pakety půlbajtové :D
    TX: bytes  packets  errors  dropped carrier collsns
    3.16G      14.5M    0       0       0       0


iw wlan0 link
RX: 2 040 950 385 bytes (1 437 389 packets) #.... tady to vychází zrovna teď na 1kB pakety takže nic senzačního
TX: 160 335 288 bytes (367 817 packets)


Tak tím už je vysvětleno, proč to nesouhlasí nikdy: díky občasnému odpojení se se resetuje iw čítač. A přetečení postihuje iw i ip. Akorát záhada, proč ne eth0.


Takže až vám budou vycházet pakety o velikosti třetiny bajtu, tak klídek.
« Poslední změna: 05. 12. 2020, 17:16:52 od Hamparle »