Autor | Zpráva | ||
---|---|---|---|
bach Profil |
Dobrý den, mám tu takový pro mě oříšek.
Potřebuji nějak měřit traffic v (asi v kilobajtech) na jednotlivé IP adresy a zapisovat je do databáze. Asi nejlepší by to bylo pomocí iptables , jelikož na routeru mi nic jiného než linux a php neběží a ukládalo by se to do vzdálené databáze. Potřeboval bych nějak v PHP udělat dotaz přes iptables na jednotlivé IP na in a out a kolik dat proteklo (download a upload), jelo by to pak v cronu např. co 5 minut. Prosím o jakoukoliv radu nebo script, jak toto udělat. Děkuji. Moderátor jenikkozak: Titulek „Zjištění trafficu roz eth0 nebo br0 a zápis do databáze?????“ obsahoval 5 zbytečných otazníků. Příště zkus prosím vymyslet lepší.
|
||
Davex Profil |
#2 · Zasláno: 6. 12. 2013, 19:12:44
Přenesená data se dají přečíst z výstupu příkazu
ip -s link show eth0 , který se dá spouštět pomocí exec() .
|
||
DJ Miky Profil |
#3 · Zasláno: 6. 12. 2013, 20:19:36
Davex:
Co se týče celkového přenosu, na Linuxu bude jednodušší číst ze souboru /sys/class/net/eth0/statistics/rx_bytes (přijaté bajty), případně tx_bytes (odeslané bajty).
Nicméně pokud tomu dobře rozumím, je potřeba měřit přenos na jednotlivé cílové IP jednotlivě. K tomu se dají využít pravidla v iptables, označuje se to jako „IP accounting“. Jeden z návodů je tady, ale dají se najít i jiné vyhledávacím dotazem jako „Linux iptables IP accounting“. |
||
Davex Profil |
#4 · Zasláno: 6. 12. 2013, 22:09:52
DJ Miky:
„Co se týče celkového přenosu, na Linuxu bude jednodušší číst ze souboru“ V Linuxu ano, ale vycházel jsem z toho, že to může být na nějakém routeru, na kterém nemusí být plnohodnotný Linux a /sys nemusí být připojený.
|
||
bach Profil |
Ano je to na routeru a chtěl bych to pomocí php zapisovat do vzdálené databáze pomocí cron plánování, cca 5min. Ano jedná se mi o konkrétní IP adresy IN-OUT. Ale nevím jak to uchopit, na routeru mi běží nějaký okleštěný linux, ale je na něm PHP s podporou mysql, iptables. Kdyby to někdo uměl v php přes např.exec nacpat do databáze na jednotlivé ip bylo by to super.
|
||
Davex Profil |
#6 · Zasláno: 6. 12. 2013, 22:47:44
Pokud by se měl měřit traffic rozdělený podle IP adres, tak by se ve firewallu mělo vytvořit samostatné pravidlo pro každou adresu. Při vynechání nepodstatných částí se to dá poskládat z návodu Traffic accounting with iptables.
|
||
bach Profil |
#7 · Zasláno: 7. 12. 2013, 21:48:29
A víš jak na to? Já netuším, jak to zaimplantovat do PHP do proměnné, abych to uložil do mysql.
|
||
Davex Profil |
#8 · Zasláno: 7. 12. 2013, 21:51:45
Ten odkázaný návod nepomohl nebo jsi na něj nekoukal?
|
||
bach Profil |
#9 · Zasláno: 8. 12. 2013, 19:49:29
No koukal, ale ty první věci nejsou volané jako php , vypadá to na script. Spíše jsem měl na mysli pouze php, ale nevím, zda to lze.
|
||
Časová prodleva: 10 let
|
0