Обучающий канал по сетевому и системному администрированию. Сотрудничество: @dad_admin Биржа: https://telega.in/c/networkadm РКН: https://bit.ly/4ioc61C
Обзор Cisco Unified Communications Manager (CUCM)
Cisco Unified Communications Manager (CUCM) — это программная АТС для корпоративных IP-сетей, обеспечивающая маршрутизацию вызовов, управление голосовыми и видео-звонками, поддержку голосовой почты, конференц-связи и интеграцию с другими сервисами.
Первая версия CallManager 1.0 вышла в 1997 году.
Основные протоколы CUCM
CUCM поддерживает как собственные, так и открытые протоколы:
• SCCP (Skinny Client Control Protocol) – фирменный протокол Cisco для телефонов
• SIP (Session Initiation Protocol) – стандартный протокол для VoIP
• H.323 – используется для взаимодействия с другими VoIP-сетями
• MGCP (Media Gateway Control Protocol) – для управления шлюзами
Как работает CUCM
CUCM управляет сигнализацией вызовов, но сами аудио- и видеопотоки (RTP) передаются напрямую между устройствами.
Это значит, что если CUCM выйдет из строя, разговор продолжится, но функции управления вызовом (удержание, перевод, конференция) будут недоступны.
Дополнительно доступен CLI (Command Line Interface) для управления через консоль.
P4 и программируемые коммутаторы: кастомная обработка пакетов
P4 (Programming Protocol-independent Packet Processors) — язык для описания поведения сетевых устройств на уровне пакетов.
С его помощью можно создавать кастомные правила маршрутизации, фильтрации, модификации заголовков и многое другое без перепрошивки железа.
В отличие от классических коммутаторов, где поведение фиксировано, P4-коммутаторы позволяют:
• самостоятельно определять, какие заголовки и поля пакетов обрабатывать;
• писать собственные таблицы маршрутизации и фильтров;
• экспериментировать с сетевой логикой в учебных или тестовых сетях.
Эмуляция с bmv2
Чтобы попробовать P4 без физического железа, используют эмулятор BMv2. Он имитирует P4-коммутатор и позволяет загружать ваши программы.
Пример простой программы, которая меняет MAC-адрес назначения для всех входящих пакетов:
header ethernet_t {
bit<48> dstAddr;
bit<48> srcAddr;
bit<16> etherType;
}
parser MyParser(packet_in pkt,
out ethernet_t hdr) {
pkt.extract(hdr);
}
control MyIngress(inout ethernet_t hdr) {
apply {
hdr.dstAddr = 0x00_11_22_33_44_55;
}
}
control MyEgress() { apply { } }
control MyVerifyChecksum() { apply { } }
control MyComputeChecksum() { apply { } }
V1Switch(MyParser(), MyVerifyChecksum(), MyIngress(), MyEgress(), MyComputeChecksum()) main;
sudo apt install bmv2
p4c-bm2-ss simple_program.p4 -o simple_program.json
simple_switch --log-console simple_program.json
🚀⚙️ Хотите упростить свою работу в Linux? Научитесь писать скрипты с помощью Bash!
👉 Присоединяйтесь к открытому вебинару 25 августа в 20:00 МСК и разберитесь, как с помощью Bash автоматизировать рутинные задачи в Linux. Мы объясним, как работать с интерпретатором Bash, создавать переменные, использовать условия и циклы.
💪 Этот вебинар поможет быстро освоить базовые навыки Bash и научиться автоматизировать простые операции, что значительно упростит рабочий процесс.
🎁 Запишитесь на вебинар и получите индивидуальное предложение на курс «Administrator Linux. Basic».
👉 Для участия зарегистрируйтесь: https://otus.pw/eYKF/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
По мере того, как сети становятся сложнее и масштабнее, организации сталкиваются с растущими трудностями в поддержании точной, динамичной и безопасной сетевой инвентаризации.
Устаревшие системы, гибридные инфраструктуры и развивающиеся угрозы безопасности усложняют решение таких задач.
Готовые решения существуют, и, как всегда, есть различные “но”, вынуждающие либо идти на компромиссы или вложения дополнительных ресурсов, либо же раздувать штат соответствующих специалистов для увеличения охвата текущих задач по сетевой инфраструктуре.
В первой части статьи мы рассказали о нашей идеологии в инструментарии для поддержки и конфигурирования сети.
В этой части мы хотим детальнее рассказать о реализованных нами решениях по поднятым вопросам и размышлениям и поделиться результатами.
Прочитать можно здесь:⬇️
https://dzen.ru/a/aJx4knpIYn5Ct87m
VRF-lite: простая изоляция трафика без сложного оборудования
VRF-lite — способ изолировать трафик в одной сети без дорогого оборудования.
По сути, это создание нескольких виртуальных маршрутизаторов на одном устройстве, каждый со своей таблицей маршрутизации.
ip link add vrf-blue type vrf table 10
ip link set dev vrf-blue up
ip link set dev eth1 master vrf-blue
ip route add 192.168.10.0/24 dev eth1 table 10
NAT Hairpinning — что это и зачем нужно?
NAT Hairpinning (или loopback NAT) — это способ доступа к своим локальным сервисам по их внешнему (публичному) IP адресу изнутри локальной сети.
Например, у вас есть сервер в локальной сети с внутренним IP 192.168.1.100, и у него проброшен внешний IP (скажем, 203.0.113.10) через NAT на роутере.
# Проброс порта с внешнего IP на локальный сервер
iptables -t nat -A PREROUTING -d 203.0.113.10 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80
# Разрешаем возвратный трафик
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.100 -p tcp --dport 80 -j MASQUERADE
Топ-5 ошибок при настройке EtherChannel (LACP/PAgP)
+ как быстро диагностировать
EtherChannel — мощный инструмент агрегации каналов, но одна мелочь в конфиге может убить весь бандл или снизить производительность.
1️⃣Разные настройки на портах
Разные speed/duplex или MTU ломают агрегацию. Разное VLAN-назначение (trunk/access) приводит к непредсказуемым сбоям.
Пример ошибки:
switchport mode trunk
switchport trunk allowed vlan 10,20
show etherchannel summary ! Статус каналов
show running-config interface ! Проверить одинаковость настроек
show lacp neighbor ! Состояние LACP
MACsec в дата-центрах: используем шифрование на уровне канального слоя
В современных дата-центрах требования к безопасности и производительности пересекаются с необходимостью шифрования трафика внутри самой инфраструктуры.
MACsec (IEEE 802.1AE) становится оптимальным решением для защиты Layer 2 трафика без влияния на верхние протоколы и с минимальной задержкой.
network={
key_mgmt=IEEE8021X
eap=TLS
identity="user@example.com"
ca_cert="ca.pem"
client_cert="client.pem"
private_key="client.key"
macsec_policy=1
}
ip link add link eth0 macsec0 type macsec
ip link set macsec0 up
wpa_supplicant -i eth0 -c /etc/wpa_supplicant.conf -D wired
❓ ⚙️ Как ускорить процессы развертывания приложений и упростить управление инфраструктурой?
👉 На открытом уроке 12 августа в 19:00 МСК мы разберём, что такое Docker и как использовать его для эффективной контейнеризации. Вы узнаете, как работать с Docker CLI, управлять контейнерами, а также как применять Docker Hub для хранения и обмена образами.
После урока вы будете уверенно устанавливать Docker, запускать контейнеры и собирать свои первые Dockerfile. Это знание — важный шаг для системных администраторов и DevOps-специалистов, желающих упростить развертывание приложений.
🎁 Посетите вебинар и получите скидку на курс «Administrator Linux. Basic»: https://otus.pw/En9i/
👉 Для участия в вебинаре зарегистрируйтесь
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Канал опытного инженера с многолетним стажем!
За свою карьеру он поработал со многими технологиями и языками программирования:
⚙️ Python
👩💻 Linux
👣 Golang
🖥 Docker
🖥 Kubernetes
🖥 Bash
RECURA: программирование, проще чем кажется
Deckhouse User Community meetup #2
21 августа | Москва
«Флант» приглашает на второй Deckhouse User Community meetup. Три доклада от практиков:
→ управление узлами кластера на всём их жизненном цикле с командой Deckhouse Core;
→ построение платформы обучения K8s на DKP CE с коллегами из КРОКа;
→ автоматизация архитектурного контроля и подход Architecture as Code с экспертами «ДОМ.РФ Технологии».
Регистрируйтесь, если интересны реальные кейсы работы с Kubernetes-платформами.
DevOps Bootcamp: профессиональное сообщество начинающих инженеров
👉 разборы рабочих задач
👉 прокачка hard и soft skills
👉 вебинары и прямые эфиры с топами индустрии
👉 статьи, лекции и ответы на вопросы
Автор канала — Вячеслав Федосеев:
🔹TeamLead DevOps в «Честном знаке»;
🔹автор двух из трех существующих русскоязычных курсов по CI/CD;
🔹ментор курса-профессии «DevOps Upgrade» учебного центра Слёрм;
🔹ведущий проекта «Честные вакансии: DevOps Middle».
Подписывайтесь на канал и станьте частью большого и активного комьюнити 🫂
⭐️ DevOps Bootcamp ⭐️
Проблема PMTU в 2025 году: почему VPN и туннели всё ещё ломаются
Path MTU Discovery (PMTU) — это механизм, который помогает определить максимально возможный размер пакета на пути между двумя хостами, чтобы он не фрагментировался.
В идеале всё должно работать прозрачно: хост отправляет пакеты, маршрутизаторы при необходимости возвращают ICMP‑сообщение Fragmentation Needed, и клиент снижает размер пакета.
Но в реальности в 2025 году PMTU по‑прежнему часто ломается — особенно в VPN и туннелях. Причина в так называемом ICMP blackhole: провайдеры и межсетевые экраны продолжают фильтровать ICMP, в том числе нужные для PMTU пакеты.
Что происходит при ICMP blackhole
• Клиент отправляет пакет большего размера, чем позволяет канал.
• Маршрутизатор должен сообщить ICMP Fragmentation Needed.
• Сообщение блокируется и клиент не узнаёт об ограничении.
• В итоге TCP «виснет»: пакеты не доходят, соединение рвётся или работает с жуткими задержками.
Чаще всего это проявляется при VPN, GRE, IPsec, WireGuard или других туннелях: MTU «съедается» заголовками, и без ICMP трафик начинает падать.
Как диагностировать проблему
1️⃣Проверяем MTU на интерфейсе
ip link show
ping -M do -s 1472 8.8.8.8
tracepath 8.8.8.8
tcpdump -i eth0 icmp
ip link set dev wg0 mtu 1400
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --clamp-mss-to-pmtu
🏖 Инструменты и практические советы для ДИТов и инженеров
🟣 VDI против дефицита кадров
— решение проблемы в инженерных компаниях.
🟣 Сколько стоит инфра
— как посчитать совокупную стоимость владения.
🟣 Миграция в облако
— 5 самых частых ошибок.
🟣 Загрузка Linux-системы
— идеальная шпаргалка от с поэтапной схемой.
🟣 Лимиты ресурсов в Kubernetes
— как GitLab Runner без лимитов уронил ноду.
🟣 Как не стать мишенью для хакеров в Kubernetes
— типичные ошибки в настройке K8s, открывающие двери для атак.
🟣 MinIO урезал UI
— альтернатива OpenMaxIO.
Ещё больше полезного в канале CORTEL
➡️ Подписаться
Реклама ООО "Кортэл"
ИНН: 7816246925
С днём сисадмина! 🍺
Предлагаю в очередной раз насладиться классикой :)
localhost › IT-юмор
SR-IOV и DPDK: ускоряем сеть виртуальных машин
SR-IOV (Single Root I/O Virtualization) позволяет делить физическую сетевую карту на несколько виртуальных функций (VF), которые напрямую пробрасываются в виртуальные машины.
Это даёт почти нативную производительность и снижает нагрузку на гипервизор.
lspci | grep -i eth
echo 4 > /sys/class/net/ens1f0/device/sriov_numvfs
virt-install \
--name vm1 \
--memory 4096 \
--vcpus 2 \
--disk size=20 \
--import \
--host-device 0000:81:00.1
sudo apt install dpdk dpdk-dev dpdk-doc
sudo testpmd -l 0-3 -n 4 --socket-mem 1024,1024 \
--file-prefix pg0 -- -i
testpmd> start
testpmd> show port stats
lscpu | grep NUMA
numactl --show
LISP для изоляции IoT-подсетей: тестовая сеть с инкапсуляцией
LISP (Locator/ID Separation Protocol) разделяет идентификаторы устройств (EID, Endpoint ID) и их физическое расположение в сети (RLOC, Routing Locator).
Для IoT это удобно: можно изолировать подсети устройств и одновременно обеспечивать маршрутизацию и масштабируемость.
sudo apt install openlisp
eid_table office
add 10.0.1.0/24
rloc add 192.168.100.1
eid_table warehouse
add 10.0.2.0/24
rloc add 192.168.200.1
lispctl map-register office 192.168.100.1
lispctl map-register warehouse 192.168.200.1
ping 10.0.2.5
traceroute 10.0.2.5
BFD для быстрого failover: мгновенная детекция отказов в BGP и OSPF
BFD (Bidirectional Forwarding Detection) — протокол, который позволяет обнаруживать недоступность соседних маршрутизаторов за миллисекунды.
Он работает поверх UDP и совместим с основными протоколами маршрутизации, такими как BGP и OSPF.
router ospf
bfd
network 10.0.0.0/24 area 0
neighbor 10.0.0.2 bfd
bfd
interval 50 min_rx 50 multiplier 3
router bgp 65001
neighbor 192.0.2.2 remote-as 65002
neighbor 192.0.2.2 bfd
Контейнерные сети: обзор CNI Beyond Flannel и Calico
В Kubernetes и других платформах контейнеризации CNI (Container Network Interface) отвечает за организацию сети между контейнерами — назначение IP, маршрутизацию и связь между подами и внешним миром.
Flannel и Calico долгое время были стандартом. Flannel прост в настройке, создаёт оверлей на базе VXLAN, но ограничен в производительности и сетевой политике.
L2 Loop Prevention без STP: PortFast и BPDU Guard на Cisco и Linux
Петли на уровне L2 могут серьёзно повредить сети. STP — классика борьбы с ними, но иногда избыточна и замедляет подключение устройств.
Для простых случаев используют PortFast и BPDU Guard.
interface Gi1/0/10
spanning-tree portfast
spanning-tree bpduguard enable
spanning-tree portfast default
spanning-tree portfast bpduguard default
brctl setfd br0 0
brctl setageing br0 0
ebtables -A INPUT -p 0x42 -j DROP
Научим находить атаки в трафике до того, как они нанесут ущерб 🕵️♂️
Злоумышленники действуют скрытно, используя сложные методы проникновения. Без должных средств защиты они могут оставаться незамеченными до тех пор, пока не становится слишком поздно. Любая атака оставляет след в сети, но не все специалисты знают, как их найти и использовать, — им не хватает практики и знаний.
Уже 25 августа у Positive Education стартует практикум «Анализ сетевого трафика», в который включили максимум практики с фокусом на разборе реальных атак.
⭐️ Его готовили эксперты Positive Technologies. За их плечами — десятки обнаруженных атак, сложные кейсы и работа с трафиком в боевых условиях.
🎓 Вас ждут практические материалы, вобравшие в себя многолетний опыт экспертов, которые можно изучать в удобном темпе, а также обширная практика на облачном стенде: вы будете воспроизводить хакерские атаки и исследовать их при помощи средств защиты, проверяя те на прочность.
👉 Больше подробностей — на странице практикума.
Когда ICMP нужен: как его отсутствие ломает MSS и PMTU discovery
Во многих инфраструктурах ICMP считают «ненужным» и отрубaют его на периметре — мол, безопасность, чтобы никто не пинговал.
В результате получаем баги, которые тяжело отлаживать: от медленного SSH до обрыва TLS.
ip link | grep mtu
ip route get <dst>
ping -M do -s 1472 <dst> # для MTU 1500 с учетом IP+ICMP
tcpdump -i eth0 icmp or tcp port 443
iptables -A INPUT -p icmp --icmp-type fragmentation-needed -j ACCEPT
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --clamp-mss-to-pmtu
sysctl net.ipv4.ip_no_pmtu_disc
Динамическая маршрутизация в IoT-сетях: RPL протокол
RPL (Routing Protocol for Low-Power and Lossy Networks) — это протокол маршрутизации, созданный специально для IoT-сетей с ограниченными ресурсами и нестабильным соединением.
Он строит DAG (направленный ациклический граф) для эффективной передачи данных с минимальным энергопотреблением.
RPL активно используется в 6LoWPAN, Zigbee, Thread и других LPWAN-технологиях.
Практические команды для работы с RPL
1️⃣Запуск border-router (корня DAG) в Contiki-NG:
cd contiki-ng/examples/rpl-border-router
make TARGET=cooja
rpl-print-parent
rpl-print-routes
icmp6.type == 155
MLAG без дорогого железа: LACP и Linux bonding в связке
Часть 2
Настройка bonding на Linux-хосте
Создаём bonding-интерфейс:
sudo modprobe bonding
sudo ip link add bond0 type bond
sudo ip link set bond0 up
sudo ip link set eth0 down
sudo ip link set eth1 down
sudo ip link set eth0 master bond0
sudo ip link set eth1 master bond0
sudo ip link set eth0 up
sudo ip link set eth1 up
sudo bash -c 'echo 802.3ad > /sys/class/net/bond0/bonding/mode'
sudo bash -c 'echo 100 > /sys/class/net/bond0/bonding/lacp_rate' # быстрый LACP (fast rate)
sudo ip addr add 192.168.1.10/24 dev bond0
sudo ip link set bond0 up
interface Port-channel1
description MLAG to Linux host
switchport mode trunk
!
interface GigabitEthernet1/0/1
channel-group 1 mode active
switchport mode trunk
!
interface GigabitEthernet1/0/2
channel-group 1 mode active
switchport mode trunk
!
MLAG без дорогого железа: LACP и Linux bonding в связке
MLAG (Multi-Chassis Link Aggregation Group) — это технология, которая позволяет объединить несколько физических каналов с разных физических устройств (чаще всего коммутаторов) в один логический канал для повышения пропускной способности и отказоустойчивости.
В дата-центрах её обычно делают на дорогом оборудовании Cisco, Juniper, Arista.
Но что если бюджет ограничен, а отказоустойчивость и балансировка нужны? Можно реализовать MLAG на базе Linux с помощью LACP и bonding.
Основные задачи и ограничения
⏺Linux bonding — объединяет несколько интерфейсов в один логический с разными режимами (round-robin, active-backup, LACP).
⏺LACP (802.3ad) — протокол динамической агрегации каналов.
⏺MLAG — предполагает, что к нескольким коммутаторам (или Linux-серверам) подключён один и тот же хост с несколькими каналами, которые агрегируются логически.
На практике Linux bonding с mode=802.3ad умеет работать с одним коммутатором, который поддерживает LACP.
+--------------------+
| Коммутатор 1 |
+----+------------+--+
| |
+----+ +----+
| |
eth0 (bond0) eth1 (bond0)
| |
+---+---+ +---+---+
| Linux хост (bond0) с двумя NIC |
+------------------------------+
Протокол BFD - быстрая детекция отказов
BFD — лёгкий протокол для быстрого обнаружения недоступности соседних маршрутизаторов или линков.
Работает поверх UDP и значительно сокращает время реакции сетевого оборудования при сбоях.
router bgp 65001
neighbor 192.0.2.2 remote-as 65002
neighbor 192.0.2.2 bfd
!
bfd
interval 50 min_rx 50 multiplier 3
router ospf
bfd all-interfaces
show bfd peers
Overlay‑сети без Kubernetes: VXLAN для микросервисов и VM вручную
Не всегда для микросервисов нужен Kubernetes или OpenStack. Иногда достаточно пары серверов и лёгкой overlay‑сети, чтобы изолировать сервисы и связать их в едином L2 поверх L3‑инфраструктуры.
Для этого отлично подходит VXLAN (Virtual eXtensible LAN).
ip link add vxlan10 type vxlan id 10 \
dev eth0 remote 203.0.113.2 dstport 4789
ip addr add 10.10.10.1/24 dev vxlan10
ip link set vxlan10 up
ip link add vxlan10 type vxlan id 10 \
dev eth0 remote 203.0.113.1 dstport 4789
ip addr add 10.10.10.2/24 dev vxlan10
ip link set vxlan10 up
ping 10.10.10.2 -I vxlan10
brctl addbr br0
ip link set vxlan10 master br0
ip link set vnet0 master br0
Wi‑Fi 7 на практике: что изменилось и как настраивать (802.11be)
Wi‑Fi 7 (802.11be) — новый стандарт беспроводной связи, который приходит на смену Wi‑Fi 6/6E.
Он обещает до 40 Гбит/с, меньшие задержки и стабильность для потоков AR/VR, видеоконференций и облачного гейминга.
Что нового по сравнению с Wi‑Fi 6?
⏺Ширина каналов до 320 МГц (в Wi‑Fi 6 максимум 160 МГц).
⏺16 потоков MIMO (против 8 в Wi‑Fi 6).
⏺Многоканальная агрегация (MLO) — устройство может использовать одновременно каналы в разных диапазонах (5 ГГц + 6 ГГц).
⏺1024‑QAM → 4096‑QAM — выше скорость на том же спектре.
⏺Задержка < 2 мс в оптимальных условиях.
Настройка на Aruba / Cisco
Aruba (пример через ArubaOS 10):
wlan ssid-profile WIFI7-DEMO
ssid-name "Office-WiFi7"
opmode wpa3-aes
band 5ghz-6ghz
channel-width 320mhz
qos-profile voice
wireless profile policy WIFI7-POLICY
qos wmm
dot11be enable
!
wlan WIFI7 10 WIFI7-DEMO WIFI7-POLICY
security wpa3
band 5ghz 6ghz
channel width 320
mls qos trust dscp
class-map match-any VOICE
match dscp ef
policy-map WIFI7-QOS
class VOICE
priority percent 30
Статус-сайт за 10 минут: как следить за аптаймом своих сервисов
Uptime Kuma — простой и красивый инструмент для мониторинга сайтов, серверов и локальных сервисов. Он проверяет доступность, собирает статистику аптайма и отправляет уведомления, если что-то упало.
Отлично подходит для личных проектов, домашних серверов или небольших команд.
Зачем это нужно?
⏺Сайт перестал открываться - ты узнаешь сразу
⏺VPS внезапно перезагрузился - уведомление уже в почте
⏺Умный дом не отвечает - ты в курсе
⏺Удобная страничка статуса для команды или клиентов
Возможности
➖Проверка HTTP, ping, TCP-портов, DNS
➖Частота проверок от 20 секунд
➖Графики аптайма и задержки
➖Telegram, email, Discord, Slack и десятки других интеграций
➖Темы, кастомные домены, доступ по паролю
Установка (через Docker)
Самый быстрый способ — через Docker:
docker run -d \
--name uptime-kuma \
-p 3001:3001 \
-v uptime-kuma:/app/data \
louislam/uptime-kuma
http://localhost:3001
и настраиваешь мониторинг через веб-интерфейс.🎉 С днем системного администратора! 🎉
Сегодня не будет познавательных постов, но будет не менее важное - поздравление! Сегодня - день тех, кто всегда остается за кулисами, но без кого не работает ничего. Это вы начинающие или уже опытные - волшебники командной строки, мастера uptime и защитники серверов от хаоса.
Именно Вы держите на плаву сети, базы данных, почту, бэкапы, мониторинг, безопасность и еще тысячу вещей, о которых никто не догадывается... пока все не сломается, ну или им не покажется, что все сломалось..
Буду короток: пусть в логах будет чисто, аптайм радует глаз, а пользователи не беспокоят в пятницу вечером. А еще - стабильных обновлений, бесшумных серверов и свободного времени для себя.
За вас, сисадмины! С праздником! 🎆
N.A. ℹ️ Help