networkadm | Unsorted

Telegram-канал networkadm - Network Admin

12610

Обучающий канал по сетевому и системному администрированию. Сотрудничество: @dad_admin Биржа: https://telega.in/c/networkadm РКН: https://bit.ly/4ioc61C

Subscribe to a channel

Network Admin

STP Port States: почему порт долго висит в Listening/Learning

STP переводит порт через несколько состояний перед тем как начать передавать трафик. Blocking, Listening, Learning, Forwarding. В норме переход занимает 30 секунд (15 сек Listening + 15 сек Learning). Если порт завис и не переходит в Forwarding, сеть на этом сегменте не работает.

Чаще всего дело в одном из трёх: некорректно выбран Root Bridge и порт пересчитывает топологию, на порту включён TCN (Topology Change Notification) и STP постоянно переинициализируется, или PortFast не включён там где должен быть.

Диагностика

Смотрим состояние портов и кто Root Bridge:

show spanning-tree
show spanning-tree detail


Проверяем TCN, частые topology change говорят о нестабильном линке или петле:

show spanning-tree detail | include topology change


Что делать?
Если порт ведёт к конечному устройству (PC, сервер, принтер), включаем PortFast. Порт сразу переходит в Forwarding, минуя Listening/Learning:

interface Gi0/1
spanning-tree portfast


Если TCN генерирует конкретный порт, включаем BPDU Guard. При получении BPDU порт уходит в err-disabled вместо того чтобы ломать топологию:

interface Gi0/1
spanning-tree bpduguard enable


Глобально для всех PortFast-портов:

spanning-tree portfast default
spanning-tree portfast bpduguard default


N.A.

Читать полностью…

Network Admin

Bonding на Linux: mode 802.3ad и проверка активных линков

Bonding в Linux это аналог LAG на уровне ОС. Mode 802.3ad (LACP) объединяет интерфейсы в агрегат с динамическим согласованием, как на Cisco mode active.

Для работы нужен пакет ifenslave и загруженный модуль bonding:

modprobe bonding
apt install ifenslave


Настройка через systemd-networkd

Создаём bond-интерфейс:

# /etc/systemd/network/bond0.netdev
[NetDev]
Name=bond0
Kind=bond

[Bond]
Mode=802.3ad
LACPTransmitRate=fast
MIIMonitorSec=100ms


Привязываем физические интерфейсы к бонду:

# /etc/systemd/network/bond-slave.network
[Match]
Name=eth0 eth1

[Network]
Bond=bond0


Назначаем IP на bond0:

# /etc/systemd/network/bond0.network
[Match]
Name=bond0

[Network]
Address=192.168.1.10/24
Gateway=192.168.1.1


Проверка

Статус агрегата и активных линков:

cat /proc/net/bonding/bond0


Покажет режим, активные интерфейсы, состояние LACP и MII каждого слейва. Если слейв показывает MII Status: down, физический линк не поднят или коммутатор не согласовал LACP.

Быстрая проверка через ip:

ip link show bond0
ip -d link show bond0


N.A.

Читать полностью…

Network Admin

КАК ПИРАТОВ С МИЛЛИОНАМИ ВЗЯЛИ ЧЕРЕЗ… ТЕРМОМЕТР👻

👀 В Испании накрыли одну из крупнейших пиратских платформ с мангой. Ребята годами крутили трафик на аниме, собирали сотни миллионов просмотров и зарабатывали на 18+ рекламных баннерах миллионы.

Никаких подписок и донатов они не просили, просто с*кс реклама. И деньги шли стабильно, всё выглядело как идеально выстроенная схема.

Но проблемы начались не в интернете. Правообладатели наняли специалистов, те аккуратно собрали информацию: где хостятся сайты, кто за ними стоит, где живут админы. Передали всё полиции и дальше уже дело техники. Они пришли к ним домой и обнаружили там простой термометр. А из него достали флешки с холодными криптокошельками почти на полмиллиона долларов!

⚠️ То есть люди, которые умели зарабатывать миллионы в интернете, слились на базовой вещи — физической безопасности и хранении активов. И это не единичный случай. Сейчас всё чаще работают не через взлом, а через деанон. Тебя находят → приходят → забирают всё. И если ты думаешь, что «ну я же просто храню крипту», то это ровно до первого интереса к тебе.

Хорошая новость — от этого можно защищаться. Потому что есть конкретные инструменты:
🟢 двойное дно
🟢 duress-пароль
🟢 криптоконтейнеры
🟢 убедительная легенда (правдоподобное отрицание)
🟢 Panic Button - уничтожит все при верном сигнале
и многие другие

Почитать про эти инструменты можно по ссылке:

🦔 CyberYozh

Читать полностью…

Network Admin

OSPF: сосед завис в EXSTART/EXCHANGE

EXSTART/EXCHANGE - это этап, где два OSPF-соседа договариваются об обмене LSA. Если сосед завис здесь, база топологии не синхронизируется и маршруты не появятся.

Три главные причины: MTU mismatch (самая частая, DD-пакеты не проходят если MTU разный), дублирующийся Router ID (два роутера с одинаковым RID не могут завершить negotiation), проблемы аутентификации (пакеты уходят, но отклоняются на другой стороне).

Диагностика

Смотрим состояние соседа:

show ip ospf neighbor


Если сосед висит в EXSTART/EXCHANGE больше нескольких секунд, уже проблема.

1️⃣Проверяем MTU

show interfaces Gi0/0 | include MTU


На обоих роутерах значение должно совпадать. Либо выравниваем MTU, либо отключаем проверку:

interface Gi0/0
ip ospf mtu-ignore


2️⃣Проверяем дублирующийся Router ID

show ip ospf | include Router ID


RID должен быть уникальным в домене. Меняем вручную и перезапускаем процесс:

router ospf 1
router-id 1.1.1.1

clear ip ospf process


3️⃣Проверяем аутентификацию

show ip ospf interface Gi0/0


Тип аутентификации и ключ должны совпадать на обоих концах. Если используется MD5:

interface Gi0/0
ip ospf authentication message-digest
ip ospf message-digest-key 1 md5 <key>


N.A.

Читать полностью…

Network Admin

Traceroute не совпадает с реальным путём

Сервис ведёт себя так, будто трафик идёт по одному маршруту, но traceroute показывает совсем другую картину.

При этом ping может быть стабильным, а задержки появляться “внезапно” и без логики.

traceroute <ip>


Дело в том, что traceroute показывает не путь пакета, а поведение промежуточных узлов, которые могут по-разному отвечать на TTL-expired. В реальности трафик часто идёт через ECMP или policy routing, которые в traceroute просто не видны.

ip route get <ip>


Здесь обычно всплывает реальный next-hop для конкретного пакета — и он может отличаться от того, что ожидается из схемы сети или из traceroute-вывода.

Иногда расхождение усиливается из-за балансировки на уровне ядра или оборудования, когда разные потоки уходят по разным линкам, а traceroute показывает только один из возможных путей.

mtr -T <ip>


TCP-traceroute часто даёт более близкую к реальности картину, потому что имитирует реальный трафик, а не ICMP-ответы.

tracepath <ip>


N.A.

Читать полностью…

Network Admin

Неравномерное распределение трафика LB

Снаружи всё выглядит нормально: LB живой, backend’ы подняты, трафик есть, но один инстанс стабильно перегружен, а остальные почти пустые.

Распределение часто ломается не на уровне новых подключений, а на уровне уже установленных сессий и того, как они “прилипают” к backend’ам.

ss -s


По общей картине видно, что соединения есть, но это ничего не говорит о том, как они распределены между нодами и как долго живут.

Если разложить соединения глубже, становится заметно, что часть клиентов держит длинные сессии и фактически закрепляется за конкретным backend’ом.

ss -tn sport = :80


И именно эти долгоживущие соединения начинают создавать перекос: новые запросы уже не успевают “выровнять” баланс.

Иногда эффект усиливается просто из-за того, что клиенты создают разное количество соединений и неравномерно их переиспользуют.

curl -I <url>


При повторных запросах можно заметить, что ответы стабильно приходят с одних и тех же backend’ов, даже если ожидается равномерное распределение.

ipvsadm -Ln


На этом уровне уже видно реальную картину: LB не распределяет каждый запрос заново, а работает с уже закреплёнными потоками, из-за чего часть нод оказывается перегруженной просто статистически.

N.A.

Читать полностью…

Network Admin

Разное поведение DNS у разных клиентов

Сервис у части пользователей работает нормально, у части периодически “проваливается” или уходит в странные задержки. 


Снаружи всё выглядит одинаково, но поведение разъезжается по группам клиентов.

Первое, что обычно всплывает — не сами ответы DNS, а то, как они кешируются и переиспользуются в системе.

resolvectl query <domain>


Тут уже видно, что один и тот же домен может жить разными TTL-состояниями в зависимости от клиента и момента запроса, и это начинает разносить поведение по времени.

Дальше полезно посмотреть не “что резолвится”, а как именно система выбирает адреса и в каком порядке.

getent ahostsv4 <domain>


Иногда всплывает, что порядок IP разный между клиентами, и это уже влияет на то, какой backend они фактически выбирают, даже если DNS “одинаковый”.

Следующий слой - системные кеши и библиотечный резолвинг, который вообще не виден через обычные проверки.

strace -e trace=network -f curl -s <url>


Здесь часто видно, что разные клиенты делают разное количество попыток резолвинга или уходят в разные источники, хотя запрос формально один и тот же.

N.A.

Читать полностью…

Network Admin

Почему “не видно проблему” в сети, пока не посмотришь состояние TCP очередей

Иногда сервис не падает, но начинает “вязнуть”: запросы идут, ответы есть, но задержки растут без очевидной причины.

В таких случаях полезно смотреть не соединения как факт, а их внутреннее состояние в ядре.

ss -tin state established


Здесь часто всплывают признаки деградации: растущий rtt, повторные передачи, перегруженные соединения, которые внешне выглядят как обычный HTTP-трафик.
Почему “всё открывается”, но часть запросов теряется

Бывает ситуация, когда сеть вроде бы живая, но часть пакетов просто не доходит. Это не видно на уровне приложения, пока не посмотреть статистику интерфейса.

ip -s link show <iface>


Потери, ошибки и dropped packets часто оказываются уже на уровне NIC или драйвера, а не где-то “в сети”.
Почему DNS “работает”, но поведение разное у клиентов

Иногда проблема вообще не в резолвинге как таковом, а в том, как ядро кеширует и повторно использует результаты.

getent ahosts <domain>


В отличие от dig, здесь видно реальное поведение резолвинга в контексте системы, а не абстрактного запроса.

N.A.

Читать полностью…

Network Admin

Появился удобный AI-инструмент для подготовки к найму и прохождения собеседований - Sobes Copilot.

Это ассистент, который помогает прямо во время интервью: слушает диалог, распознаёт речь в реальном времени и подсказывает, как лучше ответить. Работает в Zoom, Google Meet, Teams, VK Calls и других платформах, и не виден при демонстрации экрана.

Что есть в Sobes Copilot:
Подсказки в реальном времени во время собеседований
Пост-анализ интервью - сервис разбирает прошедший созвон, выделяет сильные и слабые места, удачные формулировки и зоны роста
Генератор и улучшение резюме - помогает собрать сильное резюме под конкретную вакансию
Мок-собеседования (и System Design) - тренировки с ИИ, приближённые к реальным интервью
Авто-отклики на HH - автоматизируют массовую подачу на вакансии по заданным фильтрам

Если хочешь проходить собеседования спокойнее, увереннее и системнее - посмотри, что умеет Sobes Copilot.

Читать полностью…

Network Admin

Почему после изменения ACL пропадает доступ к части сети

Настроили новый ACL на интерфейсе или между сегментами, но часть сервисов перестала отвечать: одни IP доступны, другие нет, часть приложений зависает на таймаутах.

Чаще всего проблема не в самом ACL, а в порядке правил и скрытых “deny any” в конце. Также часто забывают про обратный трафик, из-за чего запрос проходит, а ответ блокируется.

Типовые причины: правило блокирует обратный трафик (return traffic) ACL применён не в том направлении (in/out) отсутствуют разрешения для established/related соединений правило выше по списку перекрывает нужный allow забытый implicit deny в конце списка ACL применён только на одном интерфейсе в цепочке
Команды для проверки:

show access-lists
show ip interface
show run interface Gi0/0


Проверка фактической обработки трафика:

debug ip packet
(аккуратно в проде)


Проверка пути:

traceroute <ip>
ping <ip>
 

Проверка логики ACL:

show access-lists <name>


Смотрим counters у правил - если растут deny, значит трафик реально режется.
Если проблема в направлении применения ACL:

interface Gi0/0
ip access-group <name> in


или

ip access-group <name> out
 

Если ломается из-за порядка правил — правило выше перекрывает нужный трафик, поэтому проверять нужно сверху вниз, а не по смыслу.

N.A.

Читать полностью…

Network Admin

⚡️ Анонсирована еще более бюджетная версия MacBook Pro

N.A.

Читать полностью…

Network Admin

FastPath vs FastTrack и разрыв модели обработки трафика

FastPath и FastTrack оба ускоряют обработку, но работают на разных уровнях и ломают привычную линейную модель прохождения пакета через RouterOS.


FastPath пытается вывести трафик из полного firewall pipeline и отправить его напрямую в forwarding path, если условия позволяют.

FastTrack работает поверх conntrack и ускоряет уже установленные соединения, сокращая участие firewall, mangle и части обработки для established/related потоков.

Один и тот же поток сначала проходит полный стек обработки, а после установления состояния часть трафика начинает идти по ускоренному пути.

В итоге поведение firewall, очередей и счетчиков может меняться в процессе жизни соединения без изменения конфигурации.

MikroTik проверка

/ip firewall filter print
/ip firewall mangle print
/ip firewall connection print
/ip settings print


N.A.

Читать полностью…

Network Admin

Link aggregation hashing algorithms и почему нагрузка распределяется неравномерно

Port-channel или bond выглядит как один быстрый интерфейс, но внутри трафик всегда режется по алгоритму хеширования. И от того, какие поля участвуют в hash, зависит реальная загрузка линков.

Если hash основан на L2 (например src-mac или dst-mac), распределение зависит от количества MAC-адресов. В сети с few talkers это быстро приводит к перекосу, когда один линк загружен, а остальные почти пустые.

Если используется L3/L4 (src-ip, dst-ip, 5-tuple), балансировка становится ближе к реальной нагрузке приложений, но все равно упирается в количество потоков. Один большой поток всегда останется на одном физическом линке.

Cisco:

show etherchannel load-balance
show etherchannel summary
show interfaces port-channel 1


Можно посмотреть, как именно устройство строит hash и какие поля участвуют в распределении.

MikroTik:

/interface bonding print
/interface bonding monitor bond1


А проявляется так: порт-канал есть, суммарная скорость высокая, но один линк перегружен, остальные недоиспользованы. И поведение может меняться просто из-за смены типа трафика или количества потоков.

N.A.

Читать полностью…

Network Admin

Почему «низкая загрузка» не означает, что сеть здорова

На графиках всё спокойно. 10–20% загрузки, никаких красных зон, интерфейсы не перегружены. С точки зрения мониторинга - сеть «дышит».


Но пользователи всё равно жалуются: видео фризит, API отвечает рывками, TCP ведёт себя странно.

А дело в том, что сеть редко работает равномерно. Трафик приходит не гладкой линией, а короткими всплесками. И эти microbursts легко забивают буферы даже на полностью «свободном» канале.

В этот момент интерфейс может выглядеть почти пустым по среднему значению, но внутри уже идут очереди, дропы и задержки.

show interfaces counters
show interface <int> | include rate
show queueing interface <int>


И получается парадокс: по метрикам всё хорошо, а по факту сервис уже деградирует.

N.A.

Читать полностью…

Network Admin

TCP retransmits в реальных сетях

Даже на пустом канале приложения могут тормозить. Packet loss или jitter заставляют TCP пересылать пакеты снова и снова, а один поток не успевает «накачать» канал.

Признаки - медленный throughput, высокий RTT, заметные retransmits.

На Linux проверить легко

ss -ti | grep retrans
tcpdump -i eth0 tcp and host <peer-ip> -vv


Даже 0.1–0.5% потерь на WAN сильно сказываются на скорости одного потока. Параллельные соединения и настройка TCP window позволяют компенсировать этот эффект.

Особенно это важно для high-speed каналов между датацентрами, VoIP и стриминговых сервисов, где каждая миллисекунда задержки критична.

N.A.

Читать полностью…

Network Admin

📂Как правильно документировать сеть, чтобы не потерять конфиги

Документирование сети кажется рутинной задачей, но на практике - это ключ к быстрому восстановлению, анализу и масштабированию. Вот как делать это по шагам.

1️⃣Сбор данных
Фиксируем все устройства, IP, VLAN, интерфейсы и протоколы маршрутизации.
Команды:

ip addr show          # список интерфейсов
ip route show # таблица маршрутов
vtysh -c "show running-config" # конфиги роутеров
show vlan brief # VLAN на коммутаторах

2️⃣Структурирование: Систематизируем данные: топология, IP-план, протоколы, ACL/Firewall.
Пример таблицы IP:

Устройство | Интерфейс | IP | VLAN | Примечание
-----------|-----------|--------------|------|------------
r1 | eth0 | 10.0.1.1/24 | 10 | WAN
sw1 | vlan10 | 10.0.1.2/24 | 10 | серверная зона
sw2 | vlan20 | 10.0.2.1/24 | 20 | офисная зона
server1 | eth1 | 10.0.1.10/24 | 10 | база данных
server2 | eth1 | 10.0.1.11/24 | 10 | веб-сервер


3️⃣Version control: Сохраняем конфиги в Git. Каждый коммит с комментарием: что и зачем изменилось.

git init
git add configs/
git commit -m "Добавлен новый VLAN 20 на sw2"


4️⃣Визуализация топологии: Diagram-as-code (Mermaid/Graphviz) или инструменты типа NetBox/Draw.io.
Пример Mermaid:

graph TD
R1 --> SW1
SW1 --> Server1
SW1 --> Server2


5️⃣Автоматизация и backup: Скрипты для снятия конфигов и их сохранения в репозиторий или на NAS. Проверка актуальности backup.

Полезные команды для контроля

git log --oneline --graph   # история изменений
diff old_config new_config # что изменилось
ping 10.0.1.2 # проверить доступность после изменений


N.A.

Читать полностью…

Network Admin

LACP vs Static LAG: когда что использовать

LAG (Link Aggregation Group) объединяет несколько физических линков в один логический. Два способа это сделать: статически или через LACP. Разница принципиальная.

Static LAG просто объединяет порты без какого-либо согласования. Коммутатор не знает, что происходит на другой стороне, линк считается активным даже если там ничего нет. Быстро настраивается, но слепо.

LACP (802.3ad) согласовывает агрегат через обмен LACPDU-пакетами. Оба конца знают о состоянии линков, при падении одного порта трафик перераспределяется автоматически. Чуть сложнее в настройке, но надёжнее.

Статику используют когда другая сторона не поддерживает LACP, например старое оборудование или некоторые гипервизоры. В остальных случаях лучше LACP.

Настройка на Cisco
Static LAG:


interface range Gi0/1 - 2
channel-group 1 mode on


LACP (active инициирует согласование, passive ждёт):

interface range Gi0/1 - 2
channel-group 1 mode active


Проверка агрегата
Смотрим статус Port-Channel и какие порты в него входят:

show etherchannel summary
show lacp neighbor


В выводе show etherchannel summary флаги говорят всё: P - порт в бандле, D - порт упал, S - suspended. Если видишь I (individual) вместо P, порт не попал в агрегат, скорее всего несовпадение настроек speed/duplex или native VLAN.

N.A.

Читать полностью…

Network Admin

Wireshark фильтры для диагностики VLAN-трафика

Быстрая шпаргалка для тех, кто разбирает проблемы на trunk-портах или отлавливает трафик конкретного VLAN.

Базовые фильтры

Показать все 802.1Q фреймы, сузить до конкретного VLAN ID или до трафика одного хоста внутри него. Отправная точка для любой диагностики:

vlan
vlan.id == 10
vlan.id == 10 && ip.addr == 192.168.10.5


ARP, DHCP, STP

ARP помогает отловить конфликты IP и посмотреть кто отвечает на запросы. DHCP покажет, доходят ли Discover-пакеты до сервера. STP нужен когда подозреваешь петлю или нестабильную топологию:

vlan.id == 10 && arp
vlan.id == 10 && bootp
vlan.id == 10 && stp


Трафик между двумя хостами и очистка от служебного

Первый фильтр изолирует сессию между конкретными хостами. Второй убирает CDP, LLDP и STP, когда нужно смотреть только на пользовательский трафик без шума:

vlan.id == 20 && ip.addr == 192.168.20.1 && ip.addr == 192.168.20.2
vlan.id == 10 && !stp && !cdp && !lldp


Double-tag и QoS

Первый фильтр ловит QinQ-фреймы или признаки VLAN hopping, когда внутри тегированного фрейма есть ещё один тег. Второй фильтрует по значению CoS, полезно при диагностике приоритизации трафика:

vlan.id == 100 && vlan
vlan.priority == 5


N.A.

Читать полностью…

Network Admin

VTP - почему его лучше отключить и как безопасно мигрировать без него

VTP (VLAN Trunking Protocol) автоматически синхронизирует VLAN-базу между коммутаторами. Звучит удобно, но по факту это бомба замедленного действия.

Главная проблема, что любой коммутатор с более высоким revision number перезапишет VLAN-базу на всех остальных. Подключил старый свич из кладовки, и все VLAN на продакшене слетели.

Почему отключают:
Один неверный свич уничтожает всю VLAN-конфигурацию сети
Сложно контролировать изменения - нет нормального аудита
VTP v1/v2 не поддерживает extended VLAN (1006–4094)
В современных сетях проще и безопаснее управлять VLAN вручную или через автоматизацию

Как безопасно мигрировать

1️⃣Сначала зафиксируй текущую VLAN-базу на VTP Server

show vlan brief
show vtp status


Сохрани список всех активных VLAN - это твой эталон.

2️⃣Переводи коммутаторы в VTP Transparent по одному, начиная с краёв сети

vtp mode transparent


Transparent не синхронизирует VLAN с другими, но передаёт VTP-объявления дальше - сеть не ломается сразу.

3️⃣Убеждаешься, что VLAN-база на каждом свиче совпадает с эталоном

show vlan brief


4️⃣Когда все переведены в Transparent - можно отключить VTP полностью (VTP v3)

vtp mode off


В v1/v2 режима off нет, Transparent - финальная точка.

5️⃣ Дальше VLAN управляются вручную на каждом свиче или через Ansible/Netmiko.

⚡️ Revision number обнуляется при смене VTP domain или переключении в Transparent. Если срочно нужно обезвредить «опасный» свич перед подключением - меняй domain name на любой другой.

N.A.

Читать полностью…

Network Admin

5 команд, которые реально помогают ловить “невидимые” сетевые проблемы
1️⃣TCP-состояние и скрытые retransmit’ы
Когда сервис “живой”, но всё тормозит - обычные проверки ничего не показывают. Тут полезно смотреть, что происходит прямо в TCP-очередях.

ss -ti state all


Сразу видно RTT, retrans, cwnd - вещи, которые обычно не попадают ни в метрики, ни в логи.
2️⃣Реальное поведение маршрута ядра (а не “как должно быть”)
Иногда проблема не в сети, а в том, куда система на самом деле отправляет трафик.

ip route get <ip>


Показывает конкретный интерфейс, source IP и next-hop для одного пакета - часто всплывает неожиданный путь.

3️⃣Где именно ломается соединение (DNS / connect / TLS / HTTP)
Когда всё “медленно”, важно понять, на каком этапе зависает запрос.

curl -w "@-" -o /dev/null -s <url>


Показывает breakdown по времени: DNS, connect, TLS, first byte. Быстро отделяет сеть от приложения.
4️⃣Потери, которые не видно через ping
ICMP может быть чистым, а TCP уже страдает. Нужен более честный взгляд на поток.

mtr -T -P 443 <host>


TCP-traceroute часто показывает деградацию там, где обычный ICMP ничего не замечает.
5️⃣Реальная картина очередей и backpressure
Когда система “не падает, но не отвечает” - это почти всегда очереди.

ss -ltnp


Смотришь backlog, количество established, и становится видно, где начинается давление — на accept, kernel или приложение.

N.A.

Читать полностью…

Network Admin

Service работает через IP, не через DNS

Сервис открывается по IP нормально, но по доменному имени начинает вести себя странно: таймауты, разные ответы, иногда вообще “не тот” backend.

Часто это, когда клиент и DNS живут разной жизнью: IP уже поменялся, а часть систем продолжает ходить по старым записям.

resolvectl status


Здесь часто видно, что разные интерфейсы или сети используют разные резолверы, и ответы начинают расходиться по источникам.
Дальше полезно посмотреть, что реально возвращается не “в теории”, а в контексте системы.

getent hosts <domain>


Иногда всплывает, что домен резолвится в несколько IP, и выбор происходит неочевидно - часть клиентов стабильно попадает на один адрес, часть на другой.

ip route get <ip>


И уже здесь становится заметно, что IP-доступ стабильный, а доменный - нет, потому что DNS фактически раскидывает трафик по разным путям.

curl -v --resolve <domain>:443:<ip> https://<domain>


Когда вручную фиксируется IP, поведение становится стабильным - и это обычно указывает, что расхождение происходит именно на этапе резолвинга и кеширования, а не в самом сервисе.

N.A.

Читать полностью…

Network Admin

Cisco: Private VLAN для изоляции устройств

Private VLAN (PVLAN) — это механизм L2-изоляции внутри одного большого VLAN.

Используется там, где клиенты должны видеть интернет, но не видеть друг друга: отели, коворкинги, общественные сети.

Как это работает:

PVLAN делит один VLAN на подтипы:
Primary VLAN — основной VLAN.
Isolated VLAN — хосты не могут общаться между собой, только с promiscuous-портом.
Promiscuous port — обычно uplink к маршрутизатору/фаерволу. Видит всех.

В итоге, 100 клиентов в одном VLAN → каждый полностью изолирован, без создания сотен отдельных VLAN.

⚙️ Конфигурация PVLAN на Cisco

1️⃣Создаём primary и isolated VLAN

vlan 100
private-vlan primary

vlan 101
private-vlan isolated


2️⃣Связываем их

vlan 100
private-vlan association 101


3️⃣Настраиваем promiscuous порт (uplink)

interface Gi1/0/1
switchport mode private-vlan promiscuous
switchport private-vlan mapping 100 101


4️⃣Настраиваем обычные клиентские порты (isolated)

interface range Gi1/0/10 - 20
switchport mode private-vlan host
switchport private-vlan host-association 100 101


И финально проверяем

show vlan private-vlan
show interfaces switchport


N.A.

Читать полностью…

Network Admin

Почему сервис “умирает” после включения retry

Retry включили на клиенте или gateway, и вместо стабилизации получили рост нагрузки и ощущение деградации, хотя инфраструктура не менялась.

curl -v <url>


Сразу видно, что один пользовательский запрос начинает превращаться в несколько попыток. Они накладываются друг на друга и создают лишний трафик там, где его не было.

Дальше это проявляется как рост latency и “тяжёлые” ответы, даже если сервис формально не падает.

mtr <ip>


Иногда кажется, что проблема в сети, но фактически это сам retry разгоняет нагрузку при любых задержках.

Если посмотреть на уровень пакетов:

tcpdump -i <iface>


видно, как одинаковые запросы уходят пачками вместо одного нормального потока.

На HTTP уровне это превращается в повторяющиеся обращения к одному endpoint без необходимости.

curl -I <url>


И в итоге система деградирует не из-за ошибок, а из-за того, что retry усиливает любую задержку в несколько раз.

N.A.

Читать полностью…

Network Admin

Почему после добавления VLAN пропадает связь

Добавили VLAN, всё выглядит корректно, но хосты внезапно перестают видеть шлюз или друг друга. При этом линк “зелёный”, порты up, явных ошибок нет.

Проверка обычно начинается с того, что VLAN вообще существует и не потерялся на уровне коммутатора.

show vlan brief


Иногда уже здесь видно, что VLAN есть, но он фактически никуда не “приклеен” - нет активных портов или он не проходит дальше по сети.

Дальше почти всегда упирается в транк: VLAN создан, но между устройствами он просто не доходит.

show interfaces trunk


Частая ситуация - VLAN не в allowed list, и трафик физически режется на выходе, хотя локально всё выглядит нормально.

Если с транком всё ок, проверяется интерфейс с точки зрения реальной конфигурации, а не ожиданий.

show running-config interface Gi0/1


Иногда проблема всплывает в несовпадении native VLAN или в том, что один конец линка настроен иначе, чем другой.

Если есть L3, дальше смотрят SVI - и тут часто оказывается, что интерфейс просто не поднялся.

show ip interface brief | include Vlan


И если там down/down, VLAN как будто есть, но в маршрутизации он не участвует вообще.

Проверка маршрутов иногда быстро подтверждает картину.

show ip route connected


N.A.

Читать полностью…

Network Admin

В России можно посещать IT-мероприятия хоть каждый день: как оффлайн, так и онлайн

Но где их находить? Как узнавать о них раньше, чем когда все начнут выкладывать фотографии оттуда?

Переходите на канал IT-Мероприятия России. В нём каждый день анонсируются мероприятия со всех городов России

📆 в канале размещаются как онлайн, так и оффлайн мероприятия;
👩‍💻 можно найти ивенты по любому стеку: программирование, frontend-backend разработка, кибербезопасность, дата-аналитика, osint, devops и другие;
🎙 разнообразные форматы мероприятий: митапы с коллегами по цеху, конференции и вебинары с известными опытными специалистами, форумы и олимпиады от важных представителей индустрии и многое другое

А чтобы не искать по разным форумам и чатам новости о предстоящих ивентах:

🚀 IT-мероприятия Россииподписывайся и будь в курсе всех предстоящих мероприятий!

Читать полностью…

Network Admin

Правильное Питание (ПП) коммутационного оборудования

Система резервного электроснабжения должна обеспечивать не просто бесперебойное, но правильное питание. ПП — как у зожников, только для электроприборов. Много есть неочевидных нюансов — и первые в мире ПП-ИБП, решающие все проблемы с плохим качеством электричества, делает Systeme Electric.

Тотальный онлайн-ЗОЖ — онлайн Защита от Отключений Железа. ПП-ИБП Systeme Electric с онлайн-топологией двойного преобразования обеспечат чистый синус, защитят от помех и скачков напряжения.

Повышенная БЖУ — Бесперебойность Жизненно-важных Устройств. Тянут нагрузку в 150% от номинальной. Система не рухнет в момент включения мощных потребителей (именно в это время возникают краткосрочные, но сильные перегрузки).

Настоящий суперфуд для оборудования — высочайший КПД 95%. Из-за этого ПП-ИБП Systeme Electric не перегреваются.

Самое полное ПП-меню — поддерживают все возможные интерфейсы и протоколы (EPO, SNMP, RS-485, RS-232, USB, RJ45/RJ11, EMBS). Не будет сложностей с подключением нового бесперебойника к существующему оборудованию.

Гарантия рекордная — 3 года — такую больше никто не дает.

Техподдержка 24/7 (в мессенджерах, днем и по телефону): после 6 — можно!

ПП-ИБП Systeme Electric — это не какой-то китайский электро-фастфуд. Это бывшее российское подразделение Schneider Electric, производителя легендарных APC. Технологии и лучшая команда инженеров те же самые — только вывеска новая (из-за евросанкций). Эти люди точно знают: на здоровье оборудования не экономят!

Первые в мире ПП-ИБП тут.

Читать полностью…

Network Admin

VXLAN vs MPLS vs VLAN design в датацентре

Три разных подхода к сегментации и масштабированию сети. Отличаются не только технологией, но и моделью построения всей инфраструктуры.

1️⃣VLAN design

VLAN - это классическая L2 сегментация через broadcast domain. Всё просто: разделили сеть на VLAN и связали их через trunk или L3 устройство.

Подходит для небольших и средних сетей, где важна простота и быстрый запуск.

Проблемы начинаются при масштабировании: рост количества VLAN, зависимость от STP и сложность расширения между сегментами и стойками.

show vlan brief
show interfaces trunk
show spanning-tree


2️⃣MPLS

MPLS использует label switching вместо чистого IP routing. Трафик идет по меткам, что позволяет строить масштабируемый core и управлять путями.

Часто используется в операторских сетях и больших backbone инфраструктурах, где важны контроль и предсказуемость.

Сложность выше за счет control-plane (LDP, RSVP, BGP) и более сложной диагностики.

show mpls forwarding-table
show mpls ldp neighbor
show ip route


3️⃣VXLAN

VXLAN строит overlay поверх IP сети. Ethernet кадры инкапсулируются в UDP и переносятся через L3 underlay.

Это основной подход для современных spine-leaf DC, где underlay остается простым IP routing, а логика сегментации уходит в overlay.

Минус - добавляется слой абстракции, который нужно дебажить вместе с underlay.

show nve peers
show nve vni
show bgp l2vpn evpn summary


N.A.

Читать полностью…

Network Admin

DNS кеш на уровне системы и «устаревшие» ответы

Сервис уже переехал, DNS запись обновлена, инфраструктура выглядит корректно. Но часть клиентов продолжает ходить на старый IP и поведение выглядит нестабильно.


В таких ситуациях проблема часто не в DNS как сервисе, а в том, что ответ уже зафиксирован ближе к клиенту.

Это может быть кеш ОС, systemd-resolved, браузера или самого приложения. Пока TTL не истечёт или кеш не сброшится, запросы продолжают уходить на старый адрес.

resolvectl status
resolvectl statistics

dig <domain>
nslookup <domain>

getent hosts <domain>


В реальной работе это чаще всего проявляется при миграциях сервисов, смене backend или переезде между датацентрами.

Сеть уже работает на новом IP, но часть трафика всё ещё живёт в старой картине из-за локального резолва.

N.A.

Читать полностью…

Network Admin

QoS surprises в multi-tenant сетях

Даже когда вроде всё настроено, трафик может терять приоритет. CoS на L2 и DSCP на L3 не совпадают, и на trunk или overlay это особенно заметно: пакеты проходят, но VoIP, видео и контрольные протоколы начинают тормозить.

Чтобы понять, где «теряется приоритет», полезно смотреть, как устройство обрабатывает QoS. Например на Cisco:

# Как классифицируются пакеты на интерфейсе
show mls qos interface Gi1/0/1
show policy-map interface Gi1/0/1

# Какие очереди и сколько пакетов дропается
show queueing interface Gi1/0/1

# Какие class-map и DSCP сопоставления настроены
show class-map
show policy-map

# Проверка QoS на VLAN
show vlan brief
show mls qos vlan 10


Практика: согласовывать trust boundary между L2 и L3, следить за очередями и задержками для критичных VLAN. Даже маленький mismatch может превратить приоритетный трафик в «тормозной», а эти команды помогут быстро увидеть проблему и исправить её.

N.A.

Читать полностью…

Network Admin

Апгрейд канала не всегда ускоряет приложение

Увеличили линк с 1 Гбит/с до 10 Гбит/с, а скорость приложения почти не изменилась. Такое часто встречается, когда речь про один TCP-поток.

Дело не в канале, а в том, сколько данных поток успевает держать «в полёте». 


RTT остался прежним, TCP window не вырос - поток просто не успевает заполнять новый bandwidth.

Реальный прирост появляется только если:
добавить параллельные потоки
оптимизировать TCP параметры

Проверка:

iperf3 -c <server-ip> -P 1    # один поток — потолок не выше старого
iperf3 -c <server-ip> -P 8 # несколько потоков — канал полностью загружен


N.A.

Читать полностью…
Subscribe to a channel