LINUX.ORG.RU
ФорумAdmin

Мониторинг трафика по IP в реалтайме

 , ,


0

1

доброй ночи. Подскажите пожалуйста программу для мониторинга трафика по IP в реалтайме. Вебморды, складирование и хранение годами логов и прочее не нужно. Нужно просто дать команду и видеть с какого IP с какой скоростью в данный момент(1-3 сек) качают.

Имеется сетка, на шлюзе Ubuntu Server 10.04.4+squid+dnsmasq. 2 сетевухи, одна в провайдера вторая в свитч.

Не подошли: iptraf,iftop - очень понравился, умеет почти все кроме главного - не умеет отображать конкретно по ip без учета хоста назначения. nload,vnstat - показывает суммарно вход\выход.

Не обязательно готовое решение, хоть в нужную степь направьте.


iptraf-ng, там механизм фильтров есть. Не ковырял, но почти уверен оно.

erfea ★★★★★ ()
Ответ на: комментарий от Theif

Спасибо за предложение, попробовал, но увы не подошло. Очень напоминает iftop и так же как и он отображает соединения, а не суммарно для ip.

DuD ()
Ответ на: комментарий от srg666

Можно чуть подробнее? Хотя бы простейший пример.

DuD ()
Ответ на: комментарий от DuD

делаете правила(пример для транзитного трафика):

iptables -I FORWARD -s x.x.x.x -j ACCEPT
iptables -I FORWARD -d x.x.x.x -j ACCEPT

получаете счётчики к x.x.x.x и от x.x.x.x, дальше из этих счётчиков можете хоть скриптом в консоль выводить скорость, хоть графики строить, всё что захотите (просто смотреть что-то типа iptables -nvxL)

srg666 ()
Ответ на: комментарий от srg666

При таких правилах:

# Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

# Разрешаем трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT

# Разрешаем доступ из внутренней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

# Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 172.16.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 172.16.2.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE


# Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth0 -j REJECT

# Заворачиваем http на прокси
iptables -t nat -A PREROUTING -i eth1 ! -d 172.16.1.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 172.16.1.1:3128
iptables -t nat -A PREROUTING -i eth1 ! -d 192.168.1.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 172.16.1.1:3128
iptables -t nat -A PREROUTING -i eth1.2 ! -d 172.16.2.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 172.16.1.1:3128



Я вижу вот такое.

Chain INPUT (policy ACCEPT 58098863 packets, 52148905045 bytes) pkts bytes target prot opt in out source destination 23114 1654670 ACCEPT all  — lo * 0.0.0.0/0 0.0.0.0/0

Chain FORWARD (policy ACCEPT 13570321 packets, 7264085103 bytes) pkts bytes target prot opt in out source destination 3037807 507019232 ACCEPT all  — eth1 eth0 0.0.0.0/0 0.0.0.0/0 1683 141409 REJECT all  — eth0 eth0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT 54101330 packets, 53335485432 bytes) pkts bytes target prot opt in out source destination



Я что то сделал не так?

DuD ()
Ответ на: комментарий от DuD

Если вы хотите смотреть скорость(счётчики) по каждом клиентскому IP, то надо добавлять правило на каждый IP(в какую таблицу/цепочку это уж сами смотрите)

srg666 ()

bandwidthd уже упоминали тут?

DALDON ★★★★★ ()

Ещё есть ntop. - Очень может быть то что нужно.

DALDON ★★★★★ ()

iftop -i <internal interface>

чем не устроил?

nbw ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.