IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2023/03/21
~acetone
Most2
Nikat
Spirit90
segfault
weko_
copypaste ok i have a mystery i'm trying to solve and jeff has been no help
copypaste i am almost certain, one of you stopped me at lp2023 and gave me an i2p sticker. you don't have to /msg me on your normal nick on here
copypaste but i want to talk more about it
copypaste hmm. maybe villain. jesus was a communist, indeed.
copypaste but then again R4SAS is such a strong candidate. lol. maybe i should figure out who is russian, because this person was not. i just can't stop thinking abuot it it was so bizarre.
copypaste could be BakaOnahole. funny name, fits the profile of someone who would know me.バカ.ニャ 
copypaste if i go offline email copypaste@kittens.ph
copypaste i'm not trying to dox anyone. idc your real name or shit like that. this is literally craigslist lost connections type shit.
copypaste may as well ping orignal and Xeha too. complete the set.
copypaste is anontor even a real thing or a relay
copypaste real person**
copypaste HMMMMMM
copypaste reap me
Vort выкладываю на всякий случай данные по потреблению памяти во время вчерашнего всплеска количества туннелей. особых выводов у меня нет
Vort пик потребления RAM был [2023-03-20 20:02:30]
fidoid У меня по графикам количество транзитных туннелей упирается в лимит уже пять дней в районе полуночи по MSK. На нескольких роутерах.
fidoid Здравствуйте.
Vort какие-то ночные колебания на графиках я тоже вижу. правда, я вижу начало аномалии чётко в 00:00 UTC
Vort наверное в "моём" случае это запуск сканирования сети каким-то сервисом статистики
Vort (я правда, смотрю сейчас только на графики RAM. ну и как побочный эффект на графики количества RI (IdentityEx))
fidoid У меня не ровно в полночь.
Vort понятно. значит, это разные явления
Vort пик в 23 MSK - это тот же пик, что и на моём графике в 20 UTC
Vort так что дополнительная информация получается в том, что такое происходит каждый день
tetrimer У меня на одном из серверов виден пик роутеров в районе 03:00UTC
Vort можно будет сегодня последить
Vort у меня, наоборот, количество роутеров просело
Vort обычно около 9-10к, во время атаки было 11-12к, а сейчас всего 8к
tetrimer Раньше - были "горбы" каждый день на графиках и кто-то мне сказал, что "это нормально".
tetrimer Последние три недели монотонно растет число роутеров.
tetrimer Version: 2.47.0
tetrimer Routers: 9089 Floodfills: 888 LeaseSets: 123
tetrimer Client Tunnels: 84 Transit Tunnels: 3574
Vort я монотонный рост видел только после длительного оффлайна узла
Vort до "цели" в примерно 10к
Vort Routers: 7765 Floodfills: 1049 LeaseSets: 94
Vort Client Tunnels: 41 Transit Tunnels: 4462
polistern За месяц роутеров стало незначительно больше, где-то меньше. +/-1000 по моим узлам. За последнюю неделю начал скакать TCSR с 15% до 35%. Падения коррелируют с ростом транзита. В пиках транзит растёт в 3-4 раза (с 2к до 8к, с 6к до 20к).
Vort есть ли данные по трафику? интересно, связаны ли сейчас пики количества с пиками трафика
Vort моё значение TCSR, кстати, сейчас 43%
Vort это при аптайме 1 день 12 часов
fidoid У меня корелляции по трафику не наблюдается. Только TCSR просаживается, что логично.
polistern Трафик не менялся в пики
polistern Да, кстати, началась эта новая пляска 03.17 в 21:30 UTC. Следующие: 03.18 в 16:30 UTC, 03.19 в 20:40 UTC, 03.20 в 19:40 UTC. Как-то нерегулярно.
polistern Была ещё 16-го просадка в 16:20 UTC, но только на двух узлах.
Vort экономит ресусры атакующий небось, вот и не гонит теперь трафик
polistern Хотя скачок транзита в два раза 16-го был на всех узлах.
polistern Наверное 16-го был пробный запуск, а дальше уже более уверенно пошли. Посмотрим как сегодня будет. Часов через 6-10 должны начать.
tetrimer Пора обновляться на текущую версию?
Vort смотря какая сейчас установлена
Vort если 2.47.0, то этого я думаю достаточно
Vort если старее, то лучше обновиться. хотя и не обязательно
Vort основные изменения для защиты от атак были сделаны раньше. хотя всё же в 2.47.0 тоже есть важные. так что лучше всё же 2.47.0 ставить. ну и самый последний коммит тоже нормально работает
tetrimer Собрал с последним (f41563a) коммитом... Сейчас посмотрим - "какой он Сухов" (с).
polistern orignal, да, на тестовом роутере запустила тоннель с keepalive до своего сайта и пинг в bob. Доходили только пинги от тоннеля.
orignal ну так смотри что просиходит
orignal пинги уходят?
orignal у тебя в логе Pong есть?
polistern Да, сообщение есть в логе, что пинг ушёл. На сайте пингов нет, ну и как следствие понгов тоже.
orignal auto status = localDestination->WaitPong(BOB_PING_DEFAULT_TIMEOUT);
orignal так нельзя
orignal а на сайте что в лог приходит по части стримов?
polistern Что конкретно смотреть? Я так хорошо i2pd ещё не поняла.
orignal в логе на серверной стороне сообщения Streaming
orignal в это самое время
polistern Сейчас грепну
orignal но я думаю проблема у тебя с WaitPong
orignal потому что у тебя боб крутится в то же треде что и дестнейшин
orignal и блокируя тред у тебя там вообще все останавливаемся
orignal тебе надо ждать понг асинхроннно
orignal передавая коллбэк
orignal то что я вызывают синхронные операции из AddressBook так там гарантированно другой тред
polistern Вот такое по времени подходит на каждый пинг: Unknown stream sSID=NNNNNNNNNNN
polistern Да это всё сильно сырой код, главное чтобы уходили. А дальше видно будет.
orignal ну так распечатай значение IsEcho
orignal ты же видишь код выше
orignal тут только отлаживать
polistern Ок, продолжу ковырять.
orignal странно в чем разница если ты посылаешь на один и тот же адрес
orignal в одном случае обрабатываются в другом нет
polistern Так вот да, может там что-то сообщить нужно перед этим? Раз у получателя стрима с таким id нет, значит он его не создал. Правильно понимаю?
polistern Тоннель и боб внешне одинаково шлют: Streaming: Sending ping with sSID=0, rSID=NNNNNNNNNN. Но если от тоннеля я вижу такие ID в логе цели, то от боба нет. И размер разный, 449 у боба, 477 у тоннеля. Смотрю дальше.
orignal так у тебя боб с DSA потому и разница
R4SAS эт че за шизик тут пинговал меня
orignal шиз какой то
polistern Надо будет по-практиковаться в асинхроне. Голова гудит, а так и не поняла как на этот колбек таймаут навесить)
orignal таймером
orignal и из таймера вызывать коллб
orignal эк со статусом failed
polistern Чем понятно, а как пока не вижу. Но я не сдаюсь :3
polistern orignal, получается в том коде, который ранее скинула, пинг отослаться не успевает и сразу блочится ожиданием?
orignal void StreamingDestination::ResetAcceptor ()
orignal if (m_Acceptor) m_Acceptor (nullptr);
orignal о чем я тебе и говрю
orignal вот смотри тебе надо по аналогии с ацентором
orignal при сборе ацептора вызывается коллбэк
orignal теперь тебе для пинга надо завести таймер при срабатывании которого будет вызываться такой сброс коллбэка
orignal то есть перед отправокй пинга коллбэк заражаем
orignal если пришел понг то он его вызовет с параметром success
orignal одновременно запусчкаем таймер с таймутом
orignal если success то то таймер отменяем
orignal если таймер отработал все время то сбрасываем коллбэк
polistern Хардкорный вводный курс вoost::asio себе устроила) Я по-немногу смотрю код, полезно будет хорошо разобраться. Зря наверное в pboted его не завезла)
polistern У меня ещё складывается ощущение, что нужен объект Pinger, и нужен он уровенем ниже боба. Но это уже детали конечно.
orignal смотри в чем дело
orignal там есть сервис метод run которого крутить в своем треде
orignal далее мы в сервис набрасываем задания и они через run исполняются
orignal есть задания типа операции с сокетом или таймера
orignal или просто явно методом post
orignal естественно задания ничего блокировать и жлать не должны
polistern Ну да, основной цикл, а задачи там в очереди. Я примерно представляю.
orignal да можешь сделать Pinger в Streaming.cpp
orignal а лучше внутри класса StreamingDestination