Патчкорд
2.37K subscribers
191 photos
16 videos
58 files
2.94K links
Блог сетевого инженера. Новости телеком, IT и около IT. Связь - @UrgentPirate
Download Telegram
Мир (программирования и не только) катится к чёрту или уже там. Никита Прокопов в своём блоге про то как трава была зеленее и деревья выше, а сегодня никуда не годится. Всё по делу, правда по английски, но простым языком и с юмором, читается легко не смотря на большой объём. Не обошлось без манифеста лучшего мира.
Статья как раз для наступающей осени, порефлексировать о своём предназначении.
В Cisco IOS вилан и порт слабо связаны. Точнее связаны только в одном случае - в режиме access, а в режиме trunk любой вилан, не важно какой, просто пропускается и учёт его не важен. По этой причине ветка CISCO-VLAN-MEMBERSHIP-MIB .1.3.6.1.4.1.9.9.68.1.2 в принципе не покажет транковые порты. Что в режиме обобщённого вывода .1.3.6.1.4.1.9.9.68.1.2.1.1.2, где каждый вилан описывается HEX строкой принадлежности к порту побитно, начиная с первого порта. Что в группировке по портам .1.3.6.1.4.1.9.9.68.1.2.2.1.2 - здесь воспринимается попроще для человека.

Виланы на транковых портах надо вытаскивать отсюда CISCO-VTP-MIB .1.3.6.1.4.1.9.9.46.1.6. Это ветка VTP поэтому там много можно чего ещё вытащить, но разрешённые виланы switchport trunk allowed vlan сосредоточены в:
.1.3.6.1.4.1.9.9.46.1.6.1.1.4
.1.3.6.1.4.1.9.9.46.1.6.1.1.17
.1.3.6.1.4.1.9.9.46.1.6.1.1.18
.1.3.6.1.4.1.9.9.46.1.6.1.1.19

Каждая ветка содержит информацию о 1024 виланах, группировка по портам, каждый порт представлен строкой где каждый бит это вилан. Для первой ветки счёт с 0, для остальных надо сделать соответствующую поправку.

snmpwalk -v2c -c readonly -Ox 192.0.2.1
.1.3.6.1.4.1.9.9.46.1.6.1.1.4.49

iso.3.6.1.4.1.9.9.46.1.6.1.1.4.49 = Hex-STRING: 08 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

49 порт, разрешены виланы 4, 105, 191, 303, 316. Опция -Ox сделает приемлемый вывод в консоль. Native vlan прячутся в ветке .1.3.6.1.4.1.9.9.46.1.6.1.1.5.

Сложно? Но есть способ получше. Используем базовую ветку .1.3.6.1.2.1.17.1.4.1.2 - индекс порта, и комьюнити вида community@VLANID.

snmpwalk -v2c -c readonly@316 192.0.2.1
.1.3.6.1.2.1.17.1.4.1.2

iso.3.6.1.2.1.17.1.4.1.2.26 = INTEGER: 26
iso.3.6.1.2.1.17.1.4.1.2.49 = INTEGER: 49

Результат - список портов как транковых так и нет где этот вилан бриджуется (присутствует) . Возможно работает и на других ветках за пределами BRIDGE-MIB.1.3.6.1.2.1.17, но тут всё зависит от реализации. Автоматике всё равно, а человеку приятно.

З.Ы. MIB любезно предоставлены Cisco, без регистрации и СМС в отличие от их сайта ;)
Цикл из 6 статей о том как правильно зеркалировать и в целом захватывать трафик из сети. Рассматриваются в том числе организация процесса зеркалирования.
Много внимания посвящено основам Ethernet: хабы, коммутаторы, скорость, дуплекс - что полезно в не зависимости от необходимости зеркалирования и анализа трафика.
Для VSCode есть расширение для синтаксиса Cisco IOS. Исходники на Github. Ни разу не думал над тем чтобы использовать полноценный редактор, чуть ли не IDE, для подготовки конфигураций, но почему бы и нет. Вряд ли, конечно, такое на экзамене позволят ;)
Несколько сценариев работы с BGP в картинках - поставлена задача и написаны подходы к её решению. Написано не очень подробно (без конфигураций) и с BGP надо уже хорошо разбираться чтобы понимать что к чему, это именно сценарии использования. Хорошая основа чтобы собрать такую конфигурация в лабе и попробовать её решить. Есть вторая часть, посложнее. Картинки немного мелковаты, поэтому придётся масштаб подкрутить.
А ещё это такой современный тренд, Julia Evans, например, рисует комиксы и не только, а Microsoft мультики снимает.
24 сентября 1993 года вступил в силу RFC1519 "Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy" (был опубликован 1 сентября) он дополнил и заменил собой RFC1338 "Supernetting: an Address Assignment and Aggregation Strategy". RFC1597, в будущем RFC1918 где определили частное адресное пространство появился только спустя полгода 1 марта 1994.

Решали очевидную, даже в то время проблему Eventual exhaustion of the 32-bit IP address space. При этом в тексте приводятся сведения о размере таблицы маршрутизации, которая на декабрь 1992 года составляет 8561 запись. Сейчас больше 730000 и мы ещё держимся.

Очень заметный RFC предопределивший облик всех современных сетей.
Больше 200 вопросов разного уровня, которые могут встретиться на собеседовании для *nix администраторов. Помимо уровней сложности начальный и продвинутый, есть также разделение по специфике - сети, безопасность, devops. Ответы присутствуют, но не для всех вопросов.
Пригодится не только для собеседований, но и как шпаргалка по некоторым часто встречающимся задачам.
Если хочется покрасивее, чтобы подсветка синтаксиса, меньше опций командной строки то меняем curl на HTTPie (Python).
А стандартный клиент mysql меняем на mycli. Есть аналогичные утилиты и для других БД того же авторства. Вопрос привычки больше, я SQuirreL SQL невероятно древней версией пользуюсь до сих пор, вроде ничего - сделать пару запросов в месяц хватает.
Чтобы отследить общую доступность на интерфейсе в слоёном пироге из уровней, не подкручивая в отдельности каждый из протоколов можно использовать BFD. Простое объяснение с базовым конфигом как это работает на howdoesinternetwork.com.

Очень удобен для BGP сессий, где таймеры по умолчанию десятки секунд. В то же, время для этого нужна добрая воля обеих сторон, а это, учитывая пограничную природу протокола, бывает проблематично. Аналогичная история с парольными сессиями.
Количество LIR в RIPE NCC достигло 20000. А всё потому что IPv4 адреса в обозримом будущем совсем пресовсем кончатся, а каждому новому LIR всё ещё дают /22 в руки. Кроме того, одной организации можно сколько угодно LIR открывать, на диаграмме в тексте видно что у кого-то больше 60 открытых LIR.
Правда и закрывают LIR много, после трансфера который возможен только через 24 месяца, лишняя сущность становится не нужна. На первом месте по количеству LIR Британия, Россия и Германия.
Безудержный оптимизм на сайте https://disableipv4.se/ - инструкции для Windows и MacOS, но пока это фальстарт. Большой Интернет не позволит вам этим насладиться. А вариант отключить IPv6 есть (или нет), но делать это тоже не стоит.
Если вас ещё волнуют уязвимости Spectre и Meltdown, включая и последние находки, то эта утилита для Windows позволит проверить степень взволнованности. Встроенная защита Windows будет ругаться на не подписанного издателя. Бинарники качаются с Github.
Для тех кто не очень глубоко погрузился во все эти проблемы - автор говорит: "Чем больше зелёного тем лучше"
Публичный инструмент HE для просмотра списка политик для пиров. Можно задать ASn (в примере для AS12322) и посмотреть что отфильтровано и состояние принятых маршрутов на POP. На отдельной страничке - применяемый алгоритм фильтрации для всех.
Отличный пример правильного (прозрачного) поведения для всего сообщества Интернет.
ISC теперь собирает бинарные пакеты BIND для Windows, Centos, Ubuntu и Fedora. Цель - обеспечить актуальность со всеми исправлениями, включая необходимые зависимости. Своими силами должно получаться быстрее и надёжнее.
Все нужные ссылки для скачивания и на инструкции присутствует в тексте.
В Калифорнии запретили иметь не уникальные пароли на устройствах. Наличие Силиконовой долины накладывает конечно свой отпечаток в законах (за сетевой нейтралитет именно там сильнее всего борются). Но здесь много вопросов - слишком конкретная и узкая регуляция, такое как правило плохо работает или легко обходится. В статье много ссылок на возникшие споры и проблематику. С безопасностью в этом вопросе конечно беда, но так дела скорее всего не исправишь.
Каждая уважающая IT компания обязана сделать свой язык программирования. Facebook сделал Skip и выложил в Open Source. Hello world будет выглядеть так:

fun main(): void {
print_raw("Hello world!")
}

Можно посмотреть как работает мысль программистов Facebook, а можно сделать свой язык, ведь это на самом деле весело.
Для DNS UDP видимо потерян. TCP надёжнее и быстрее, не только TCP, конечно, протокол с поддержкой соединения.

Исходят в первую очередь из предпосылки что UDP теряется, что, наверное, верное если используется глобальный сервис от гигантов индустрии, но скорее не верно, если используется локальный DNS сервер. Дело в конечных клиентах (браузерах в первую очередь), они будут диктовать условия. При этом сервер будет нагружен сильнее, не критично сильнее, но в разы, это признаётся.

А ещё гвоздь в крышку гроба UDP для DNS вбивает шифрование, всеобщее. Если DNS остаётся не надёжным (криптографически), то ненадёжной остаётся вся система которую тааак долго строили.
Безопасность всей системы не выше чем самая небезопасная её часть. С некоторым допущением можно считать что каждый домашний роутер уязвим к атаке, как минимум в Америке. Список моделей в приложении к главному документу. Про русских хакеров, кстати есть, но зато про микротики нет. А их уже четверть миллиона находится в censys.io заражёнными CoinHive.
Безопасный периметр ничто, если внутри этого периметра небезопасно, к вопросу о тотальном контроле абонента и vCPE.