~AreEnn
~R4SAS
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest8889
HackerMan
Most2
Nausicaa
Ruskoye_911
Vort
`
acetone_
ananas
anon3
b3t4f4c3
fidoid_
guest
nemiga
not_bob_afk
plap
poriori
profetikla
soos
teeth
tensor
un
weko_
whothefuckami
onon
Лось тут?
orignal
угу
orignal
видал сколько я накоммитил?
onon
Нет. Прблема есть
onon
Большая сурьёзная
onon
С NTCP2
onon
Причины не знаю, опишу симптомы
orignal
ну давай рассказывай
onon
На одном роутере NTCP2-only остался только один транспорт, и все остальные реджектятся
onon
В логе пишет либо EoF либо reject by peer
onon
Попытки идут ко всем, но все отклоняют
onon
Ещё куча AEAD verifucation failed
onon
Incorrect N ephemerals key
onon
Как будто где-то проблемы с криптографией
onon
Перезагрузил роутер, сразу ко всем законнектился
onon
Есть идеи, что это может быть?
orignal
incorrect N это когда к роутеру
orignal
надо смотреть на чем фейлится
orignal
отправил ли SessionRequest
orignal
получил ли SessionCreated
onon
Дело в том, что у нас сейчас NTCP2 в приоритете, а если там такая шляпа...
onon
Ну так и входящие и исходящие пытались строиться
orignal
надо смотреть какие сообщения
orignal
они в дебаг пишутся
orignal
я тебе скажу в чем у тебя дело
orignal
хочешь?
orignal
или сам донадаешься?
onon
Если что-то обидное, то не нужно
orignal
нет не обидное
orignal
подсказка NTCP2-only
onon
Ну давай
orignal
у людей такое на ygg бывает
orignal
на чистом
orignal
у тебя съехали ЧАСЫ
onon
Ну я проверил же часы в первую очередь
onon
И после перезагрузки, всё заработало
orignal
ну не знаю
onon
Без подгонки часов
orignal
обычно бывает дело в них
orignal
а иначе только по логам разбираться
orignal
потому что у меня такого никогда не случается
onon
Пишет termination reason 13
orignal
eNTCP2Message3Error, // 13
orignal
это надо джавистов спрашивать
orignal
мы такое не ставим
orignal
а нет ставим
orignal
LogPrint (eLogError, "NTCP2: RouterInfo is from future for ", (ri.GetTimestamp () - ts)/1000LL, " seconds");
orignal
SendTerminationAndTerminate (eNTCP2Message3Error);
orignal
таки часы у тебя
orignal
void NTCP2Session::HandleSessionConfirmedReceived
orignal
ты послыаешь свой RI а тебе говорят ты чувак из будущего
orignal
иди на хуй
orignal
if (ts + i2p::data::NETDB_EXPIRATION_TIMEOUT_THRESHOLD*1000LL < ri.GetTimestamp ()) // 2 minutes
onon
Это они все из прошлого, ретрограды
orignal
ну типа того ))
onon
Сделай, что бы ошибку писало куда нибудь, при подозрении на время
onon
Как у жабоводов
onon
В консоли пишет
orignal
ну код ошибки 13 же кидает
onon
Это на дебаге только видно
orignal
да надо бы при колучении 13 ставить Clock Skew
orignal
оно ставится при пир тесте с SSU2
onon
Получается у меня на двух серваках время вперёд убежало
onon
Я на втором проверял, было одинаковое
onon
На третьем посмотрел, там меньше
orignal
ну сам видишь ошибка 13 не просто так прилетела
onon
Странно
orignal
это не я ее прислал
orignal
а другие сервера
onon
Может и ты тоже
orignal
какой кот ее ставит я показал
onon
Кот, если я тебе дифф сделаю на пейсер для стримов, смотреть будешь?
onon
Если сыш сразу всё переделывать, можно по частям.
onon
Пэйсер это очень важная даже для loss-based
orignal
посмотрб
onon
Я смотрю ты там всё про нетдб переделал, это конечно нужно
orignal
еще не все
orignal
там еще будет несколько шагов
onon
Там где const int MAX_STREAM_SPEED = 512000; // in bytes/sec // no more than 1.73 Gbytes/s
onon
Нужно бы ещё сделать проверку, что не больше чем в конфиге скорость.
onon
Я просто не знаю, какая функция
onon
И ещё нужно бы сделать, чтобы в tunnels.conf для дестинейшена можно было максимальную скорость на стрим указывать.
onon
И оттуда брать.
orignal
да можно сдеать
orignal
в TransportSession.h посмотри как лимиты скорости учитываются
orignal
bool IsBandwidthExceeded (bool isHighBandwidth) const
onon
Ещё запиши в туду лист мастхэв фичу - transit_mode
onon
Включается либо в конфиге, либо в вебконсоли. Отключает все локальные дестинейшены, строительсво всех туннелей и оптимизирует обработку име��но транзитных туннелей.
onon
Большое количество юзеров пользуют i2pd именно так, только в качество транзитной/флудфильной ноды на впс.
orignal
зондирующие все равно нужны
onon
Кстати, зачем
orignal
чтобы новые узлы получасть
onon
Новых роутеров нам насыплет и так, а запросы к фф напрямую, вроде.
orignal
чтобы свои запросы иногда слать
orignal
когда нет возможности послать напрямую
onon
В общем, нужно будет над этим подумать.
onon
Всё равно какая-то херня с коннектами. Я выключил синхронизацию, вручную поставил время на минуту меньше, всё так же reject 13 или EoF
onon
Старые коннекты ещё висят, а новые перестали строиться.
onon
Он всех помечает как недоступных и вычищает netdb
onon
Там уже почти ничего не осталось
orignal
так на минуту меньше тем более пойдет отлучп
orignal
ну так включи в конфиге ntp и все
orignal
nettime.enabled=true
orignal
оно само вчислит смещение
onon
А почему по-умолчанию не включено?
orignal
чтобы не палиться
orignal
кроме того когда SSU2 есть то оттуда берется
onon
Ты предлагаешь мне спалиться?
orignal
смещение
orignal
нет
orignal
это же от твоей ситуации зависит
orignal
не все хотят светить запросами к ntp
orignal
не у всех они работают
orignal
а ты проверь
onon
В какой секции писать?
orignal
[nettime]
orignal
enabled=true
orignal
ты какой то не настоящий свращик ))
orignal
то есть сисадмин
orignal
как будто ini файл первый раз видишь
onon
Так в системе у меня включено
onon
timedatectl
onon
NTP service: active
onon
Я думал в i2pd настроить что нужно
orignal
уж не знаю что у тебя там
orignal
факт что у тебя проблема с часами
orignal
либо включи SSU2 и проблема исчезнет
onon
Так должно и без SSU работать
orignal
еще раз
onon
Где-то косяк в коде
orignal
по SSU2 выислаяет смещение часов
orignal
по NTCP2 енет
orignal
почему я не помню уже
onon
На всех серваках сейчас у меня время одинаковое
orignal
нету косяков в коде
orignal
есть проблема с часами
onon
На других работает
orignal
у тебя
orignal
ой все
onon
Даже на том, где ещё NTCP-only
orignal
либюо ты включаешь синхронизацию
orignal
либо SSU2
onon
Там такое же время и работает
orignal
дальшейшги разщговор не имеет смысла
onon
И там 6к коннектов
onon
Бред
orignal
когда сделааешь тогда начнем говорить дальше
onon
Вот я роутер перезагружу и всё заработате
onon
Но потом через некоторое время перестает
onon
Как это можно объяснить?
orignal
часы слетают
onon
> либюо ты включаешь синхронизацию
onon
Так говорю же, включена
orignal
ты будешь делать что я сказал?
orignal
или доказывать мне что белое это черное?
onon
Включить SSU?
onon
Так мне нужно NTCP-only
orignal
включить синхронизацию по ntp в 2ipd
onon
Ага, сейчас попробую.
orignal
меня ниебет что у тебя в системе
orignal
и чо?
onon
Может я что не так сделал, в конфиге перед [ntcp2] добавил:
onon
[nettime]
onon
enabled = true
onon
Но это не помогло
onon
Через 1,5 часа резко началось
onon
Все транспорты NTCP2 начали быстро уменьшаться.
onon
За 20 мин остались пара десятков транспортов, количество постепенно уменьшается и новые не строятся.
onon
Может это внутри i2pd время слетает а не в системе.
onon
Рестартую роутер - всё сразу нормально становится.
onon
Предыдущий дифф, на хидер неправильный, я там забыл добавить m_SendTimer, вот ссылка на правильный:
onon
А вот диффы к уже предыдущим диффам:
onon
Добавляет так же paced retransmit.
onon
И после 1 RTO без ответа, шлёт по одному пакету, пока не получит ack.
onon
Остальную логику не менял.
onon
Забыл дебаг лог удалить, вот правильный:
onon
Проблема с транспортами снова повторилась через 1 час 30 минут. Прошу кого-нибудь попытаться воспроизвести.
onon
[ntcp2]
onon
enabled = true
onon
published = false
onon
[ssu2]
onon
enabled = false
onon1
Ещё один фикс последнего диффа, экспоненциальный рост RTO это плохо.
orignal
ну вот разбирайс в чем дело
orignal
напечатай в лог время и прочее
orignal
почему повторяется через полтора часа тоже понятно
orignal
("nettime.ntpsyncinterval", value<int>()->default_value(72), "NTP sync interval in hours (default: 72)")
orignal
поставь там 1
WayBest
<~orignal> включить синхронизацию по ntp в 2ipd
WayBest
а это где?
orignal
в секции [netttime]
orignal
[nettime]
WayBest
шатает опять
orignal
ну атакуют наверное
WayBest
я не оч понимаю принцип атаки
WayBest
почему ш2з не вытягивает
orignal
вытягивает
orignal
почему у тебя лагает я не знаю
onon
Ещё один фикс стримов, вроде последний.
onon
При сборке ни один кубик не пострадал.
orignal
короче пока тебя не было
orignal
<orignal> ("nettime.ntpsyncinterval", value<int>()->default_value(72), "NTP sync interval in hours (default: 72)")
orignal
<orignal> поставь там 1
orignal
дай файлы целиком я сам diff сделаю
orignal
<zzz> orignal, yes, usually for old or future RI, but could also be signature verify fail. you could also validate NTCP2 address params there like the length of 'i'
orignal
вон что еще дед сказал
onon
Я поставил
onon
[ntcp2]
onon
enabled = true
onon
published = true
onon
Теперь такой проблемы не возникает
onon
Так это что меня все одновременно забанили что ли
onon
could also be signature verify fail
onon
Или я ещё не проснулся и ничего не понял.
onon
Это нужно добавить в конфиг
onon
ntpsyncinterval = 1
onon
?
orignal
ну дед так говорит
orignal
да
orignal
в секции [nettime]
orignal
но не похоже что
orignal
то время
orignal
похоже что у тебя RI в sSessionConfirmed дряной
orignal
у тебя вообще исходящие есть?
onon
Только к тем, к кому уже подключен
onon
Туда туннели строятся
onon
А новые нет
orignal
в транспортах есть исходящие NTCP2 содеинения? или только входяшие
orignal
может дед нанпарил
onon
Сейчас исходящих не вижу ни одного
onon
Все со стрелочкой впереди
orignal
ага
orignal
счас деда носом ткну
onon
Но там их с Гулькин нос, около 200 коннектов свего
orignal
не важно
orignal
читай i2pd-dev
orignal
*i2p-dev
onon
Ну так и i2pd меня так же не принимают, получается
orignal
получается
orignal
может у тебя тред Router фейлится?
orignal
разберемся
onon
В логах про это что-нибудь будет?
orignal
не знаю смотри по коду
orignal
меня интересует другое
orignal
хотя возможно ты и не публикуешься
orignal
поизучай этот вопрос
orignal
что находится у тебя в router.info
onon
Так мне надо публиковаться или нет? Я сейчас отключил. published = false
onon
Когда ntpsyncinterval = 1 добавлял
orignal
без разницы
orignal
если у тебя исходящие не работают
onon
Когда была включена там адрес был 0.0.0.0:port
onon
Может поэтому
orignal
ну так вот поэтому
orignal
ясен пень
orignal
надо его прописать явно
onon
А когда выключена, просто supported
onon
Он динамический
orignal
в параметр host
orignal
значит надо отключить
orignal
публикацию
orignal
динамечский можно только по SSU2 определить
onon
Но тогда деградирует через 1,5 часа =)
orignal
вот с этим давай разбираться
onon
Ну или сейчас помотрим через сколько
orignal
ставиь синхронизацию кажлый час
orignal
выкобчай публикацию
onon
Так и сделал
orignal
потом перезапустишь посмотри router.info
orignal
меня интересует NTCP2 адрес
onon
А чем его смотреть
orignal
публикуется ли так i
orignal
less -ом
onon
И чего там искать
onon
i=,
onon
Это?
onon
Там где NTCP2 там только s есть, а где SSU2 там i и s
orignal
в NTCP2 должно быть только s, v и cpas
orignal
*caps
orignal
caps=4 наверное
orignal
так?
onon
Да
orignal
вроде порядок
orignal
двай ждем
orignal
0.0.0.0 надо починить будет
onon
Так а почему я исходящий транспорт не могу сделать
onon
Типа я не могу подтвердить свою личность или что?
onon
Если адрес не публикуется
orignal
так мы с этим и хотим разобраться
orignal
по твоим словам прилетает код 13
orignal
на SessionConfirmed
onon
Ну да, или EoF на сокете
orignal
i2pd кидает в случае неверного времени только
orignal
дед говорит что вообще при всяких ошибках RI
orignal
я же кидаю 15
orignal
при неверное подписи
orignal
и прочих гадостях
orignal
if (ts > ri.GetTimestamp () + i2p::data::NETDB_MIN_EXPIRATION_TIMEOUT*1000LL) // 90 minutes
orignal
{
orignal
LogPrint (eLogError, "NTCP2: RouterInfo is too old in SessionConfirmed for ", (ts - ri.GetTimestamp ())/1000LL, " seconds");
orignal
SendTerminationAndTerminate (eNTCP2Message3Error);
orignal
а вот и твои потора часа откуда
orignal
то есть у тебя не обновляется router.info в процессе работы а только при старте
onon
И почему это может происходить
orignal
ну вот надо разбираться
orignal
этот тред где то в RouterContext
orignal
который меняет
orignal
void RouterContext::Publish ()
orignal
добавь туда логов и посмотри что и когда вызывается
orignal
точнее здесь void RouterContext::HandlePublishResendTimer (const boost::system::error_code& ecode)
onon
А может я когда роутер с другой машины переносил, забыл права выставить...
orignal
memcpy (m3p2 + 4, i2p::context.GetRouterInfo ().GetBuffer (), bufLen); // TODO: own RI should be protected by mutex
orignal
ой как нехорошо то
orignal
не знаю
orignal
void RouterContext::UpdateRouterInfo ()
orignal
{
orignal
m_RouterInfo.CreateBuffer (m_Keys);
orignal
m_RouterInfo.SaveToFile (i2p::fs::DataDirPath (ROUTER_INFO));
orignal
m_LastUpdateTime = i2p::util::GetSecondsSinceEpoch ();
orignal
}
orignal
возможно тут кидает эксепшин
onon
Я овнера поменял с пользователя на i2pd, можно ребутнуться, или ждать синхронизации времени?
orignal
рестратуй
orignal
по моему из тебя сисадмин еще хуже чем из меня ))
onon
Грешно смеяться над больными людьми...
onon
Если вот так ⇒ eUMJ это входящий или исходящий транспорт.
orignal
исходяший
onon
Теперь reason=2
onon
eNTCP2IdleTimeout
onon
Значит всё норм
orignal
да
orignal
если есть исходяшие
onon
Дурная голова не даёт дурной голове покоя
onon
Ещё и Лося от важных дел отвлёк.
onon
Он как раз собирался стримы переделать.
orignal
да нет ты зато ткнул носом в проблему
orignal
которую стоит починить
relaybot
13apep: Атака новая ?
orignal
где?
orignal
все. довел задуманное до конца
WayBest_
везде
orignal
разнес запросы новых роутеров по времени
WayBest_
фикс скоро будет в репе r4sas?
orignal
фикс чего?
WayBest_
ну или фичи
WayBest_
как быстро оно попадает в релиз?
orignal
когда релиз
orignal
сразу же
orignal
но релиз не скоро
orignal
должно меньше засирать сеть пачками запросов
WayBest
а есть смысл из сурсов компилить?
orignal
2.52 работает неплохо
orignal
только если хочешь новые фичи тестировать
WayBest
ну вот у меня ласт r4sas версия
WayBest
ну если фичи приведут к стойкости к атакам хоть как то
WayBest
то не против)
orignal
да счас атаки слабенькие
orignal
мелоктравчатые я бы сказал
orignal
последние релизы у нас и джавистов гасят атаки хорошо
relaybot
13apep: Скоро усилятся
relaybot
13apep: Вангую
orignal
опять серктеные переговоры лохинетчиков? ))
relaybot
13apep: Нет
orignal
netdb да я основательно переделал
relaybot
13apep: Просто у них период определенныц
orignal
когда заказчики отчета требуют?
relaybot
13apep: Хз
WayBest
а кто заказчик?)
WayBest
и скок платят
WayBest
можно просто за деньги гасить свои клиенты ш2з на время :D
orignal
пиздабол же сказал что РКН ))