Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Идея] Пополнение CustomLocation от пользователей #1047

Open
pavel-pimenov opened this issue Aug 24, 2015 · 17 comments

Comments

@pavel-pimenov
Copy link
Owner

From Pavel.Pimenov@gmail.com on April 25, 2013 05:04:19

  1. При старте флая и определени внешнего IP ищем его в CustomLocation
  2. если не нашли - выводим HTML-диалог в котором предлагаем пользователю
    рассказать комбиками из какого он города и какой сети.
    после рассказа данные улетают к нам на сервер для анализа и пополнения CustomLocation
  3. Спрашивать предлагаю только один раз в месяц или вообще всего один раз.

Замечения/предложения?

Original issue: http://code.google.com/p/flylinkdc/issues/detail?id=1010

@pavel-pimenov
Copy link
Owner Author

From a.rain...@gmail.com on April 25, 2013 01:15:49

Только не к нам на сервер, а на сервер кустомлока :) Предлагать стоит один раз, ну и можно кнопку в менюшке сделать. Вообще процесс сложный, ибо для добавления в базу нужно лого, и точные знания диапазонов прова.

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on April 25, 2013 01:50:50

Юзер диапазоны провайдера в 99.9% ведь не знает.
это будет просто сигналчик о том, что в custom есть дырка.

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

@pavel-pimenov
Copy link
Owner Author

From tret2...@gmail.com on April 25, 2013 01:55:51

В общем то идея поддерживать в актуальном состоянии CustomLocation далеко не левая, а вот реализация пока подкачала.

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on April 25, 2013 01:57:13

О какой реализации речь?

@pavel-pimenov
Copy link
Owner Author

From tret2...@gmail.com on April 25, 2013 01:58:54

О твоей в первом посте, ты её в 3-ем как раз раскритиковал.

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on April 25, 2013 02:02:48

Этой реализации пока еще нет.
как она может подкачать? ;)

@pavel-pimenov
Copy link
Owner Author

From tret2...@gmail.com on April 25, 2013 02:09:29

Не придирайся к словам ))) имел в виду что идея реализации пока не очень вот как вариант предлагаю чтоб флай тянул какой нибудь урлик где бы в запросе был IP, чтоб он нам и передался, а через nic.ru/whois/ мы всегда можем узнать чей IP, что за пров, город и т.п.
По опыту могу сказать сразу что данные у nic.ru могут не совпадать с реальными. Уже сталкивался с тем, что пров ликвидирован/куплен, его диапазон отдан другим или новому владельцу ещё пол года назад, а диапазон до сих пор числился за предыдущим владельцем.

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on April 25, 2013 02:36:15

У нас уже давно есть скрипт getip.php
его флай дергает для определения своего внешнего IP

@pavel-pimenov
Copy link
Owner Author

From tret2...@gmail.com on April 25, 2013 02:52:38

Cкрипт есть, можно и его взять за основу и немного переписать чтоб он нам сохранял IP.

@pavel-pimenov
Copy link
Owner Author

From a.rain...@gmail.com on April 25, 2013 06:27:51

Агу, на стороне сервера пробивать IP по геобазе провов и при отсуствии IP там генерить тикет для кустомлока.

@pavel-pimenov
Copy link
Owner Author

From lazybad...@gmail.com on April 25, 2013 23:09:40

В общем идею поддерживаю, потому что "10 старушек - рубль", а сидеть самому приходится на хабах, которые детектят и показывают IP и отфильтровывать ненайденное-искать.

Теперь соображения

  1. Запрашивать юзера про его IP c показом всего известного в базе - это хорошо. Но есть еще и граничный случай - оператора, города (населенного пункта), страны - вообще нет в базе CL
  2. Хотелось бы (мне, для усиления площади поражения) собирать не только данные по его IP, но - все неклассифицированные IP по хабам, на которых он есть (естественно, только для тех хабов, которые отдают IPы списка клиентов простому юзеру)
  3. Никакой особо мощной автоматизированной обработки для прямого использования не надо: есть наглядный пример http://ipdip.org , где формально диапазонов расписано на порядок больше, чем у меня (база - 60 метров в утоптанном виде), но за счет прямого парсинга и использования данных RIPE-Whois ни о каком вменяемом агрегировании диапазонов и нормальном именовании операторов|городов разговора там нет в принципе. Чтобы никто не подумал, что я "топлю конкурента" - немного IPшек попалось под руку

Country=GB
Name=OPAL-DSL |
City=Opal Telecommunications Plc Northbank Industrial Estate Irlam Manchester M44 5BL United Kingdom Opal Telecommunications Plc Northbank Industrial Estate Irlam Manchester M44 5BL United Kingdom
Region=][UTC+00][ http://ipdip.org/ Image=logo/GB/1318060032.bmp
Mode=n/a
78.144.0.0-78.151.255.255

Country=PL
Name=PL-EASTANDWEST-20070606 |
City=Познань
Region=][UTC+1][ http://ipdip.org/ Image=logo/PL/1318590336.bmp
Mode=n/a
78.152.23.128-78.152.23.255

Сравните с медленной и да, ручной работой

Country=GB
Name=Opal Telecom
Site= http://www.opal.co.uk Image=Opal.bmp

City=United Kingdom
78.144.0.0-78.151.255.255

а (отсутствующий пока у меня) 78.152.0.0/19 будет, как и прочие диапазоны оператора, с нормальным и общим Name=EastWest

  1. Некую предобработку дырок на автопилоте, однако, реквестую иметь (чтобы не делать потом руками и не иметь кучу дупов): для IP, пропущенного в customloc, можно дернуть XML-сервис IPGEOBASE (см. http://blog.ipgeobase.ru/?p=76 ) и отпарсить ответ на страну, город, диапазон сетки. Но тут есть одна неудобная проблема: ipgeobase агрегирует диапазоны по локации, а не оператору (Европа-Америка вообще агрегируется по стране). Поэтому хорошо бы для ограничения сетки только одним оператором дополнительно прогонять этот IP и через RIPE-Whois, урезая осетра, но остальные данные можно оставлять, несмотря на избыточность. Пример: для 92.2.3.4 ipgeobase отдает сетку 92.0.0.0-92.31.255.255, whois - 92.0.0.0-92.15.255.255 (про удобный интерфейс к whois - у них есть и XML и JSON)
  2. Собственно - все. Собранное досье очень хочется после этого получить в качестве отдельного тикета на Ассембле (API есть http://api-docs.assembla.com/ , и на чтение и на запись тикетов). Чтобы не плодить дупы тикетов для разных IP с одного диапазона оператора, есть мнение, что диапазон (который получили от Whois раньше) можно в CIDR-нотации (или сеть/маска или вообще диапазонно) писать как Title тикета и перед внесением нового проверять список открытых тикетов на попадание IP в уже заявленные диапазоны

Ну а поступления - буду оформлять, куда я денусь с подводной лодки

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on April 26, 2013 00:30:34

Принято. это нужно обдумать.
я пока точно знаю как реализовать массив IP не найденных в custom с клиента на сервер. + там дернуть для них http://blog.ipgeobase.ru/?p=76 про тикеты на Assembla в автомате не понял
кто их будет создавать

  • клиент который насобирал дырки
  • промежуточный сервер с обработанным досье?

как искать дубликатные тикеты тоже пока не смотрел.

@pavel-pimenov
Copy link
Owner Author

From lazybad...@gmail.com on April 26, 2013 06:37:16

я пока точно знаю как реализовать массив IP не найденных в custom с клиента на сервер.

А может не надо централизовывать и напрягать твой сервер кучей запросов? Пусть все запросы и отсылку данных оконечную делает Флай клиентский? Ему это будет совсем ненапряжно

про тикеты на Assembla в автомате не понял
кто их будет создавать

Ну, тот же самый сервис (на одельном хосте или во Флае), который и обрабатывает дырки в customloc. REST-запросы (как мне кажется) - вещь несложная. API Key и Secret можно привязать к любому девелоперскому акку в пределах space (человечьему и создать отдельный, разницы не вижу)

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on May 01, 2013 23:23:54

This issue was closed by revision r13779 .

Status: Fixed

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on May 02, 2013 00:04:56

This issue was closed by revision r13780 .

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on May 02, 2013 09:46:17

This issue was closed by revision r13792 .

@pavel-pimenov
Copy link
Owner Author

From Pavel.Pimenov@gmail.com on May 06, 2013 02:07:28

Требуется доработка

  1. Если у клиента не включено авто-обновление не собирать данную информацию
    т.к. это приведет к передаче ложных IP
  2. Возможно эту функцию включить только для беток

Status: Started

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant