IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2023/04/12
~AreEnn
~R4SAS
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest18377
HackerMan
KabaOS
Most2
Nausicaa
Ruskoye_911
Trusishka
Vort
`
acetone_
anon3
b3t4f4c3
flumental
mittwerk
nemiga
not_bob_afk
plap
poriori_
profetikla
segfault
soos
teeth
un
weko_
whothefuckami
Opicaak Any plans on releasing new version of i2pd in a few days?
orignal никто не заметил багу что с двумя тоннелями на одном адресе поломано
orignal у deavmi поломалось
tetrimer А как это должно выглядеть "два тоннеля на одном адресе". Их явно больше на одном адресе...
orignal наглядно irc.ilita.i2p
tetrimer У меня открывается... Что там не так?
orignal у меня там старый билд
orignal так смотри в чем суть
orignal бразуером у тебя октрывается сайт а ирк клиентом полкобчется к ирк серверу
orignal ну одном адресе 2 тоннеля
orignal разных
tetrimer То есть один адрес и два разных порта?
orignal и вот это поломалось
tetrimer address = 127.0.0.1
tetrimer port = 9079
tetrimer address = 127.0.0.1
tetrimer port = 9089
tetrimer address = 127.0.0.1
tetrimer port = 9099
tetrimer Вроде не жалуются...
orignal нет это другое
orignal это когда inport у серверных
tetrimer Это http client
orignal я тебе про серерные говорю
tetrimer host = 127.0.0.1
tetrimer inport = 8080
tetrimer host = 127.0.0.1
tetrimer inport = 8082
tetrimer Вот так?
orignal и работает только один
orignal вопрос то в том что никто не заметил
tetrimer У меня, судя по логам, эти оба работают...
tetrimer Вот эта: /usr/sbin/i2pd.dc6499a - на этой версии работало точно, т.к. с 4-го числа мне бы уже плешь проели.
orignal я вот здесь поломал
orignal пока не работает как починю скажу
orignal все в порядке все работает
tetrimer orignal: А где посмотреть размер буфера, выделяемого для передачи клиентом GET-запроса?
orignal куда?
tetrimer Есть ощущение, что что-то бьется на передаче через i2pd
orignal на какой стороне?
orignal там вообще то std::stringstream
orignal короче бесконечный
tetrimer Да фиг его знает. Вот у меня с одной стороны слушает на локалхосте порт и передает через i2pd сеть данные на другую сторону. Там IIS+MSHTTP - получает кривой заголовок.
Vort tetrimer: речь о локальном HTTP прокси?
Vort если да, то недавно же обсуждали, что там баг
Vort если я правильно понял, то вообще странно, что оно хоть как-то работает
tetrimer [FORUM]
tetrimer type = client
tetrimer address = 127.0.0.1
tetrimer port = 9079
tetrimer destination = *.b32.i2p
Vort а, client - это другое
tetrimer На другой стороне, соответственно, это принимается, и шлется в IIS. И оно даже работает. Но иногда - сбоит...
Vort там теоретически багов быть не должно. хотя надо проверить
Vort "получает кривой заголовок" - как эта кривость выглядит?
tetrimer Те, кто ходит от себя на тот же *.b32.i2p адрес - не жалуются.
Vort каких-то данных нету или мусор или что?
tetrimer Это мы сейчас пытаемся поймать... На первый взгляд - все как обычно. Ну, может запрос чуть больше...
tetrimer Хотя по логам nginx - размеры запросов не влияют...
Vort чтобы нельзя было увидеть кривость - это странно
Vort разве что разбивка на пакеты приходит в голову
orignal да там море багов
orignal как обычно
Vort но чтобы MS так накосячили - не верится
Vort tetrimer: есть ли возможность поставить захват локальных пакетов как на клиенте, так и на сервере и сравнить запросы?
tetrimer Ну, как минимум есть стандартный tcpdump. :) С ним и развлекаемся...
Vort я имею в виду одновременно
Vort чтобы один и тот же запрос рассмотреть на стороне клиента и на стороне сервера
Vort как часто воспроизводится баг?
orignal проверьте кто нибудь последний коммит что проблема решена
Vort tetrimer: если воспроизводимость адекватная и если сервис не секретный, то могу его потыкать. мне кажется, что такой баг загнать в угол можно довольно быстро. странно что не удаётся столько времени
tetrimer Vort: Периодически, причем у кого-то нормально работает, а у кого-то - выскакивает через раз.
tetrimer Vort: Увы, сервис как раз и не хотелось бы светить.
tetrimer Тем более, там вход по аппаратному токену...
Vort а без входа баг не воспроизводится?
Vort сервер ведь должен какую-то ошибку выдавать без токена
Vort и, думаю, не bad request
Vort без токена ещё хорошо тем, что можно запросто сделать запросы через curl или что-то подобное
Vort то есть, автоматизировать воспроизведение бага
Vort tetrimer: ещё вариант - сделать подобный сервис, но публичный и без токенов. но на том же софте, то есть IIS. таким образом можно будет именно сам IIS погонять, исключив проблемы с конкретным сервисом
Vort думаю, даже что-то наподобие "hello, world" может быть достаточно
tetrimer Vort: Без токенов (и промежуточного хоста) - оно и так работает через i2p.
tetrimer Сейчас хоть нащупали: откуда ноги растут и дали пинок виндовым разработчикам...
tetrimer Vort: >сервер ведь должен какую-то ошибку выдавать без токена
tetrimer Без токена - запрос будет обработан самим nginx и никуда дальше (в proxy_pass) не пойдет. Можно, конечно, отключить авторизацию, но вот сегодня полдня работали с теми же токенами через yggdrasil вместо i2pd - и проблема, вроде бы, не выскакивала
Vort о каком промежуточном хосте речь? client порте на локалхосте что ли?
Vort хотя вроде начинаю понимать - там два сервера, да?
Vort если да, то это усложняет ситуацию. так как повреждение может быть ещё в одном месте
Vort "проблема, вроде бы, не выскакивала" - я так до конца не понял конфигурацию, но советую проверить разбивку на пакеты
Vort вдруг разработчик сервера решил, что запрос должен одним пакетом приходить )
Vort хотя может и тысячей пакетов прийти - TCP позволяет
Vort правда, не знаю, реальна ли такая проблема - скорее всего, низкоуровневой логикой занимается сам IIS
Vort ещё одна мысль - не может ли работа с токеном быть чувствительной к сетевым задержкам?
Vort в качестве теста стоит попробовать как-то очень сильно замедлить отправку запроса
Vort если повысится воспроизводимость, значит, есть зависимость от лагов
tetrimer Vort: >о каком промежуточном хосте речь?
tetrimer Виртуалка, обрабатывающая подключение по токену, дальше пускает свой трафик в i2p сеть. Отвечающий сервер, соответственно, находится в другом месте i2p сети.
Vort в общем, как я понял, надо в эту виртуалку воткнуть tcpdump/wireshark и ловить соответствующий запрос на стороне сервера
Vort затем побайтово сравнивать
Vort количество пакетов тоже сравнить можно
orignal давайте кратко в чем состоит проблема
orignal тем временем нашел неэффективность серверного тоннеля
orignal на каждый пакет делается поиск по порту
weko а можно не на каждый?
weko что именно там не эффективно
weko интересно
orignal можно сохранять с предыдущего
orignal и сравнивать
orignal грубо говоря если у тебя почти весь потом прет на 80-ый порт
orignal то нахуя его искать каждый раз?
Vort если в профилировщике это не всплывает, то сомнительная модификация
orignal а ты пробовал например заливать большие файлы?
Vort нет. поэтому написал "если"
orignal ну я просто увидел неэффективность
orignal насколько она значимая я не знаю
Vort философское обсуждение в какой-то мере ) когда виден жор CPU в профилировщике, я считаю есть смысл оптимзироать по CPU. когда не виден, имеет смысл оптимизировать по читамости кода (то есть, обычно - не трогать)
orignal в любомя случае всякие скоращение числа поисковых операций полезно
Vort хотя я не настаиваю конечно же
weko главное чтобы было понятно что там происходит
orignal да там 3 строчки кода будет
orignal просто как факт
orignal сделал