IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2024/10/11
~AreEnn
~R4SAS
~acetone
~orignal
~villain
&N00B
+relaybot
DUHOVKIN
Leopold
Most2
Nausicaa
Vort
Xeha
anon2
b3t4f4c3
karamba_i2p
nemiga
not_bob_afk
poriori_
profetikla
soos
un
weko
whothefuckami_
and_or_not там onon ебнулся и закрыл чат #ru
onon Сюда пришёл спамить?
and_or_not не ной как сучка
and_or_not никто тут не спамит, кроме тебя
onon Тут про разработку иди на ру
and_or_not onon Cannot join channel #ru (channel is invite only)
and_or_not ты идиот или притворяешься?
onon А ты, похоже даже не притворяешься.
orignal лучше давайте обсудим мое иноовационное решение с очередью
Vort ну вообще-то нормальная работа IRC в условиях атак - это тоже важная тема
Vort а насчёт очереди - меньше потребления CPU должно быть и меньше лагов?
orignal больше данных прокачиваться
orignal меньше спотыкаться на мьютексах
orignal следущий шаг это пеередача между тредами
orignal где io_service
orignal я на работе наткнулся что вот как у нас счас создает тормоза
Vort если один узел/процесс сможет потреблять все доступные ресурсы - будет конечно хорошо. но тогда ещё явнее будет выпирать глюченость балансировки
orignal это про скорость прокачки данных
Vort как я понял, будет увеличиваться разрыв между возможностями медленных и быстрых узлов
weko так что по поводу стримов
weko грузят проц
orignal weko ?
Vort weko: это вопрос или утверждение?
weko ну стрим грузит процессор очень жёстко
weko я обновился и заметил
weko 10% от ядра
onon Один стрим?
Vort при той же скорости?
onon Или много?
weko это подключение к ирки
weko так что считай почти простаивает
Vort фигассе
Vort такое на баг похоже
weko несколько стримов на одном dest'е грузят столько же
weko но вот их уже может быть много
weko ну по крайней мере грузится поток с именем Destination
Vort пейсинг может жрать ресурсы в теории, но в IRC нету данных считай чтобы его "кормить"
Vort когда нету пакетов для отправки он же простаивает, да?
onon Ну там таймер срабатывает каждую милисекунду
onon Вне зависимости есть данные на отправку или нет
Vort тогда понятно
onon Если ничего нет, он рестартует таймер и ничего не делает
orignal у меня дестнейшин с ирком ничего не грузит
orignal грузит с mtproxy но там дохуя народу сидит
orignal weko ты уверен что это именно ирк?
orignal давайте смотреть есть ли у кого то еще проблема
orignal а нельзя сделать таймер каждые 10?
onon Ну в ирке если на отправку ничего нет и в отправленных все подтверждены, таймер выключается
onon Вряд ли проблема в этом
onon У меня такой проблемы нет
orignal у меня тоже
onon Проц только транспорты грузят
orignal нет у меня тоже проц грузит этот деситнейшин на серваке
orignal но он там обслудивает сотни соединений
onon weko, можешь попробовать сделать const uint64_t SEND_INTERVAL = 10000; // in microseconds
onon Или переделать на милисекундный таймер. Может микросекундный больше ресурсов потребляет, яхз
orignal без разницы там порог в 10 миллисекунд
orignal по разному раюотают
and_or_not а зачем тебе mtproxy это же прокся телеги?
orignal он с тех времен когда хуйло боролось с телеграмом
orignal народ через него сидит
orignal он на telegram.i2p есть
and_or_not странно, зачем в телеге сидеть через прокси которое в i2p
and_or_not сейчас у себя посмотрю жор проца
orignal потому что существуют страны во главе которых стоят бабуины
orignal которые блокируют телеграм
orignal иран например
and_or_not а иран, да помню, когда у нас блокали я тоже держал проксю и через нее сидели 2к иранцев
orignal ну вот этот прокси еще с 2018 года и постоянно на нем какой то народ
and_or_not не, никаких 10% жора цпу и билзко нет на ирке и не только на ирке
orignal так может у него это не ирк вовсе
orignal надо все таки Destination тред промаркировать будет
orignal чтобы было понятно кто есть кто
and_or_not может у него проц древний как говно мамонта
orignal так ладно к теме очередей тут главное что треды NTCP2 и SSU2 должны работать быстрее ибо меньше спотыкаются на мьютексах
orignal ладно gopher:// выпилили туда ему и допрога
orignal но блять ftp:// с ним сайтов было море типа funet.fi
orignal где лежало куча всего и по ftp://
orignal пардон не в то окно
darkcat09 Приветствую. Есть sing-box, который проксирует весь трафик и проверяет суффикс домена, если .i2p => передаёт на HTTP-прокси i2pd 127.0.0.1:4444. Я правильно понимаю, что прокся в i2pd всегда отвечает кодом 500 ISE, когда короткого домена нет в
darkcat09 адресбуке?
darkcat09 Сама проблема: sing-box шлёт connection refused, если апстрим-прокси ответил не 200.
darkcat09 Такое поведение явно не только у синг-бокса. Есть какое-нибудь поле в конфиге, чтоб прокся i2pd слала респонз с кодом 200, а не 500?
onon HTTPProxy.cpp -> void HTTPReqHandler::SendProxyError(const std::string& content) -> res.code = 500;
onon Наверное здесь
orignal поля нету поле надо делать
orignal то есть ты хочешь чтобы с addresshelper сразу в ответ выдавал страницу по тому адресу?
darkcat09 orignal: не, пусть та же самая страница с подтверждением добавления в адресбук, но код ответа не 500, а 200
darkcat09 Потому что промежуточным проксям не нравится 500 ISE от http-прокси i2pd
darkcat09 Ага, эт вот тут
darkcat09 А такая фигня есть ещё где-нибудь?
darkcat09 Чтоб прокси 500 отвечал
darkcat09 Мне щас либо патчить i2pd и какой-то магией компилить на андроид (мне он там тоже нужен, тоже в связке с sing-box), либо патчить sing-box, что выглядит как-то полезнее и проще
orignal я думаю у джавистов также
orignal где еще addressheloper есть?
orignal я не понимаю одного зачем тебе куча адресов левых
onon Может он ходит по сайтам, которые на reg.i2p в цензурном списке.
darkcat09 orignal: onon: энивей лучше когда прокси сконфигурирован правильно. И я ещё не очень хорошо разобрался в i2p, в локальном адресбуке нету моих доменов, которые я недавно добавил на reg.i2p, вот хотел хоть через addresshelper открыть
darkcat09 Лучше тогда пойду в issues в репе sing-box, скорее всего не только i2pd может отвечать 500
orignal просто ты первый кто пожаловался на такую проблему
orignal я пойду у джавистом спрошу
WebClient47 привет, это значит что i2pd не смог отрезольвить host тоннеля?
WebClient47 привет, это значит что i2pd не смог отрезольвить host тоннеля?
WebClient47 "/error" - I2PTunnel: Unable to resolve server tunnel address: Host not found (authoritative)
WebClient47 вопрос только какой именно, если тоннелей много, как понять где он спотыкается?
orignal значит в адресной книге есть
orignal *нет
WebClient47 а это из адресной книги? я думал это просто host=my_service.lan из серверного тоннеля не резольвится и поэтому такая ошибка
orignal а ну такое тоже может быть
orignal он резолвит через систмный днс
orignal а преворить на той машине не можешь резолвится или нет?
orignal насчет ошибки поправлю буду адрес туда писать
WebClient47 orignal да спасибо. Вроде понял как это происходит. У меня i2pd стартует раньше чем сервисы, поэтому когда i2pd пробует тоннели по dns то если сервис не успел поднятся i2pd получается отваливает этот сервис и
WebClient47 больше не пытается до него достучаться, хотя он через секунду появляется онлайн и его dns доступен. Может стоит поправить так что бы i2pd не забивало на имя dns хоста серверного тоннеля, а хотя бы делало
WebClient47 несколько попыток достучаться и только потом забывала про него.
WebClient47 Например пробуем dns 3 раза, с промежутками 30 сек
orignal хорошо сделаю
orignal я постоянно раз в 30 секунд буду пробовать
WebClient47 ок, еще лучше
orignal там все хуже
orignal он только при старте резолвит
orignal что в корне неправильно
WebClient47 ну вот да, поэтому я и ловил эти глюки и не мог понять почему после старта всех сервисов у меня половина из них не работает через i2pd и только после отдельного рестарта i2pd начинало работать
orignal так в процессе работы домен может смниться
WebClient47 ну у меня точно не меняется, это все про docker, я одной пачкой докеров все поднимаю и там имя хоста жетско привязано к контейнеру
orignal а у кого то может
WebClient47 и еще как можно понять что i2pd поднялся и онлайн? В docker есть healthcheck в который можно прописать нечто что вернет 0 (успех) и это будет означать что контейнер "здоров" и работает правильно
WebClient47 для обычного контейнера я бы прописал ping 8.8.8.8 но в случае с i2pd не понятно
WebClient47 можно curl ilita.i2p но она тоже можешь леч
orignal дергай i2pcontrol
orignal там запрос статуса есть
orignal команда такая
orignal давно уже делали
orignal i2p.router.status она называется
orignal WebClient472 я сделаю лучше
WebClient472 чего то не получается включить этот control, прописал это в i2pd.conf
WebClient472 [i2pcontrol]
orignal я при старте буду резолвить пытаться если не получилось то при запросе
WebClient472 enabled = true
WebClient472 port = 7650
WebClient472 После ребута порт не слушается
orignal да так
orignal слушается везде
WebClient472 >я при старте буду резолвить пытаться если не получилось то при запросе
WebClient472 отлично
WebClient472 >да так
WebClient472 тогда у меня косяк, буду искать
orignal и при запросе если скажем больше 10 минут назад резолв был то поновой
orignal у меня везде слушает потому что я как раз счас его тестирую
orignal а ну разумеется он по умолчанию 127.0.0.1 слушает
WebClient47 orignal чего то я не соображу как запрос делать, ты через curl запрашиваешь?
orignal кто как это же просто JSON
orignal я с itoopie тестировал
orignal есть где то на питоне скрипты
WebClient47 я не пойму вообще через что пихать эти параметры
WebClient47 ладно буду разбираться
orignal так спек же есть
orignal вроде дано исчерпывающе
WebClient47 методом тыка разобрался, но простого примера конечно нехватало
orignal где то есть на гитхабе на питоне
orignal сам видел