Патчкорд
2.42K subscribers
203 photos
18 videos
59 files
2.97K links
Блог сетевого инженера. Новости телеком, IT и около IT. Связь - @UrgentPirate
Download Telegram
freeRouter - свободная opensource реализация маршрутизатора на Java с обширным набором возможностей. framerelay и vxlan как нечего делать. Попробовать в консоли можно подключившись telnet dl.nop.hu (у меня сильно тормозит). Можно скачать в виде готового образа для виртуалки или как jar.
Если не привязываться к вендору, а рассматривать только протоколы и принципы - отличный инструмент для понимания многих вещей, ради которых иной раз ничего кроме как физического устройства и не найдёшь.
Проект развивается постоянно начиная с 2009.
Vim или Emacs, сколько уже копий сломано. Казалось бы что ещё сказать, но нет, теперь у нас есть vim.dev и emacs.dev и не надо их встречать по одёжке (доменному имени). emacs.dev был зарегестрирован раньше на несколько часов.
Но это шутки. Без шуток про Vim можно найти полный, официальный, актуальный справочник online по этой ссылке vimhelp.org. Про Emacs не знаю, потому что я уже выбрал.
Сети крайне неустойчивые конструкции, просто потому что сложные. Интернет так вообще очень сложен. Неосторожное движение может привести к катастрофе, а уж если задастся целью что-то сделать. Банальная история - абонент положил провайдера (опять автоконфигурация, на этот раз wpad), провайдер обиделся, зря конечно. Абонент хоть и приносит деньги, но он с другой стороны - защищать его от Интернета надо не в меньшей степени чем защищать Интернет и свою сеть от абонента, а то и в большей.
Шикарная ссылка, которую прислал читатель канала. Вполне приличный и безопасный на вид пароль ji32k7au4a83 оказывается на поверку, если я правильно понял, транслитом с китайского по системе Чжуинь фухао, переводится как "my password", и встречается в различных утечках аж 141 раз.
https://gizmodo.com/why-ji32k7au4a83-is-a-remarkably-common-password-1833045282

И тут с подачи читателя, в кои-то веки пришла в голову идея. Наберем в https://haveibeenpwned.com/Passwords "мойпароль" в латинской раскладке — vjqgfhjkm, и получим 9635 использований в различных взломах. Неплохо, да.

Еще больше упростим задачу, и наберем слово "пароль" — gfhjkm.

Oh no — pwned!
This password has been seen 262,774 times before
This password has previously appeared in a data breach and should never be used. If you've ever used it anywhere before, change it!

ДВЕСТИ ШЕСТЬДЕСЯТ ДВЕ ТЫСЯЧИ СЕМЬСОТ СЕМЬДЕСЯТ ЧЕТЫРЕ ИСПОЛЬЗОВАНИЯ

ААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААА
Когда пытаются балансировать трафик на внешних каналах между AS обычно используют несколько первых шагов из алгоритма выбора лучшего пути BGP, при этом какие-то вопросы возникают только со входящим трафиком. С исходящим набор инструментов включает в том числе автоматическую балансировку по нескольким маршрутам bgp multipath и даже с учётом нагрузки bgp dmzlink-bw, не говоря уже обо всех возможностях просто маршрутизации, PBR, VRF. Полный контроль.

Со входящим трафиком используют community, сейчас это обычное дело у многих они определены и работают. Или AS_PATH препенды. Редко кто добирается до MED, вместо этого, как правило, идёт в ход артиллерия more specific префиксов. Меньше /24 в большом Интернет вряд ли заработает их и так уже скоро 60%, но метод действенный.

Однако алгоритм из 13 пунктов, а мы дальше 6 не двинулись. Есть одно шаманство куда можно атаковать - 10 пункт предписывает выбрать при прочих равных маршрут который уже является лучшим, получен первым. Это условие вносит некоторую неопределённость, чтобы убрать её есть команда bgp best path compare-routerid. Но она есть и это RFC5004 и её можно использовать. У Cisco включено по умолчанию, у Bird выключено.
Итак, нам надо поменять порядок маршрутов на удалённом узле, чтобы лучший маршрут через нужное нам направление был выбран. Убираем анонсы через какой-то свой аплинк или понижаем им приоритет добавив препенд. Тогда трафик из этого аплинка убежит, так как будет выбран другой лучший, а если всё вернуть как было трафик вернётся обратно, но не совсем весь. Ведь процесс на удалённых BGP маршрутизаторах, при прочих равных выберет маршрут который уже был лучшим, через другой наш аплинк. На этом можно сыграть, чтобы чуть-чуть добавить или убрать трафик.

Но предсказать такое поведение с точностью что сейчас мы перестроим X мегабит/c трафика нельзя, поэтому это злейшее шаманство. С большой вероятностью разницу не будет видно, как минимум алгоритм лучшего пути зависит от вендора и им можно управлять. Может будет видно сильнее ожидаемого, коррективу внесут повсеместные CDN с их умными балансировками. Эффект может быть отложенным, BGP в мировом масштабе вообще не сходится никогда. Это может сработать один раз и не сработать другой. Причин не использовать гораздо больше чем использовать, если хочется строить стабильную и прогнозируемую сеть.

Интернет трафик в силу своей непредсказуемой природы в принципе сложно сбалансировать точно, плюс минус гигабит/c может изменится в течение одного часа. Но закономерности можно найти и они в первую очередь будут зависеть от источника внутри своей сети, на что мы всесильны влиять. Поэтому знать это и анализировать кто в сети пользуется и какими ресурсами, во сколько, как много, очень сильно помогает. Как минимум позволит отделить постоянную и периодические составляющие от неоднородностей, определить для чего нужны низкие задержки, а для чего нужна большая полоса. После этого как правило достаточно совершенно простых методов в рамках обычных механизмов маршрутизации, чтобы малыми усилиями (исходящим трафиком) изменить входящий, оставив всякие шаманства за бортом.

На картинке пример того как трафик убежал и не вернулся весь (телеграм немного поджал картинку, но я думаю эффект виден). Пример не искусственный, а следствие аварии. Весь период на графике 20 минут, но эффект сохранился и дальше если смотреть суточный график. Объём который не вернулся около гигабита/c, это единицы процентов от всего трафика.
Коллега поделился ссылкой на скрипт который растит дерево, правда меленькое - бонсай https://gitlab.com/jallbrit/bonsai.sh. Автор очевидно может ставить галочку напротив пункта "Посадить дерево".

P.S. Когда-то давно, была похожая демка которая растила фрактальное дерево. Бесконечно можно за подобным наблюдать.
Собрать метрики и смотреть на графики - это хорошо, но мало. Настроить пороговые значения, завести триггеры - это самый минимум. Настроить зависимости событий, включить аналитику по статистике, настроить прогнозирование и триггеры на ожидаемые события - с этим уже можно работать.
Прикрутить машинное обучение и можно увольнять сисадминов. Статья обзорная, больше про результаты и используемые инструменты чем про модели. Хороший, современный, настоящий мониторинг без которого сложно обойтись имея даже 10 устройств не говоря уже о сотне. Ведь каждое из них генерирует ежеминутно, ежесекундно сотню если не тысячу метрик.
ClickHouse, кстати хорош, тоже его используем для сбора.
Вдогонку, как всё-таки сделать мониторинг чуть умнее не используя ИИ (но когда нибудь он победит). Пример для Prometheus. Ничего сильно специфичного там нет, система мониторинга просто должна иметь возможность выбирать и сравнивать уже сохранённые данные и не сильно их загрублять, а общий подход даёт математика и никуда от этого не убежишь.
За ссылку и комментарии большое спасибо нашему читателю, я всегда рад этому.
Базовывые настройки SNMP третьей версии у разных производителей, немного теории и примеры конфигураций.
Не могу сказать почему надо использовать v3, про авторизацию и шифрование все вроде знают, но всё равно не используют. Сдаётся мне что телеметрия будет скоро популярней чем SNMPv3 и вообще SNMP для целей мониторинга.
Картинка вообще хорошо отражает ситуацию с ICMP PMTUD, а не только то что происходит в списке рассылки Nanog. На который стоит подписаться потому что это, наверное, самое большое и активное комьюнити интернет-сетевиков, формально американских, но с глобальными вопросами.
Shodan как сервис:

pip install shodan
shodan init APIKEY
shodan alert create "Alert Name" IP list
shodan alert enable ALERTID type|any

Сообщения о найденных открытых службах приходят на почту или можно в консоли так же смотреть.
GitHub присутствует, там не только консольная утилита, а целый модуль для Python.
5 вещей которые делают IT современным, но я в два слова скажу облака в широком смысле и Sensu про который я впервые услышал. Буду смотреть что за зверь. Ruby меня настораживает (может и зря), но есть и Go вариант.
Самая частая авария если у вас расставлено оборудование по всему городу это отключение электричества. Практически каждый будний день, часто в выходные и в праздники то же. Это не авария для энергетиков - они эти работы планируют. С недавних пор, видимо, прочитали книги про клиентоориентированность и стали отключать ещё и ночью (днём меньше отключать не стали). Случается что это авария и для них, что-то отгорает или кабели рвут. Но как правило это всё же работы на каком-то из уровней домовых, районных или городских служб.

Иногда это случается в рамках страны, прямо сейчас в Венесуэле (или прямая ссылка на Oracle Internet Intelligence). Без электричества интернет не работает, как бы не хотелось это провайдеру.

И это проблема, так как расставить и поддерживать на каждом доме свой ИБП для каждого коммутатора очень затратно (PON и DSL провайдеры сейчас улыбаются). В лучшем случае индивидуальные резервы по электричеству получат супер-пупер вип клиенты, но они за это заплатят может и не зная об этом. Для остальных работает правило - нет электричества в доме, нет его и в квартире, нет и интернета. Но у кого-то есть ИБП, электричество могут отключить по подъездно и это действительно сложный вопрос. Спасает то, что у энергетиков рабочий день совпадает с большинством граждан и никто ничего не замечает.

Венесуэле скорейшего восстановления, без электричества не только интернет не работает, каким бы важным он не казался.
NAT не синоним файрвола. Очень часто говорят что "NAT is NOT security", но по большому счёту ничто не является безопасностью. Безопасность строится из многих компонентов и NAT, в том числе, может играть в этом положительную роль.

В статье простой пример как используя спуфинг и зная состояние трансляции NAT можно подделывать ответы. Сделано на Linux, все команды в комплекте. В общем смысле это работает, но сложности добавляет большое количество стандартов и "типов" NAT и ещё большее количество реализаций которые следуют не обязательно всем стандартам. Итого получает такую мутную воду, в которой как с одной стороны безопасности, так и с другой её стороны получить качественный результат бывает сложно. Но надеяться на то что NAT вас защитит определённо не стоит.
Обширный и очень подробный труд (PDF) о том как используя NetFlow обнаруживать успешные атаки на SSH и Web приложения, когда используется перебор паролей. Выводятся конкретные метрики на основе анализа потоков. Графики, формулы присутствуют. Также присутствуют ссылки на реализацию методов и применяемые инструменты, например, SSHCure или IOS DDoS Detection.
Наверное, стоит сделать скидку на время публикации, прошло 5 лет. Если не хочется читать, коротко суть про SSH можно увидеть здесь.
Когда жёсткий диск не просто жёсткий диск. Интересно что в человеке очень глубоко сидит потребность очеловечивания с самых древних времён и юмор.
Там дальше в треде ещё есть. Очень крутой (V:) - Pacman drive V.
Однажды к нам пришли awesome списки. За ними пришли awesome списки awesome списоков. А теперь вот и поиск по всему этому добру появляется:

https://awesomelists.top/

#линк #github
Так стоит или не стоит переходить на whitebox'ы небольшим провайдерам и что изменилось за несколько лет развития данной концепции. Автор считает что стоит. Рассматриваются несколько аспектов - энергоэффективность, цена, сквозная техподдержка, функциональность, зрелость. Если раньше это было доступно только большим игрокам со своим штатом программистов, то сейчас всё доросло до уровня массового использования.
В пределе это вероятно дойдёт до ситуации: универсальное железо плюс универсальная ОС - конструктор который можно собирать как персональный компьютер (возможно из тех же запчастей), но пока я не видел рабочих решений чтобы можно было прикоснуться в рамках моей досягаемости. Хотя и слышал что у кого-то что-то есть, где-то. Несомненно, сейчас уже очень широко используются решения: софт плюс универсальное железо. но при этом не универсальная область применения, но это чуть другое. Дизинтеграция победит конечно в ближайшей перспективе, но потом спираль сделает ещё один виток...