LINUX.ORG.RU
ФорумAdmin

Как просмотреть все соединения по IP и портам


0

0

Сразу извеняюсь за простой для кого то вопрос,
но попрошу отвечать конкретной строкой примера

Имеется NAT-сервер
через который проходит достаточное количество соединений
обычно для того что бы узнать кто из пользователей
и с какой скоростью с какими портам качает использую
команду
#iftop -B -i eth0
или
#iftop -B -i eth0 -f "host xx.xx.xx.xx"

Вывод достаточно большой....

Но вот команда
netstat -anA inet
как мне кажется просто не способна
вывести на экран все соединения с NAT-сервером.



Буду прменого благодарен за помощь:)





Ответ на: комментарий от birdie

У меня эта команда показывает только те соединения
которые открывает программа работающая на НАТ-сервере


Например если я скачиваю с компа в локалки одновременно много
файлов с сайта www.kernel.org, то вывод команды на НАТ-сервере
(192.168.10.5) будет
netstat --inet
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.10.5:1227 192.168.10.243:ssh ESTABLISHED
udp 0 0 gateway-dzti:1265 gateway-dzti:domain ESTABLISHED


так и есть не отображается соединения НАТ-сервера
которые используются для передачи данных в лдокалку!

traceroute www.kernel.org c с которого я скачиваю файлики через НАТ

traceroute to www.kernel.org (204.152.191.5), 30 hops max, 40 byte packets
1 192.168.10.5 (192.168.10.5) 0.256 ms 0.283 ms 0.235 ms
2 xx.xx.xx.xx (xx.xx.xx.xx.zz) 0.421 ms 0.399 ms 0.300 ms
3 159.148.33.57 (159.148.33.57) 55.567 ms 55.263 ms 51.773 ms
4 titan-v51-gw.latnet.lv (159.148.42.138) 48.211 ms 44.251 ms 52.598 ms
5 zibens-gw.latnet.lv (159.148.16.1) 64.632 ms 60.557 ms 56.638 ........

andyS1976
() автор топика
Ответ на: комментарий от sdio


Спасибо всем кто помогал, на подход с netstat как мне кажется в корне
не правильный для определения соединений НАТ-сервера, лучше анализировать файл /proc/net/ip_conntrack который создается и
ипользуется во время NAT

Как часто бывает, искал patchset-ы к старому ядру 2.4 и неожиданно
нашел решение своей проблемки, по адресу

http://snaj.ath.cx/conn-close/conn-close.html


Вот цитата из документа:


conn-close gives us possibility to get rid of entries in ip_conntrack about ESTABLISHED TCP connections that goes through our server.

It uses hping2 to send spoofed RST packets which will fool conntrack and cause specified connections to be considered by conntrack as closed (now these connections will be in ip_conntrack in CLOSE state), even though RST packets will be more likely discarded by destination host.

Information about connections is read of course from /proc/net/ip_conntrack.

Idea was taken from script seen somewhere on the internet.


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