Znajdź ruch sieciowy według adresu IP

20

Mamy jeden centralny serwer, który działa jako brama internetowa. Serwer ten jest podłączony do Internetu i za pomocą iptables przekazujemy ruch i udostępniamy połączenie internetowe wszystkim komputerom w sieci. To działa dobrze.

Czasami jednak Internet robi się naprawdę wolny. Najprawdopodobniej jeden z użytkowników pobiera filmy lub inne duże pliki. Chcę wskazać winowajcę. Zastanawiam się nad zainstalowaniem narzędzia, które może monitorować ruch sieciowy przechodzący przez serwer według adresu IP. Najlepiej w czasie rzeczywistym, jak również w postaci skumulowanej sumy (ponownie według adresu IP). Jakieś narzędzie, które jest do tego zalecane? Najlepiej coś w repozytoriach Ubuntu.

proszę usuń mnie
źródło

Odpowiedzi:

17

Będę musiała być tania i skopiować moją odpowiedź z tego pytania .

ntop jest prawdopodobnie najlepszym rozwiązaniem do tego celu. Został zaprojektowany, aby działać długoterminowo i rejestrować dokładnie to, czego szukasz.
Może pokazywać, którzy klienci odbierają / wysyłają największy ruch, gdzie odbierają / wysyłają, jakie protokoły i porty są używane itp.
Następnie używa internetowego interfejsu GUI do nawigacji i wyświetlania tych informacji.

ntop jest dość znanym narzędziem, więc byłbym bardzo zaskoczony, gdyby nie było go w repozytorium pakietów Ubuntu.

ntop

Patrick
źródło
8

ntop może dać ci dokładnie to, o co prosisz. Gromadzi dane o całym ruchu przepływającym przez twoją sieć (i może zbierać dane z innych sieci, jeśli mają skonfigurowane urządzenie do wysyłania danych do systemu).

Pokaże Ci każdy host w sieci, z informacją, ile przepustowości wykorzystali. Pozwoli ci to dokładnie zbadać każdy host i zobaczyć, jaki rodzaj ruchu generują i do kogo. Pozwoli ci to zobaczyć aktualnie ustanowione połączenia TCP. Możesz się zgubić przez wiele dni, przeglądając dane, które ci daje.

Jednak program może być świrem pamięci, w zależności od konfiguracji opcji.

Shawn J. Goff
źródło
3
Bah, moja odpowiedź ma ładne zdjęcia! Wygląda na to, że oboje odpowiedzieliśmy dokładnie w tym samym czasie. No cóż, poprzyj głos (zbyt prawdziwy) komentarz do pamięci :-)
Patrick,
1
Doskonała odpowiedź, również ważna, ale mogę zaznaczyć tylko jedną. Więc zdecydowałem się na znacznik czasu. Poza tym Patrick miał zdjęcie ;-)
usuń mnie
3

Możesz sprawdzić istniejące liczniki z iptables, aby zobaczyć, czy coś wygląda poza linią,

Możliwe jest również dodanie reguł rozliczeniowych do iptables, które są używane tylko do generowania liczby odwiedzin. Narzędzie takie jak Shorewall ułatwia to i posiada szczegółową dokumentację dotyczącą reguł rachunkowości

Badania wykazały, że duże bufory w routerach mogą powodować problemy z wydajnością. Możesz spróbować kształtować ruch do nieco mniejszej niż pojemność sieci. Shorewall oferuje kilka podejść do kształtowania ruchu. Można to również wykorzystać do ustalenia priorytetów określonych rodzajów ruchu.

Jeśli zidentyfikujesz użytkownika, którego wykorzystanie przepustowości jest nadmierne, masz kilka opcji:

  • Omów z nimi problem i przypomnij mu o swojej polityce użytkowania;
  • Zablokuj dostęp do usługi i / lub strony korzystającej z przepustowości;
  • Ogranicz ruch do usługi i / lub strony, która korzysta z przepustowości; i / lub
  • Ogranicz ruch dla danego użytkownika.
BillThor
źródło
3

Aby zobaczyć wykorzystanie w czasie rzeczywistym według adresu IP (zamiast adresu IP i portu):

sudo apt install tcptrack
sudo tcptrack -i eth0

Aby zobaczyć wykorzystanie adresu MAC w czasie rzeczywistym, dobrym narzędziem opartym na ncurses jest iptraf-ng:

sudo apt install iptraf-ng
sudo iptraf-ng

(A następnie wybierz „Monitor stacji LAN → eth0”.)

Moim ulubionym jest, aby zobaczyć dzienną łączną ilość danych według adresu IP ipfm. Zainstaluj za pomocą:

sudo apt install ipfm

Następnie skonfiguruj /etc/ipfm.confzgodnie z man ipfm.confi zacznij od sudo ipfm.

Tanius
źródło