Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Как реализовать бан по подсети? (https://forum.antichat.xyz/showthread.php?t=25324)

Дикс 13.10.2006 20:07

Как реализовать бан по подсети?
 
Можете в общих чертах рассказать как организуется бан по подсети? Это бан айпи адресов в каких-то диапазонах?
И если да, то как лучше такие диапазоны сохранять в базу?
очень помог бы какой-нить тутор на эту тему :)

Trinux 13.10.2006 20:10

2 способа есть.
Конвертить IP в int число и там далее все просто вообще =))) если хоть чуть чуть математику в школе учил.
Или парсить ip на точках, получаем 4 tinyint числа (mysql формат) и их уже пишем в БД в 4 различные поля

EXSlim 13.10.2006 20:59

кодил по-быстрому =) возможны ошибки

PHP код:

// Диапазон(заносится в базу)
$start=ip2long("10.100.100.1");   
$stop=ip2long("10.100.100.100"); 

$curr=ip2long($REMOTE_ADDR);  // или более безопасная ф-ция определения IP  

$sql "SELECT start,stop FROM `ban` WHERE $curr>=start AND $curr<=stop";
//start и stop предварительные данные типа int(12) 

$ans=mysql_num_rows(mysql_query($sql));  

if (
$ans!=0) die("banned"); 

Примитивно, но основа есть...

Дикс 14.10.2006 01:06

спасибо, ваши идеи понял. но мне непонятна сама суть вопроса: к примеру какой-нить нуб флудит у меня в комментах постоянно и у него айпи динамический. Как я узнаю его диапазон?
эти пределы явно не от балды берут, когда, к примеру, меня банят по подсети и я даже с диалапа с его динамич. айпи не могу попасть на сайт.

A110ut 14.10.2006 01:14

Цитата:

Как я узнаю его диапазон?
хм, ну например так ххх.ххх.*.* [:хотя ето и слишком жестоко:]

Ambient_man 15.10.2006 15:55

Цитата:

Сообщение от Дикс
спасибо, ваши идеи понял. но мне непонятна сама суть вопроса: к примеру какой-нить нуб флудит у меня в комментах постоянно и у него айпи динамический. Как я узнаю его диапазон?
эти пределы явно не от балды берут, когда, к примеру, меня банят по подсети и я даже с диалапа с его динамич. айпи не могу попасть на сайт.

Эмс ... где то слышал про эту систему банов . Но помойму они не банят по ip.... они банят по id компьютера....

Юзай поиск....

Trinux 15.10.2006 23:28

Цитата:

Сообщение от Ambient_man
Эмс ... где то слышал про эту систему банов . Но помойму они не банят по ip.... они банят по id компьютера....

Юзай поиск....

эх.... получить бы id компьютера....

Ambient_man 16.10.2006 00:07

Цитата:

Сообщение от Trinux
эх.... получить бы id компьютера....

Ну можно же ещё и по нику забанить, по инфе профиля, по ипу ххх.ххх.ххх.*, а можно и по всему сразу ....

steamer 16.10.2006 00:12

Цитата:

эх.... получить бы id компьютера....
Интересный вопрос. А давайте разберем, по какой инфе можно банить и как создается этот ID, чтоб это было эффективно. Вот какие мысли уже есть:
1. IP - эффективно, но есть лекарство - прокси, соксы и т.д., хотя рядовой флудер может и не догадаться. Недостаток: а если это IP прокси, то автоматически отсекаются и нормальные пользователи этой подсети.
2. USER_AGENT - тоже можно получить в ПХП, но тоже может захватить и левых людей.

Не знаю, что можно передать с JavaScript и вообще можно серваку передать локальную информацию и какую?

steamer 16.10.2006 00:14

Пока не поздно, созрела схема. К примеру при входе куда-то яваскрипт собирает инфу о тебе, потом вставляет в скрытое поле и при входе отправляет все это. Такое возможно реализовать???


Время: 13:17