Quarcel 0 Posted 2004-06-08 09:11:52 Share Posted 2004-06-08 09:11:52 Надысь глядел в исходники старгейзера у увидел в cap.cpp(для линукса) такое: capSock = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); и вот соб-но в чем вопрос - а почему бы не сделать ETH_P_IP вместо ETH_P_ALL, ведь потом все равно отсекается все кроме IP трафика(в функции ParsePacket). Так стг не будет отвлекаться на левый трафик. Если вдуматься, то главная проблема здесь такая, что сокеты не обеспечивают гарантии доставки пакетов приложению - и если оно не будет успевать их обрабатывать то некоторые пакеты потеряются, но форвард для этих пакетов все равно будет - то есть если кто-то вздумает флудить машину левыми пакетами то стг может не успевать считать реальный трафик. А так стг можно будет зафлудить только ИП пакетами - который сам стг сможет отследить. + сделать чтоб ИП трафик который стг не считает, резало пакетным фильтром по пакетам в секунду, а флудить трафиком за который надо платить никто не станет Link to post Share on other sites
teapot 0 Posted 2004-06-08 09:19:48 Share Posted 2004-06-08 09:19:48 очень даже интересное предложение но тогда куда пихать пинг и АРП и много всего другого самое главное в ентом деле - это подсчет (правильный и своевременный) а там пускай он хоть че ентот пользователь делает - хоть мегатоннами пинга заливает сервак самое главное своевременно это заметить и наказать такого неродивого пользователя (методы бывают разные)! Link to post Share on other sites
Quarcel 0 Posted 2004-06-08 09:24:47 Author Share Posted 2004-06-08 09:24:47 Пинг(icmp) это тоже IP протокол(icmp+udp+tcp+gre+(ещё парочка)=IP) самое главное своевременно это заметить и наказать такого неродивого пользователя (методы бывают разные)! В том и дело если оставить ETH_P_ALL заметить не получиться - флудить можно будет хоть чем - лишь бы ethernet заголовок был корректен и стг всё поймает. Link to post Share on other sites
teapot 0 Posted 2004-06-08 09:33:18 Share Posted 2004-06-08 09:33:18 ARP ? Link to post Share on other sites
teapot 0 Posted 2004-06-08 09:35:37 Share Posted 2004-06-08 09:35:37 если можно сделаю поправку к идее считать отдельно IP и все остальное Link to post Share on other sites
Quarcel 0 Posted 2004-06-08 18:27:01 Author Share Posted 2004-06-08 18:27:01 не совсем понял - а зачем "все остальное"(кроме IP трафика) считать? Link to post Share on other sites
teapot 0 Posted 2004-06-30 19:45:28 Share Posted 2004-06-30 19:45:28 чтобы юзеру небыло скучно - ведь енто его денежки будут со счета капать Link to post Share on other sites
Guest AlexM Posted 2004-07-04 21:08:09 Share Posted 2004-07-04 21:08:09 Есть идея попроще зачем что-то заменять. Просто имеет смысл сделать развязку обработчика и снифира пакетов, например с помощью бональной потокозащтщенной очереди. А тогда самих процессов обработки можно запустить сколько надо в зависимости от потребности. Правда есть и другая беда что при флуде будет переполнятся очередь, но опятьже при ее наличии и накоплении в ней опред кол-ва записей можно будет произвести экстренную остановку работы, сообщить админу и отключить всех юзверей. А состояние очереди отсортированно записать в лог для дальнейшего анализа, чтоб найти того умника, который флудит систему. Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now