Network Admin
Обучающий канал по сетевому и системному администрированию. Сотрудничество: @dad_admin Биржа: https://telega.in/c/networkadm РКН: https://bit.ly/4ioc61C
نمایش بیشتر📈 تحلیل کانال تلگرام Network Admin
کانال Network Admin (@networkadm) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 12 464 مشترک است و جایگاه 10 178 را در دسته فناوری و برنامهها و رتبه 53 129 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 12 464 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 04 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -36 و در ۲۴ ساعت گذشته برابر -1 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 17.15% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 8.06% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 2 137 بازدید دریافت میکند. در اولین روز معمولاً 1 004 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 13 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند vlan, arp, интерфейс, ping, dhcp تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Обучающий канал по сетевому и системному администрированию.
Сотрудничество: @dad_admin
Биржа: https://telega.in/c/networkadm
РКН: https://bit.ly/4ioc61C”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 05 ژوئن, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
در حال بارگیری داده...
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 05 ژوئن | +2 | |||
| 04 ژوئن | +1 | |||
| 03 ژوئن | +1 | |||
| 02 ژوئن | +3 | |||
| 01 ژوئن | +13 |
read() работает так: ядро копирует данные из page cache в буфер в user space.Два адресных пространства, одна лишняя копия на каждый вызов. При больших файлах это накапливается. mmap отображает файл прямо в виртуальное адресное пространство процесса. Никакой копии, процесс читает данные напрямую из page cache через указатель. Первое обращение к странице вызывает page fault, ядро подгружает её с диска, дальше доступ как к обычной памяти.
На больших файлах с последовательным чтением разница заметна: меньше syscall-ов, меньше копирований, меньше переключений контекста.Именно поэтому базы данных, поисковые движки и компиляторы используют mmap для работы с большими структурами данных. Когда mmap медленнее При случайном доступе к очень большому файлу mmap генерирует много мелких page fault-ов. Каждый fault это обращение к ядру, TLB miss, возможно диск. read() с большим буфером читает последовательно и prefetch работает лучше.
На NUMA-системах mmap может давать неожиданные результаты: страницы аллоцируются на одном узле, процесс работает на другом, латентность растёт.⏺При записи mmap требует явного msync() чтобы гарантировать сброс на диск. Легко забыть, данные теряются при падении процесса. Смотрим page fault-ы конкретного процесса:
/usr/bin/time -v ./myprogram 2>&1 | grep "Page faults"
perf stat -e page-faults ./myprogram
N.A.| 2 | Настройка VLAN на Linux через systemd-networkd
systemd-networkd это не только для серверов без GUI, на практике удобнее nmcli для воспроизводимых конфигураций: файлы в /etc/systemd/network/, всё декларативно, легко версионировать в git.
Типичный сценарий: сервер подключён к trunk-порту коммутатора, нужно поднять несколько VLAN-интерфейсов с разными адресами.
Создаём VLAN-интерфейсы
Для каждого VLAN нужно два файла: .netdev описывает интерфейс, .network настраивает его.
VLAN 10:
# /etc/systemd/network/vlan10.netdev
[NetDev]
Name=eth0.10
Kind=vlan
[VLAN]
Id=10
# /etc/systemd/network/vlan10.network
[Match]
Name=eth0.10
[Network]
Address=192.168.10.1/24
Gateway=192.168.10.254
VLAN 20 аналогично, меняем Id и адреса.
Привязываем физический интерфейс
Физический интерфейс должен знать что он trunk и какие VLAN на нём живут:
# /etc/systemd/network/eth0.network
[Match]
Name=eth0
[Network]
VLAN=eth0.10
VLAN=eth0.20
Применяем:
systemctl restart systemd-networkd
Проверка
ip -d link show eth0.10
ip addr show eth0.10
networkctl status eth0.10
networkctl status покажет состояние интерфейса, привязанные адреса и есть ли carrier.
N.A. | 1 011 |
| 3 | На Stepik запустили мощный курс по «Troubleshooting Docker и Kubernetes: поиск и устранение проблем»
В программе только важные аспекты:
— troubleshooting Docker и образов
— диагностика сетевых проблем
— настройка readiness/liveness probes
— отладка pod’ов, деплоев и ingress
— анализ логов контейнеров и кластера
— разбор ошибок CrashLoopBackOff, OOMKilled, ImagePullBackOff и других
Собеседования на DevOps/SRE сейчас всё чаще строятся вокруг реальных инцидентов. Данный курс фокусируется именно на таких сценариях и помогает в подготовке к практическим вопросам
48 часов доступен со скидкой 25%
↗️ Пройти курс на Stepik | 1 191 |
| 4 | Почему ICMP redirect считается дырой в безопасности
ICMP redirect это сообщение которое роутер отправляет хосту: “для этого назначения есть путь лучше, используй вот этот шлюз”. Хост получает сообщение и обновляет свою таблицу маршрутизации на лету, без какого-либо подтверждения.
Проблема в том что никакой аутентификации нет. Любой хост в сегменте может отправить ICMP redirect от имени шлюза и перенаправить трафик жертвы через себя.
Классический MITM без особых усилий: жертва продолжает думать что общается напрямую, трафик идёт через атакующего.
⏺Проверяем включены ли redirects на Linux:
sysctl net.ipv4.conf.all.accept_redirects
sysctl net.ipv4.conf.all.send_redirects
1 означает включено. Отключаем:
sysctl -w net.ipv4.conf.all.accept_redirects=0
sysctl -w net.ipv4.conf.all.send_redirects=0
echo "net.ipv4.conf.all.accept_redirects=0" >> /etc/sysctl.conf
echo "net.ipv4.conf.all.send_redirects=0" >> /etc/sysctl.conf
На Cisco роутер по умолчанию отправляет redirects. Отключаем на интерфейсе:
interface Gi0/0
no ip redirects
⏺Отдельная история с secure_redirects: Linux по умолчанию принимает redirects только от шлюзов из своей таблицы маршрутизации. Это частичная защита, но не полная: если атакующий находится на том же сегменте что и шлюз, ограничение не помогает.
sysctl net.ipv4.conf.all.secure_redirects
N.A. | 1 270 |
| 5 | Настройка WireGuard: сервер, клиент, роутинг
WireGuard проще IPsec и OpenVPN по конфигурации, быстрее поднимается и меньше точек где можно ошибиться. Вот минимальная рабочая конфигурация.
Сервер
Генерируем ключи:
wg genkey | tee /etc/wireguard/server_private.key | wg pubkey > /etc/wireguard/server_public.key
Конфиг сервера /etc/wireguard/wg0.conf:
[Interface]
PrivateKey = <server_private_key>
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = <client_public_key>
AllowedIPs = 10.0.0.2/32
Включаем форвардинг и поднимаем интерфейс:
sysctl -w net.ipv4.ip_forward=1
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
wg-quick up wg0
systemctl enable wg-quick@wg0
Клиент
wg genkey | tee /etc/wireguard/client_private.key | wg pubkey > /etc/wireguard/client_public.key
Конфиг клиента:
[Interface]
PrivateKey = <client_private_key>
Address = 10.0.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = <server_public_key>
Endpoint = <server_ip>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
wg-quick up wg0
Проверка
wg show
ping 10.0.0.1
curl ifconfig.me
wg show покажет активные peer-ы, последнее рукопожатие и переданный трафик. Если handshake давно не было, туннель не установлен.
N.A. | 1 201 |
| 6 | 🔈 Новый VPS/VDS-сервис от упоротых инфраструктурщиков
Давно дружим с CORTEL, это ребята про enterprise решения для крупняка. Сейчас они запустили отдельный бренд для аренды VPS/VDS — Serverum.
Это сервис, где можно выбрать VPS, оплатить и сразу начать пользоваться. Подойдёт для dev/stage-сред, тестовых стендов, ботов, pet-проектов, небольших сервисов и других задач, где нужен сервер без лишней возни.
Внутри:
— собственная проприетарная платформа
— отечественные решения
— защищённая инфраструктура
— низкие цены
— живая поддержка от инженерной команды
Сейчас ребята запускают первых пользователей и собирают честную обратную связь от тех, кто реально работает с инфраструктурой.
Можно зайти, потыкать, взять VPS под задачу и написать фидбек.
👉 Serverum.ru | 1 255 |
| 7 | Почему traceroute показывает асимметричный путь и когда это нормально
Запускаешь traceroute до хоста и видишь что хопы идут через один город, а ответы приходят явно другим путём.
Или часть хопов показывает латентность выше чем финальный хост. Выглядит как проблема, но чаще всего это просто нормальная работа интернета.
⏺IP-маршрутизация не гарантирует симметрию. Пакет от тебя до хоста и пакет обратно идут независимо, каждый по своей таблице маршрутизации на каждом хопе. BGP на разных AS выбирает пути по своим политикам, и нет никакого механизма который бы согласовывал прямой и обратный путь.
Латентность растёт а потом падает к финальному хопу, это тоже не аномалия. Промежуточные роутеры отвечают на TTL exceeded с низким приоритетом, часто через менее оптимальный интерфейс. Финальный хост отвечает нормально.
Цифры на хопах показывают не задержку пути а задержку до конкретного роутера с его стороны.
Смотрим путь в обе стороны:
traceroute 8.8.8.8
mtr --report 8.8.8.8
mtr показывает потери и латентность в реальном времени по каждому хопу, намного информативнее одного traceroute.
Когда асимметрия это реальная проблема: stateful firewall или NAT на пути видит только половину сессии. Пакеты в одну сторону проходят, в другую дропаются потому что состояние соединения не было установлено через этот узел.
mtr --report --report-cycles 20 <IP>
Если конкретный хоп показывает стабильные потери только в одну сторону, вот где проблема.
N.A. | 1 491 |
| 8 | Что происходит когда OSPF area 0 теряет связность
Area 0 это backbone. Все остальные area обязаны быть физически или логически подключены к ней.
Если area 0 разваливается на части, OSPF не пересчитывает маршруты в обход, он просто перестаёт видеть часть сети.
Два роутера в area 0 потеряли связь между собой. Каждый считает что его кусок backbone и есть вся сеть. Area которые висят за каждым из них становятся недостижимы с другой стороны. Никаких fallback, никакого альтернативного пути если он не был настроен заранее.
Смотрим что происходит с соседями и LSA:
show ip ospf neighbor
show ip ospf database
show ip ospf database summary
Если в базе данных пропали LSA от роутеров на другой стороне разрыва, связность потеряна. Маршруты до их сетей исчезнут из таблицы маршрутизации.
show ip route ospf
Временное решение пока чинится физика: virtual-link через транзитную area. Натягиваем логический туннель между двумя ABR через area которая ещё жива:
router ospf 1
area 1 virtual-link <router-id соседнего ABR>
На обоих ABR с обеих сторон разрыва. Virtual-link восстанавливает связность area 0 поверх transit area.
N.A. | 2 032 |
| 9 | Вебинар MPLS в маршрутизаторах ESR. Часть 1. L2VPN!
Мы обещали вернуться с подробностями, и мы это делаем. Пришло время окончательно разобраться, почему MPLS называют «слоем 2.5» и как заставить его работать на благо вашей сети.
📌 1 июня 2026 (понедельник)
🕐 14:00 (по МСК)
Начинаем серию вебинаров по технологии, которая не теряет актуальности и остается базой для современных сетей.
📚 Что разберем на первой встрече:
➖Вспомним теорию — зачем вообще нужен MPLS и почему его называют «L2.5»
➖L2VPN Martini mode
➖L2VPN Kompella mode
🎙 Спикер:
Алексей Листаров — инженер с многолетним опытом работы в крупном операторе связи. Сертифицированный преподаватель нашего авторизованного учебного центра Академии Eltex.
🔗 Регистрация
Готовьте свои вопросы по конфигурации, будем разбираться вместе!
#eltex #eltexcm #webinar #вебинар #esr #mpls #kompella #martini #mode
@eltexcm
#реклама
О рекламодателе | 1 021 |
| 10 | Почему после замены коммутатора половина сети перестала работать
Заменили коммутатор, всё подключили, часть хостов работает, часть нет. Физически всё поднято, линки горят. Начинается час диагностики.
Обычно проблема в одном из трёх
Новый коммутатор пришёл с дефолтной конфигурацией. Все порты в VLAN 1, транки не настроены. Хосты которые работают находятся в VLAN 1 и просто повезло. Остальные VLANы не существуют на новом железе.
show vlan brief
show interfaces trunk
Если VLANы не созданы или транк не поднят, вот оно.
STP выбрал новый коммутатор Root Bridge потому что у него меньший MAC или приоритет не был выставлен. Топология пересчиталась, часть портов ушла в blocking. Хосты за этими портами недоступны.
show spanning-tree
show spanning-tree detail | include root
Смотрим кто стал Root и почему. Если новый коммутатор, выставляем приоритет обратно на нужное железо:
spanning-tree vlan 1 priority 4096
Старый коммутатор работал с negotiated duplex или speed, новый договорился иначе. Часть портов поднялась в half-duplex, отсюда коллизии и потери.
show interfaces Gi0/1 | include duplex
Если видим half-duplex там где не должно быть, фиксим явно:
interface Gi0/1
duplex full
speed 1000
N.A. | 1 916 |
| 11 | У FirstVDS проходит акция «Битва Гиков»
Прямо сейчас можно заказать новый VDS со скидкой до 30%, подключить спецтариф с фиксированной ценой на всё время использования сервера, а заодно поучаствовать в онлайн‑игре и розыгрыше призов.
Среди призов — PS5 Pro 2 ТБ, Steam Deck OLED 512 ГБ, и сертификаты на баланс.
За призами! 🎮
#реклама
О рекламодателе | 1 282 |
| 12 | Как ведёт себя сеть при split-brain в HSRP
Два роутера в HSRP обмениваются hello-пакетами каждые 3 секунды. Если связь между ними пропадает, каждый решает что сосед умер и становится Active.
Оба держат один виртуальный IP, оба отвечают на ARP-запросы своим MAC.
Клиенты в этот момент делятся на два лагеря в зависимости от того чей ARP-ответ пришёл последним.
Половина трафика идёт через один роутер, половина через другой. Если маршруты на них разные, часть сессий рвётся, часть работает.
Отлаживать это неприятно потому что проблема плавающая и воспроизводится через раз.
Смотрим состояние HSRP и кто сейчас Active:
show standby brief
show standby
Если оба показывают Active, split-brain в действии. Проверяем доступность между роутерами:
ping <IP соседнего роутера> source <интерфейс HSRP>
Чаще всего причина не в роутерах а в коммутаторе между ними: упал транк, слетел VLAN, сработал STP. Hello-пакеты не проходят, оба уходят в Active.
show interfaces trunk
show spanning-tree vlan <ID>
N.A. | 1 941 |
| 13 | Что происходит когда два DHCP-сервера отвечают на один запрос
Подключил кто-то в офисе домашний роутер к корпоративной сети, или подняли новый DHCP и старый не выключили. Оба слышат broadcast, оба отвечают.
Клиент берёт первый пришедший offer. Не правильный, а именно первый. Если левый сервер ответил быстрее, клиент получает адрес из чужого пула, чужой шлюз, чужой DNS. Настроен, но в сеть не ходит или ходит куда не надо.
Хуже когда пулы пересекаются: два клиента получают одинаковый IP и оба теряют связь. Без каких-либо ошибок на их стороне.
Смотрим кто вообще отвечает на DHCP в сегменте:
sudo tcpdump -i eth0 port 67 or port 68 -n
nmap --script broadcast-dhcp-discover
Если в выводе несколько Server Identifier, проблема подтверждена.
Лечится DHCP Snooping на коммутаторе: офферы разрешены только с доверенных портов, со всех остальных дропаются:
ip dhcp snooping
ip dhcp snooping vlan 10
interface Gi0/1
ip dhcp snooping trust
interface range Gi0/2 - 24
no ip dhcp snooping trust
N.A. | 1 921 |
| 14 | Ethernet OAM (802.1ag) с Linux и FRRouting
Ethernet OAM (Operations, Administration and Maintenance) по стандарту 802.1ag позволяет контролировать доступность и состояние линков на уровне L2.
На Linux можно использовать утилиты eth-oam для генерации OAM-сообщений (Continuity Check Messages, Loopback, Link Trace).
Пример проверки линка:
# Проверка доступности линка между хостами через CFM Continuity Check
eth-oam-ccm -i eth0 -m 1 -t 10
Где -i — интерфейс, -m — Maintenance Association ID, -t — интервал в секундах.
Для интеграции с FRRouting можно настроить уведомления о недоступности линка и динамически изменять маршруты.
Например, при падении линка BGP-сессия будет разорвана и маршруты уйдут на резервный путь.
Дополнительно можно использовать Loopback и Link Trace для диагностики проблем:
# Loopback запрос к соседнему устройству
eth-oam-lb -i eth0 -m 1
# Trace путь до узла через L2
eth-oam-lt -i eth0 -m 1 -d <MAC-адрес-соседа>
N.A. | 1 797 |
| 15 | Что такое IX и как трафик идёт внутри него
IX (Internet Exchange) это физическая точка где провайдеры, CDN и крупные сети подключаются друг к другу напрямую. Вместо того чтобы гонять трафик через транзитного провайдера и платить за каждый гигабит, участники обмениваются трафиком напрямую и бесплатно между собой.
Крупнейшие точки обмена: DE-CIX во Франкфурте, AMS-IX в Амстердаме, MSK-IX в Москве. Через DE-CIX проходит больше 10 Тбит/с в пике.
Как устроено внутри
Физически IX это один большой коммутатор (или несколько связанных), к которому все участники подключают свои роутеры. Эта общая среда называется IXP fabric. Каждый участник получает порт и IP-адрес в общей подсети IX.
Дальше всё через BGP. Каждый участник поднимает BGP-сессии с теми с кем хочет обмениваться трафиком, анонсирует свои префиксы и получает чужие. Никакой автоматики, только явные пиринговые договорённости.
Route Server
Чтобы не поднимать сотни BGP-сессий с каждым участником отдельно, большинство IX предоставляют Route Server.
Подключаешься к одному RS, получаешь маршруты от всех участников кто тоже подключён к RS. Можно фильтровать что принимать и что анонсировать.
router bgp 65001
neighbor 193.178.185.1 remote-as 65000
neighbor 193.178.185.1 description MSK-IX Route Server
Как трафик идёт внутри
Пакет от пользователя провайдера А до сервера в сети провайдера Б: роутер А смотрит BGP-таблицу, видит что префикс Б получен через IX, отправляет пакет напрямую на роутер Б через IXP fabric. Транзитный провайдер не участвует, задержка меньше, стоимость ниже.
N.A. | 2 361 |
| 16 | Почему MTU 1500 в реальности никогда не 1500. Часть 2
Почему фрагментация не всегда спасает: Когда пакет не влезает в MTU промежуточного узла, тот должен отправить отправителю ICMP Fragmentation Needed.
Отправитель получает сообщение, уменьшает размер сегмента и пробует снова. Это называется Path MTU Discovery и работает хорошо в теории.
На практике многие сети и файерволы блокируют ICMP полностью. Сообщение Fragmentation Needed не доходит, отправитель продолжает слать большие пакеты, они дропаются без каких-либо уведомлений.
Симптом характерный: мелкие запросы проходят нормально, крупные зависают или обрываются.
Проверяем реальный Path MTU до хоста и тестируем конкретный размер пакета:
tracepath 8.8.8.8
ping -M do -s 1400 8.8.8.8
Если ping с -M do (don’t fragment) падает на определённом размере, MTU на пути именно там.
Как фиксить
Выставляем MTU вручную на туннельном интерфейсе:
ip link set dev tun0 mtu 1420
Для PPPoE на Cisco MSS clamp ограничивает размер TCP-сегментов на уровне роутера, не давая клиентам использовать значения выше допустимого:
interface Dialer0
ip tcp adjust-mss 1452
N.A. | 2 301 |
| 17 | Как работает TCAM и почему правила ACL влияют на производительность железа
Обычная RAM ищет данные по адресу: дай адрес, получи значение. TCAM работает наоборот: дай значение, получи результат за один такт. Content Addressable Memory, и T означает Ternary: каждый бит может быть 0, 1 или X (don’t care). Именно X позволяет матчить префиксы и маски.
Благодаря этому коммутатор находит совпадение для любого пакета за одну операцию, независимо от размера таблицы. Именно поэтому железо форвардит трафик на линейной скорости.
Почему TCAM дорогой и ограниченный
TCAM потребляет в 5-10 раз больше энергии и площади чристалла чем обычная SRAM. Поэтому его мало: на типичном enterprise-коммутаторе несколько десятков тысяч записей, и они делятся между маршрутами, ACL, QoS и MAC-таблицей.
Посмотреть сколько TCAM осталось на Cisco:
show platform tcam utilization
show sdm prefer
Как ACL влияют на TCAM
Каждая строка ACL это одна или несколько записей в TCAM. Правило с диапазоном портов разбивается на несколько записей потому что TCAM не умеет в диапазоны нативно.
Правило permit tcp any any gt 1024 может развернуться в десятки записей. На больших ACL это незаметно, но на коммутаторах с маленьким TCAM таблица заканчивается и новые правила просто не применяются.
show ip access-lists
show platform hardware capacity
Что делать при нехватке
Меняем SDM profile чтобы перераспределить TCAM между функциями. Например отдать больше под ACL за счёт MAC-таблицы:
sdm prefer acl
reload
N.A. | 2 040 |
| 18 | Почему MTU 1500 в реальности никогда не 1500?
MTU 1500 это максимальный размер payload в Ethernet-фрейме. Цифра знакомая, но в реальной сети между твоим приложением и получателем почти всегда есть что-то, что откусывает от этого значения.
Иногда немного, иногда достаточно чтобы сломать крупные передачи.
Туннели
Любой туннель оборачивает оригинальный пакет в новый и добавляет свои заголовки. GRE забирает 24 байта, IPsec в tunnel mode от 50 до 70 байт в зависимости от алгоритмов шифрования, WireGuard 60 байт, VXLAN 50 байт.
Если на пути несколько туннелей, байты суммируются. Итоговый MTU внутри может оказаться 1400 и ниже, при этом интерфейс снаружи честно показывает 1500.
PPPoE
PPPoE используют большинство провайдеров на последней миле. Протокол добавляет 8 байт заголовка к каждому фрейму, реальный MTU на интерфейсе становится 1492.
Если роутер не учитывает это и анонсирует клиентам MSS под 1500, крупные TCP-сегменты начинают фрагментироваться или молча дропаться на пути.
Делаем вторую часть с более подробным разбором на практике?
N.A. | 2 373 |
| 19 | Как коммутатор строит CAM-таблицу и что происходит при переполнении
CAM-таблица это то, за счёт чего коммутатор работает как коммутатор, а не как хаб. Без неё каждый фрейм уходил бы на все порты.
Как строится таблица
Коммутатор учится пассивно: когда фрейм приходит на порт, смотрит на source MAC и записывает на каком порту он находится.
Когда нужно отправить фрейм, ищет destination MAC. Нашёл, отправил на конкретный порт. Не нашёл, flooding на все порты кроме входящего. Записи живут 300 секунд по умолчанию, потом удаляются.
show mac address-table
show mac address-table aging-time
Что происходит при переполнении
CAM хранится в аппаратной памяти фиксированного размера. Когда таблица полна, новые записи не добавляются и любой фрейм с неизвестным MAC уходит флудом. Коммутатор деградирует до хаба.
На этом построена атака MAC flooding: генерируются фреймы с тысячами случайных source MAC, таблица забивается, и весь трафик начинает идти на порт атакующего тоже.
Защита
Port Security ограничивает количество MAC на порту:
interface Gi0/1
switchport port-security
switchport port-security maximum 2
switchport port-security violation restrict
show port-security interface Gi0/1
N.A. | 2 227 |
| 20 | Proxy ARP: когда роутер отвечает на чужие ARP-запросы
Обычно на ARP-запрос “кто такой 192.168.1.50?” отвечает сам хост с этим IP. Proxy ARP меняет это поведение: роутер перехватывает запрос и отвечает своим MAC-адресом, как будто этот IP находится на нём. Хост отправляет трафик на роутер, роутер форвардит дальше.
Изначально это придумали для соединения подсетей без настройки маршрутов на конечных устройствах. Актуально было в эпоху когда маски подсетей на хостах не совпадали с реальной топологией.
Где это реально используется сейчас
В облаках и гипервизорах Proxy ARP используется постоянно. Когда виртуальная машина получает IP из одной подсети, а физически находится на хосте в другой, гипервизор отвечает на ARP-запросы за неё. VMware, KVM с определёнными сетевыми конфигурациями, AWS при определённых настройках VPC, всё это Proxy ARP под капотом.
Когда это ломает сеть
Если Proxy ARP включён на роутере по умолчанию (на Cisco он включён), а в сети несколько роутеров, начинается хаос.
Несколько устройств отвечают на один ARP-запрос разными MAC-адресами, трафик уходит не туда, сессии рвутся.
Вторая проблема: хосты кешируют ARP-ответы. Если роутер ответил за чужой IP, хост будет слать трафик через него даже когда прямой маршрут появился.
Проверяем на Cisco:
show ip interface Gi0/0 | include proxy
Отключаем если не нужен:
interface Gi0/0
no ip proxy-arp
На Linux:
cat /proc/sys/net/ipv4/conf/eth0/proxy_arp
echo 0 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
N.A. | 2 802 |
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
