~R4SAS
~acetone
~orignal
~villain
&N00B
+Xeha
GFW
Most
Opax
Yadovitka
Yotsu
ahiru
ananas
anontor
asap
b3t4f4c3___
chud
cry4me
deserving-stegosaur
duanin2
f00b4r
i2p1
karamba_i2p
leopold
mareki2p
n1_
nnm
nyaa2pguy
o3d3
o3d3_
poriori
profetikla
ps
qend
slfd
sonya
test02
tetrimer
un
user
uu2
vade
zzz
orignal
is echelon down?
zzz
echelon is still up, takes a while to connect, but once you do it seems to stay connected
orignal
I couldn't connect like for 15 minutes
zzz
drzod is claiming 20% client build success with his fixes, I'm at 10%, trying to get some more ideas out of him
orignal
I'm at 12%
orignal
drzod? ))
orignal
no he is drozd ))
orignal
right I build though 0.9.58 and higher
zzz
I increased it to 0.9.62 to avoid the 0.9.61 botnet from Christmas
zzz
sorry I forgot to tell you
orignal
for tunnels? for floodfiils?
orignal
I see 3 versions
orignal
for tunnels, for floodfiils and for peer tests
zzz
I did both tunnels and ffs. I didn't do peer tests
orignal
I have min version for peer tests
zzz
the christmas botnet isn't ff anyway
orignal
so, 0.9.62 for FF and tunnels?
zzz
that's what I did, correct
orignal
thanks
zzz
I have min relay version 0.9.57; min peer test version 0.9.62. Haven't looked at it in a long time
orignal
I don't have min relay version
orignal
will implement it too
uu2
orignal 5f00447bca3aaec61ddf5d2e7dd0bee7e8697bf Routers: 5431 Floodfills: 1282 LeaseSets: 0 Client Tunnels: 25 Transit Tunnels: 2026, транзитный трафик пошел, просто пишу что с последними обновлениями i2pd "ожил"
orignal
да у меня транзит тоже пошел
orignal
настоящий трназит имеется ввиду
uu2
Received: 585.51 MiB (175.88 KiB/s)
uu2
Sent: 504.59 MiB (161.98 KiB/s)
uu2
Transit: 368.98 MiB (132.91 KiB/s)
uu2
Uptime: 1 hour, 46 minutes, 2 seconds
orignal
почти норма
uu2
крут
uu2
круть, я за NAT
orignal
у меня счаст 2 мегабайта в секунду чистого ттранзита
orignal
и нет статуса E
uu2
Router Caps: PR Network status: OK (но я за NAT)
uu2
лол
orignal
все через меня строят ))
orignal
а ну это понятно почему
orignal
много соединений потому что
uu2
лол
orignal
ну это старая проблема
uu2
ака публичный пир yggdr
orignal
там не понтяно сколько интревал ставить
uu2
есть догадки в чем прообблема ?
orignal
с OK?
orignal
угу
orignal
на всех роутерах разное время жизни дырки
uu2
а
orignal
а сколько надо не понтяно
uu2
я то обновленныйы upstream использую
uu2
пон
orignal
я понимаю
uu2
ветка openssl основная ?
orignal
да
uu2
ок
uu2
как пробивать nat описанов в i2p протоколе или реализация зависит от разработчика те есть различия i2p на java и i2pd ?
zzz
the peer test version is because of all the bugs we fixed before that. Not related to the Christmas botnet, just a coincidence
orignal
yes I know
orignal
just wante to duble check
zzz
++
orignal
нат пробивается просто отправкой пакета на адрес
orignal
bumped to 0.9.62
uu2
о, Ростел маршрут мне поменял
uu2
вот почему i2pd считает что я не за nat
uu2
сеть AS12389 перестроили
orignal
думаешь и правда не за нат?
uu2
ща трейс запущу
uu2
есть сервис для публикации png ?
orignal
не знаю
orignal
still can't connect to echelon
uu2
1 слой nat
uu2
мой роутер, CGNAT провайдера
zzz
yeah I'm not connecting either
orignal
finally connected
zzz
me too
orignal
restart in 10 minutes
uu2
04:34:32@694/error - NTCP2: Runtime exception: open: Too many open files [system:24 at /usr/include/boost/asio/detail/reactive_socket_service.hpp:133:33 in function 'boost::system::error_code boost::asio::detail::reactive_socket_service<boost::asio::ip::tcp>::open(implementation_type &, const protocol_type &, boost::system::error_code &) [Protocol = boost::asio::ip::tcp]']
uu2
понеслось говно по трубам
ambatukam
зрасте, ш2з все еще под атакой?
Most
14<gomunkul> Да
NY_I_HDE_Tonne
Не ну скажите че делать шоб Tunnel creation success rate: вырос более 4% и народ успакоится сюда толпами ходить ,,,
tetrimer
NY_I_HDE_Tonne: Обновляться на последний билд и ждать.
NY_I_HDE_Tonne
Там всякие netDB чистить , отключать resid нада ?
acetone
Хорошо, что фикс этой херовины успелся перед релизом. Было бы совсем грустно, если случилось после релиза
orignal
ждите релиза на след неделе
orignal
ну сделали бы 2.59.1 в первый раз что ли?
orignal
netdb чистить не надо это другая атака нынче
orignal
acetone_ вот что характерно релиз отложился на 2 недели
orignal
не думаю что это совпадение
tetrimer
Если включить паранойю: кто знал про сроки релиза и кто отложил релиз на две недели?
orignal
так везде обсуждалось
tetrimer
Атака должна была произойти после релиза.
orignal
именно так
orignal
то что релиз планировался в конце янавря это было еще с осени изсетвно
tetrimer
А то, что он окладывается - кто знал?
orignal
а idk сказал что будет готов только 9-ого
orignal
это на i2p-dev обсуждалось
tetrimer
Осталось сравнить аудиторию "здесь" и "там" - и список подозреваемых - готов.
orignal
а здесь то причем?
tetrimer
Ну, надо же с чем то сравнивать. :)
orignal
планы были ввно привязаны к релизу
orignal
zzz if we receive 10 TBMs in 200 milliseconds from a peer can we assume it's originator?
zzz
maybe?
zzz
postman's nickserv/chanserv came back for a minute last night and #saltr is now +m. I'm in #i2p-news over there which is unmoderated
orignal
what is another possible case?
orignal
thanks will check
orignal
e.g. if I see something like this I'm going to consider that guy as an aattcker and let all his TBMs go through
zzz
not sure, I'll think about it. drzod implemented some kind of 'burst' checking, I'm not sure it's necessary because we already have throttles. I'm researching
orignal
then think about my idea
orignal
because I see it often in the logs
orignal
10+ TBMs in 200 milliseconds
zzz
that is a lot ))
orignal
I think it's clear sign of an attacker
zzz
will tell you our throttle limits in a sec
orignal
it's not about trottling
orignal
we should mark that router/ip as an abuser
zzz
right but that's my baseline, need to think if it needs tweaks or needs some burst check
orignal
my trottling is 1 TBM per 200 millisecond
orignal
from a peer
zzz
could also be the to-peer for IB. We throttle both from-peer and to-peer.
orignal
it's garlic
orignal
not TBM
zzz
this is for closest-hop to originator for an inbound build
orignal
I would receive a garlic message from peer
zzz
not IBGW
orignal
wait
orignal
who whould build tunnels through the same hop?
orignal
however yes you are right
orignal
an advesary can do it inteninally
zzz
yup. two cases, OB and IB
zzz
ok our throttle limits vary from 7 to 27 max over 110 second period, depending on total number of tunnels
orignal
OB and IB go in oppisite deirections
zzz
we increment the counter for both the from-peer and to-peer
orignal
so less then 1 TBM per sec
orignal
that's why nobody can build tunnels nowe
orignal
too strict in my opinion
zzz
we don't do any banning though
orignal
you drop
orignal
and people can't build tunnels because you drop
zzz
right, we drop. We did pretty extensive testing and it wasn't hit at all except for attacks
orignal
and now it causes the problem
zzz
no, it's only stopping the attacker
zzz
even 7 in two minutes is a lot from one peer
orignal
but you don't know if TBM is from attacker of real user
orignal
*or
zzz
that's the same for your burst check ))
orignal
1 per 200 ms is not the same as 27 per 110
zzz
statistically, it works out, if there's that many, it's probably the attacker. we did a lot of testing, there really aren't any false positives
zzz
sure but it's the same principle. you don't know for sure, but 99% is good enough
zzz
again, we aren't banning, just dropping over some limit. We drop TBMs all the time for all sorts of reasons
zzz
there's probably 15 places in our code where we drop TBMs
orignal
then why a lot of them go through
orignal
?
zzz
we just have a lot of overload checks, jrandom stuff, 20 years ago ElGamal was slooooow. Normally everything goes through fine
zzz
we do have some overall burst limiting based on queue sizes and TBM arrival rate. just nothing per-peer
orignal
so I do quite oppsite
orignal
back to Irc2P
orignal
isn't RN an operator of the netwrok?
zzz
don't know, but without any nickserv there's no way to authenticate
orignal
if you are an operator you can change channel setting without nickserv
orignal
and the authnitcation is from server's config not nickserv
orignal
* [orignal] is an IRC Operator (orignal) [netadmin-with-override]
orignal
* [orignal] is using an IP with a reputation score of 10000
orignal
* [orignal] is a ilita.i2p admin
orignal
like this
orignal
you are not, just ask RN
zzz
will do, if she appears
sonya
zzz, hello.. may be it'd be nice to unban tor for i2p[d]?
zzz
ok my initial fixes are up on gitea. not on github yet
zzz
orignal, one suggestion if you don't - override/reduce tunnel quantity when build success % is very low
zzz
we'll go all the way down to 1. This is important to prevent network-wide congestion collapse
zzz
repost:
zzz
ok my initial fixes are up on gitea. not on github yet
zzz
orignal, one suggestion if you don't - override/reduce tunnel quantity when build success % is very low
zzz
we'll go all the way down to 1. This is important to prevent network-wide congestion collapse
orignal
let me try
anontor
fix it nerds.
zzz
here;s what we do, for reference, for client tunnels only:
R4SAS
sup
zzz
// throttle client tunnel builds in times of congestion
zzz
int fails = _consecutiveBuildTimeouts.get();
zzz
if (fails > 4) {
zzz
if (fails > 12) {
zzz
rv = 1;
zzz
if (_log.shouldWarn())
zzz
_log.warn("Limit to 1 tunnel after " + fails + " consec. build timeouts on " + this);
zzz
} else if (fails > 8) {
zzz
rv = Math.max(1, rv / 3);
zzz
if (_log.shouldWarn())
zzz
_log.warn("Limit to " + rv + " tunnels after " + fails + " consec. build timeouts on " + this);
zzz
} else if (rv > 2) {
zzz
rv--;
zzz
if (_log.shouldWarn())
zzz
_log.warn("Limit to " + rv + " tunnels after " + fails + " consec. build timeouts on " + this);
zzz
}
zzz
}
zzz
hi R4SAS
R4SAS
hi, zzz. new shit happened?
zzz
yeah, fun times, we're working on it
R4SAS
kk
zzz
java i2p info is at zzz.i2p/topics/3714 - for i2pd info, talk to the moose )))
R4SAS
hehe
orignal
zzz, that's worst thing in my opnion
orignal
an advesary can deanon everybody this way
orignal
by forcing 1 hops tunnels
zzz
no orignal this is _quantity_ not length
orignal
my mistake
orignal
but 1 is bad
orignal
if fails what do you switch to?
zzz
sure, but 1% build success is also bad
zzz
the point is to avoid network congestion collapse, which is what we have right now
onon
Если при снижении рейта все начнут ещё больше тротлить
zzz
if it fails, don't remove it until you build a new one
onon
То это только усугубит ситуацию
onon
Логику включите
orignal
onon он предагает меньшее число тоннелей строить
orignal
разумно но я считаю надо уменьшать до 3 а не до 1
onon
А атакующий тоже будет снижать напор?
onon
Нет конечно
orignal
zzz, something importnat
onon
И тогда процентное соотношение фейковых запрсов и реальных ты сдвинешь не в свою сторону
orignal
<tetrimer_> Если поставить ширину канала в L - то вообще никого нету. Ноль транзита.
onon
Логика где
orignal
basically it seems they attack high banwidth routers only
orignal
логики нет, согласен
orignal
onon ты видел их логику?
orignal
счас процитирую
onon
Вот вас нельзя оставлять без присмотра
onon
Наделаете глупостей
orignal
<zzz> ok our throttle limits vary from 7 to 27 max over 110 second period, depending on total number of tunnels
orignal
как тебе такое Илон Маск?
onon
27 туннелей за две минуты?
orignal
вон оно то и порождает низкий рейт
orignal
именно
orignal
причем я так понял на весь роутер
onon
Я жк говорю нафиг эту яву
orignal
у они не режут по пирам
orignal
я предлагаю поменять логику резания
orignal
логика такая
orignal
приходит первый TBM
orignal
если за 200 мс пришел следующий мы добавляем 50 мс к этому интревалу
orignal
и уже смотри если за 250 мс пришел ли
onon
Ну посчитай примерно сколько реальный роутер может просить туннелей ну и сделай такой лимит
orignal
и каждый следущий пришел дропаем и добавляем 50
orignal
вполть до секунды
orignal
если пришел уже после интервала обнуляем
orignal
то есть логика что чем больше шлют тем больше дропаем
onon
Это от одного и того же ройтера?
orignal
это на пир
orignal
да
orignal
с одного пира
onon
Нужно посчитать сколько реальный роутер может запросить
onon
Без этого сложно о чём-либо судить
orignal
ну я замеры делал
onon
Давай подробнее
orignal
бывало что и больше 10 за 200 миллисекунд
orignal
ну смотри в коде если были дропы то я печатаю в лог
onon
Ты же сам хотел много-много туннелей для торрентов
onon
Я имею в виду не атакующего а нормального
orignal
так а ты думаешь они все через один пир строятся?
orignal
у меня если ты посмотришь ограниние на выбор первого хопа
onon
Ну если там trusted...
orignal
если только что выбрали то не выбираем
onon
Если это реальный роутер одновременно запросил много туннелей после старта
orignal
значит для них надо запршивать с задержкой
onon
Сколько он может запросить
orignal
так он запросит у разных роутеров
orignal
с чего он через один то пойдет?
onon
он с trusted
onon
Через один пир доверенный работает
onon
И никто о нём больше не знает
orignal
для trusted надо иначе
onon
Ну роутеру, через который он строит ему пофиг
onon
Ему прилетит сразу пачка
onon
Вот нужно понять сколько там может быть
orignal
ну так говорю же если trusted надо с задрежкой слать
onon
И будут ли проблемы если их частично или все подропают
onon
Не лезь так глубоко
onon
Если этому роутеру с trusted не придут ответы, что будет
onon
Он просто через 30 сек попытается снова так?
onon
А не сразу
onon
Или спамит начнёт?
onon
Т.е. может ли нормальный роутер начать себя вести как плохой
orignal
спамить не начет у пула случайные задержки де
orignal
нет
onon
Значит нормально всё
orignal
это продумано
onon
Токен бакет и норм
onon
Ну или как ты предложил
onon
С дропом и пролонгацией "бана"
onon
Но конкретные цифры нужно тестировать я так думаю
orignal
const int TUNNEL_POOL_MAX_NUM_BUILD_REQUESTS = 3
orignal
3 тоннеля за раз может только высрать
onon
Во
onon
А это за какой период времени
onon
За 8 сек?
orignal
за раунд счас скажу
onon
Или это только для одного дестинейшена
orignal
для пула
orignal
но пулы строят в разное время
R4SAS
веселимся?
orignal
m_NextManageTime = ts + TUNNEL_POOL_MANAGE_INTERVAL + (tunnels.GetRng ()() % TUNNEL_POOL_MANAGE_INTERVAL)/2;
orignal
приветствую
orignal
можешь соню прописать владельцем #openbsd ?
onon
Что-то хотел у тебя спросить но забыл что
R4SAS
какую соню?
orignal
sonya которая
orignal
const int TUNNEL_POOL_MANAGE_INTERVAL = 10; // in seconds
orignal
то есть попытки строить через случайные 10-15 сек
orignal
так что нормально все
R4SAS
без онлайна не получится
onon
А сколько таких пулов может быть
orignal
только что была вроде
orignal
ну тогда потом - не горит
onon
nologin - это она
orignal
так у каждого свой тайменг
orignal
так надо чтобы она авторизовалась
onon
Ну вот у нас получается минимальный лимит 3 за 100 мс
orignal
короче логика такая: первый TBM пропускаем, второй тоже пропускаем но прибавляем, третий дропаем
onon
Или за 200 я хз
orignal
значит 3
onon
Почему
onon
С запасом нужно брать
orignal
ну значит дропаем 4
orignal
но уже за 300
onon
Ну может ещё совпасть что и через этот хоп к нам кто-то строит
orignal
у trusted то?
onon
ЧТоб не было лжных срабатываний
orignal
там же нет транзита
onon
Нет мы сейчас про разовый
onon
Про обычный роутер
onon
он же так же может в теории 3 запроса одновременно слать
onon
К одному роутеру
onon
Если в дестинейшене первый хоп доверенный
orignal
может
orignal
но маловерятно что чрезе этот хоп пойдет какой то транзит
onon
Ну почему же
orignal
точнее запрос на него
onon
Там транзит может быть включен
R4SAS
обновил на транк на основных узлах
orignal
ну и прям в это время будет запрос?
onon
Только для конкретного дестинейшена ограничение
onon
Совпадёт так
orignal
ну при след попытке построит
onon
У нас большая сеть, вероятность есть
onon
А ты так хочешь прям впритык зажать
onon
Чтоб пространства для манёвра не было
onon
Я так не люблю
onon
Мало ли что будет завтра
orignal
ну хорошо посл 5 ого
orignal
пойдет?
onon
За какое время
onon
Давай ещё раз
orignal
R4SAS заметь что и не шатает
onon
R4SAS, ты ретрансмиты увеличил?
onon
На ирц
orignal
5 ого да 450 миллисекунд
orignal
за
orignal
нет я ему не сказал
orignal
не успел
onon
Ну вот так сходу кажется нормально
onon
За полсекунды 5 запросов
onon
А если дальше потоком идёт то всё дропаем
onon
А если перерыв то снова пускаем
onon
Главное чтоб атакующий не начал так подстраиваться
onon
Делая паузы по 50 мс
onon
Или сколько ты там планируешь
orignal
а если будет делать паузы то и атаки не будет ))
onon
Может чуть больше время бана делать
orignal
ведь суть атаки в большом потоке
orignal
я бан не делаю
orignal
я только дропаю
onon
Имею в виду дропать
onon
Если пришёл в этот период
R4SAS
нет, не трогал пока что
R4SAS
ты мне говорил какой то параметр крутить, но я не трогал
orignal
если сделать бан то атакующий сможет легко всех перебанить
orignal
R4SAS так это новый параметр
onon
R4SAS, вот пропиши себе в конфиг сразу
R4SAS
а, ну значит был старый
onon
Чтоб после рестарта потом подхватился
R4SAS
и... я его крутил только на ирке походу
orignal
тот параметр это про атаки
onon
Нам главное сделать так чтобы обычный роутер никак не смог попасть в петлю
onon
Когда он шлёт запросы а они все дропаются
R4SAS
крч потом
R4SAS
я думаю такими темпами не 7-го числа будет)
orignal
да почему? 7-ого самое время
onon
Наоборот раньше нужно, чтоб атакующий обломался
orignal
чтобы загасить атаку
orignal
я же говорю атакубщий явно подстаивался под релиз
orignal
но не знал что его отложили на 2 недели
R4SAS
ну если уже точно готово решение
orignal
так да готово все как надо
orignal
либо он либо я
onon
Обои два
R4SAS
надо подготовить машинку под армы
R4SAS
она пока что в отрубе
orignal
ну арм можно попозже собрать
orignal
я забыл для линка тот параметр тоже указать
R4SAS
i2p.streaming.profile=2 ?
orignal
нет
onon
i2p.streaming.maxResends = 20
orignal
i2p.streaming.maxResends=15
orignal
по умолчанию 8
onon
Ну не жадничай 16 хотя бы сделай
onon
=)
onon
В общем с этим порешали
onon
Ещё есть вопросы, требующие моего внимания?
orignal
пока нет
R4SAS
i2cp.leaseSetEncType = 4 сделаю теперь еще для клиентов
orignal
а 4,6 не хочешь?
orignal
дефолтный
R4SAS
а, ну давай
R4SAS
я просто 0 до сих держал
orignal
ну так счас так
orignal
0 выпиливай
orignal
оставь только в госткойне
orignal
кроме того 0 это вектор атаки
orignal
и кое кто о нем знает
R4SAS
а i2cp.leaseSetType?
orignal
там всегда 3 если не шифрованный
R4SAS
ну тогда оставлю
orignal
#if OPENSSL_PQ
orignal
std::string encType = GetI2CPStringOption(section, I2CP_PARAM_LEASESET_ENCRYPTION_TYPE, isServer ? "6,4" : "6,4,0");
orignal
#else
orignal
std::string encType = GetI2CPStringOption(section, I2CP_PARAM_LEASESET_ENCRYPTION_TYPE, isServer ? "4" : "4,0");
orignal
#endif
orignal
короче вот так счас по умаолчанию
R4SAS
ок
orignal
для клиентов 0,4
orignal
так что меняй на 6,4 если PQ
orignal
или только 4 если нет
R4SAS
да просто уберу
R4SAS
само как надо поставил
R4SAS
поставит*
orignal
так для клиентов оно с 0 ставит
orignal
оно тебе надо?
R4SAS
ну я имел в виду серверный туннель ирка для клиентов))
orignal
а ну там 6,4
orignal
кстати
orignal
для клинтского ирк тоннеля к этому ирку можешь написать i2p.streaming.dontSign=true
orignal
вообще для любого который не соединяется с джавой
orignal
зачем подписывать если подписать все равно не проверяется?
orignal
*подпись
R4SAS
хех
tetrimer_
Проверил еще раз на паре машин. Ставим P - за десять минут набегает 10тыс транзитов, ставим O - значительно меньше, при L - вообще на уровне погрешности.
tetrimer_
X - не пробовал ставить.
orignal
а теперь попробуй в тоннеле написать i2p.streaming.profile=2
orignal
тогда по логике тоннели должны лучше строится
orignal
ой бля onon ушел
orignal
может ввести еще 3 только через L стоить
tetrimer_
Ок, сейчас попробую.
orignal
интересное наблюдение
orignal
* ERROR from server irc.r4sas.i2p[127.0.0.1]: Closing Link: [127.14.136.87] (Throttled: Reconnecting too fast)
orignal
R4SAS
WebClient37
btw my ipv6 only router is fine, no heavy load