Size: a a a

2020 October 30

K

Kolunchik in Accel-PPP
👍
источник

MM

Maksim (M) M. in Accel-PPP
Dmytro
Не спрашивайте, зачем, но озаботился ограничением скорости dhcp discover пакетов. Всегда считал, что на начальных этапах работы этого протокола используется raw сокеты, который для iptables недостижимы, ввиду более поздних хуков. Какое же было мое удивление, когда я поймал discover именно в iptables и в цепочке input. heх-последовательность в дампе для dhcp message type: discover составляет 35 01 01. Это легко увидеть в wireshark.
Дальше через модуль string ловим, а через limit - насилуем.
Как-то так:
--new-chain DHCP_LIMITER
--flush DHCP_LIMITER
-A INPUT -i bond1.+ -p udp -d 255.255.255.255 --destination-port 67 -m string --algo kmp --hex-string "|35 01 01|" -j DHCP_LIMITER
-A DHCP_LIMITER -m limit --limit 100/sec --limit-burst 3 -j RETURN
-A DHCP_LIMITER -j DROP
Зажал limit - количество starting сессий в accel уменьшилось. Разжал - вернулось в норму.
а что по нагрузке на cpu ? pert top чтобы сказал с правилами и без ?
источник

S

Sergey in Accel-PPP
Dmytro
Не спрашивайте, зачем, но озаботился ограничением скорости dhcp discover пакетов. Всегда считал, что на начальных этапах работы этого протокола используется raw сокеты, который для iptables недостижимы, ввиду более поздних хуков. Какое же было мое удивление, когда я поймал discover именно в iptables и в цепочке input. heх-последовательность в дампе для dhcp message type: discover составляет 35 01 01. Это легко увидеть в wireshark.
Дальше через модуль string ловим, а через limit - насилуем.
Как-то так:
--new-chain DHCP_LIMITER
--flush DHCP_LIMITER
-A INPUT -i bond1.+ -p udp -d 255.255.255.255 --destination-port 67 -m string --algo kmp --hex-string "|35 01 01|" -j DHCP_LIMITER
-A DHCP_LIMITER -m limit --limit 100/sec --limit-burst 3 -j RETURN
-A DHCP_LIMITER -j DROP
Зажал limit - количество starting сессий в accel уменьшилось. Разжал - вернулось в норму.
accel и большинство ПО ловит dhcp нормальными средствами и можно блочить через iptables, а вот isc dhcp - через жопу, да
источник

S

Sergey in Accel-PPP
источник

S

Sergey in Accel-PPP
тут пишут что это всё из bsd-унов
источник

D

Dmytro in Accel-PPP
По загрузке разницы я не заметил, но тут два фактора.
1. Прогоняем небольшой трафик через эту цепочку, все-таки не гигабиты.
2. Машинка достаточно мощная: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
Просто у нас тут случилось неприятное событие: чувак пьяный или суицидник залез на опору ЛЭП 110кВ и прыгнул с нее, зацепившись за провода и из-за дуги сработала или защита или еще что, но примерно у 20000 абонентов моргнул свет, роутеры загрузились и наш биллинг сказал: "ой, всё". Поднимали долго и муторно. Подумалось: раз вопрос с архитектурой баз - это надолго, то в ходе временных костылей как-то придержать скорость запросов на авторизацию, чтобы пусть оно 15 минут восстанавливаться будет, но не же 4 часа.
источник

D

Dmytro in Accel-PPP
должен был выскочить ksoftirq, так как в этом контексте обрабатываются эти правила iptables. Но он даже не в топе.
источник

S

Sergey in Accel-PPP
можно было полисером на свитче ближайшем к брасу подрезать
источник

S

Sergey in Accel-PPP
по broadcast mac если у вас l2 connected
источник

s

shumbor in Accel-PPP
Так стандартный conlimit акселя не спас? Правда на dhcp не проверял, у меня по up/pptp
источник

D

Dmytro in Accel-PPP
Можно и на свиче, но мне на linux показалось это быстрее, тем более, надо именно discover пакеты выделять. На свиче с наскоку какие-то acl строить, - попробую на досуге.
источник

D

Dmytro in Accel-PPP
shumbor
Так стандартный conlimit акселя не спас? Правда на dhcp не проверял, у меня по up/pptp
Он спасает от одного флудящего источника (клиента), а общий снежный ком - увы, не разгребет.
источник

s

shumbor in Accel-PPP
Тогда max start?
источник

D

Dmytro in Accel-PPP
shumbor
Тогда max start?
Это самое правильное, но у меня 1.12.0 и там этой опции еще нет, а на продакшене я пока не могу обновить. Говорю же, костыль. 😊
Потом, конечно сделаю.
источник

DC

Danilo Cruz in Accel-PPP
Dmytro
Не спрашивайте, зачем, но озаботился ограничением скорости dhcp discover пакетов. Всегда считал, что на начальных этапах работы этого протокола используется raw сокеты, который для iptables недостижимы, ввиду более поздних хуков. Какое же было мое удивление, когда я поймал discover именно в iptables и в цепочке input. heх-последовательность в дампе для dhcp message type: discover составляет 35 01 01. Это легко увидеть в wireshark.
Дальше через модуль string ловим, а через limit - насилуем.
Как-то так:
--new-chain DHCP_LIMITER
--flush DHCP_LIMITER
-A INPUT -i bond1.+ -p udp -d 255.255.255.255 --destination-port 67 -m string --algo kmp --hex-string "|35 01 01|" -j DHCP_LIMITER
-A DHCP_LIMITER -m limit --limit 100/sec --limit-burst 3 -j RETURN
-A DHCP_LIMITER -j DROP
Зажал limit - количество starting сессий в accel уменьшилось. Разжал - вернулось в норму.
/pt
источник

J

John Roe in Accel-PPP
Dmytro
Не спрашивайте, зачем, но озаботился ограничением скорости dhcp discover пакетов. Всегда считал, что на начальных этапах работы этого протокола используется raw сокеты, который для iptables недостижимы, ввиду более поздних хуков. Какое же было мое удивление, когда я поймал discover именно в iptables и в цепочке input. heх-последовательность в дампе для dhcp message type: discover составляет 35 01 01. Это легко увидеть в wireshark.
Дальше через модуль string ловим, а через limit - насилуем.
Как-то так:
--new-chain DHCP_LIMITER
--flush DHCP_LIMITER
-A INPUT -i bond1.+ -p udp -d 255.255.255.255 --destination-port 67 -m string --algo kmp --hex-string "|35 01 01|" -j DHCP_LIMITER
-A DHCP_LIMITER -m limit --limit 100/sec --limit-burst 3 -j RETURN
-A DHCP_LIMITER -j DROP
Зажал limit - количество starting сессий в accel уменьшилось. Разжал - вернулось в норму.
Não pergunte por que, mas preocupado com o limite de velocidade de pacotes dhcp discover. Sempre acreditei que, nos estágios iniciais deste protocolo, os soquetes raw são usados, o que é inatingível para iptables, devido a Ganchos posteriores. Qual foi a minha surpresa quando peguei o discover precisamente no iptables e na cadeia input. a sequência Hex no despejo para dhcp message type: discover é 35 01 01. É fácil ver isso no wireshark.
Em seguida, através do módulo string, capturamos e, através do limite, violamos.
De alguma forma:
--new-chain DHCP_LIMITER
--flush DHCP_LIMITER
-A INPUT -i bond1.+ -p udp -d 255.255.255.255 --destination-port 67 -m string --algo kmp --hex-string "|35 01 01|" -j DHCP_LIMITER
-A DHCP_LIMITER -m limit --limit 100/sec --limit-burst 3 -j RETURN
-A DHCP_LIMITER -j DROP
Limite apertado-o número de sessões de inicialização no accel diminuiu. Rebaixado-voltou ao normal.
источник

DC

Danilo Cruz in Accel-PPP
Dmytro
По загрузке разницы я не заметил, но тут два фактора.
1. Прогоняем небольшой трафик через эту цепочку, все-таки не гигабиты.
2. Машинка достаточно мощная: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
Просто у нас тут случилось неприятное событие: чувак пьяный или суицидник залез на опору ЛЭП 110кВ и прыгнул с нее, зацепившись за провода и из-за дуги сработала или защита или еще что, но примерно у 20000 абонентов моргнул свет, роутеры загрузились и наш биллинг сказал: "ой, всё". Поднимали долго и муторно. Подумалось: раз вопрос с архитектурой баз - это надолго, то в ходе временных костылей как-то придержать скорость запросов на авторизацию, чтобы пусть оно 15 минут восстанавливаться будет, но не же 4 часа.
/pt
источник

J

John Roe in Accel-PPP
Dmytro
По загрузке разницы я не заметил, но тут два фактора.
1. Прогоняем небольшой трафик через эту цепочку, все-таки не гигабиты.
2. Машинка достаточно мощная: Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
Просто у нас тут случилось неприятное событие: чувак пьяный или суицидник залез на опору ЛЭП 110кВ и прыгнул с нее, зацепившись за провода и из-за дуги сработала или защита или еще что, но примерно у 20000 абонентов моргнул свет, роутеры загрузились и наш биллинг сказал: "ой, всё". Поднимали долго и муторно. Подумалось: раз вопрос с архитектурой баз - это надолго, то в ходе временных костылей как-то придержать скорость запросов на авторизацию, чтобы пусть оно 15 минут восстанавливаться будет, но не же 4 часа.
Eu não notei a diferença no Download, mas há dois fatores.
1. Nós dirigimos um pequeno tráfego através dessa cadeia, ainda não gigabits.
2. A máquina é poderosa o suficiente: Intel(R) Xeon (R) CPU E5-2620 v4 @ 2.10 GHz
Apenas tivemos um evento desagradável aqui: um cara bêbado ou suicida subiu no suporte da linha de energia 110KV e pulou, prendendo os fios e, por causa do arco, a proteção funcionou ou algo assim, mas cerca de 20.000 assinantes piscaram a luz, os roteadores inicializaram e nosso faturamento disse: "Oh, tudo". Eles levantaram por um longo tempo e uma tarefa. Eu pensei: como a questão com a arquitetura das bases é por um longo tempo, durante as muletas temporárias, de alguma forma, mantenha a velocidade dos pedidos de autorização para que ele seja restaurado por 15 minutos, mas não por 4 horas.
источник

DC

Danilo Cruz in Accel-PPP
Dmytro
Это самое правильное, но у меня 1.12.0 и там этой опции еще нет, а на продакшене я пока не могу обновить. Говорю же, костыль. 😊
Потом, конечно сделаю.
/pt
источник

J

John Roe in Accel-PPP
Dmytro
Это самое правильное, но у меня 1.12.0 и там этой опции еще нет, а на продакшене я пока не могу обновить. Говорю же, костыль. 😊
Потом, конечно сделаю.
Isso é o mais correto, mas eu tenho 1.12.0 e essa opção ainda não está lá, mas na produção ainda não consigo atualizar. Já te disse, muleta. 😊
Depois, claro.
источник