dadv: (chuck)
Choose your future ([personal profile] dadv) wrote2015-12-17 12:29 am
Entry tags:

Hetzner и eDNS

Оказалось, что немецкий хостер-лоукостер Hetzner в порядке защиты своей инфраструктуры от атак режет, в частности, входящие фрагментированные пакеты UDP, что в современном интернете частично ломает DNS-сервис. Проблема актуальна только тем, кто держит собственные DNS-серверы на физических или виртуальных серверах в Hetzner.

Детально проблема расписана в базе знаний ISC (наш случай - пункт 4. DNS queries/responses using EDNS are allowed, but UDP fragmentation and reassembly is broken), но решение достаточно простое - настроить свой DNS-сервер сообщать другим серверам не посылать требующие фрагментации ответы. Этакий аналог TCP adjust mss, но для DNS через UDP. Более крупные ответы будут доставляться сразу по TCP вместо UDP.

Для сервера BIND достаточно прописать в секции options:

options {
  edns-udp-size 1432;
}

[identity profile] dadv.livejournal.com 2015-12-17 09:42 am (UTC)(link)
Какую проблему решает такая фильтрация?

[identity profile] dmarck.livejournal.com 2015-12-17 11:39 am (UTC)(link)
DDoS mitigation при невозможности тречить UDP flows, очевидно?

[identity profile] dadv.livejournal.com 2015-12-17 12:24 pm (UTC)(link)
А зачем нужен трекинг UDP?

[identity profile] dmarck.livejournal.com 2015-12-17 12:26 pm (UTC)(link)
не UDP как такового, а UDPflows: в фрагментах же нет номера порта

[identity profile] dadv.livejournal.com 2015-12-17 12:29 pm (UTC)(link)
Это ясно, что нету номера порта и что речь о потоках. Зачем нужно трекать потоки?

[identity profile] dmarck.livejournal.com 2015-12-17 12:34 pm (UTC)(link)
чтобы порезать "плохие" фрагменты, которыми чаcnj DDoS'ят, пропуская "хорошие"

[identity profile] dadv.livejournal.com 2015-12-17 12:39 pm (UTC)(link)
Но ведь режут-то не плохие фрагменты, а все и всегда - есть ли DDoS или нет его. Лекарство не должно быть хуже болезни.

[identity profile] dmarck.livejournal.com 2015-12-17 12:43 pm (UTC)(link)
Ну, мы об одном и том же, в общем-то ;)

мы решили промежуточным способом: фрагменты сильно зарейтлимитили

(Anonymous) 2015-12-19 03:22 pm (UTC)(link)
Я не вижу смысла передавать внутрь сети куски атак методом NTP/DNS-усиления. Которая будет грузить аплинки рэков или порты кастомеров.

[identity profile] dadv.livejournal.com 2015-12-19 07:27 pm (UTC)(link)
Но ведь это гробит не только флуд, но и полезный трафик, а какой смысл в "лекарстве", которое вредит?

[identity profile] mikkotlv.livejournal.com 2015-12-21 03:40 am (UTC)(link)
По моей статистике 1-2 недовольных кастомеров в год, воспринимаю это как неизбежное зло.

[identity profile] dadv.livejournal.com 2015-12-21 07:12 am (UTC)(link)
А ведь можно было не ломать eDNS и довольно просто.