Сегодня разберём как академики отобрали у армии протокол который держит корпоративные сети до сих пор.Серверная Админа | Бункер Хакера | #OSPF
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤4
Привет, сетевой друг!
Сегодня разберу протокол RSTP, который заменил STP и убрал самую бесучую его черту: ожидание по 30-50 секунд при любом изменении топологии.spanning-tree mode rapid-pvst
! Назначаем приоритет корневого свитча
spanning-tree vlan 10 priority 4096
spanning-tree vlan 20 priority 4096
! PortFast для портов к хостам - сразу в forwarding
interface GigabitEthernet0/1
spanning-tree portfast
spanning-tree bpduguard enable
! Глобально для всех portfast-портов
spanning-tree portfast bpduguard default
! Проверяем состояние
show spanning-tree vlan 10
show spanning-tree detail
show spanning-tree inconsistentports
debug spanning-tree events
show spanning-tree vlan 10 detail | include port|role|state|cost
Если видите TCN (Topology Change Notification) слишком часто - ищите нестабильный порт или петлю.
Серверная Админа | #RSTP
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Почему порты стали «дверями» в сервер, и кто решил, что SSH будет 22
Статья про то, как порты постепенно превратились из технической детали ранних сетей в привычную модель «дверей» в сервер. Сначала они использовались в ARPANET для разделения трафика, потом с TCP/IP и BSD-сокетами стали стандартными точками привязки сервисов, а Джон Постел закрепил за ними официальные номера через IANA. SSH получил порт 22 почти случайно, когда утвердили уже используемое значение, а с появлением NAT и PAT порты стали ещё и способом разделять множество устройств за одним IP.
Серверная Админа | Zeroday | #Статья
Статья про то, как порты постепенно превратились из технической детали ранних сетей в привычную модель «дверей» в сервер. Сначала они использовались в ARPANET для разделения трафика, потом с TCP/IP и BSD-сокетами стали стандартными точками привязки сервисов, а Джон Постел закрепил за ними официальные номера через IANA. SSH получил порт 22 почти случайно, когда утвердили уже используемое значение, а с появлением NAT и PAT порты стали ещё и способом разделять множество устройств за одним IP.
Серверная Админа | Zeroday | #Статья
❤10🤔4
Привет, сетевой друг!
Продолжим
разбирать Primus - тул для обслуживания Windows который не стыдно запустить на рабочей машине. Покажу полезные команды для инструмента.# Пользовательские временные файлы
Remove-Item "$env:TEMP\*" -Recurse -Force -ErrorAction SilentlyContinue
# Системные временные файлы
Remove-Item "C:\Windows\Temp\*" -Recurse -Force -ErrorAction SilentlyContinue
# Кэш Windows Update
Stop-Service wuauserv -Force
Remove-Item "C:\Windows\SoftwareDistribution\Download\*" -Recurse -Force
Start-Service wuauserv
:: Сначала DISM восстанавливает образ
DISM /Online /Cleanup-Image /RestoreHealth
:: Потом SFC проверяет файлы по восстановленному образу
sfc /scannow
:: Результат SFC смотрим в логе
findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log | tail -50
netsh winsock reset
netsh int ip reset
netsh int tcp reset
ipconfig /flushdns
ipconfig /release
ipconfig /renew
После этого обязательна перезагрузка - изменения применяются только после неё.
$date = Get-Date -Format "yyyy-MM-dd"
$path = "C:\RegBackup\$date"
New-Item -ItemType Directory -Force -Path $path
reg export HKLM\SYSTEM "$path\SYSTEM.reg"
reg export HKLM\SOFTWARE "$path\SOFTWARE.reg"
reg export HKLM\SAM "$path\SAM.reg"
$drives = Get-PhysicalDisk | Select MediaType, DeviceId
foreach ($drive in $drives) {
if ($drive.MediaType -eq "SSD") {
Optimize-Volume -DriveLetter C -ReTrim -Verbose
} else {
Optimize-Volume -DriveLetter C -Defrag -Verbose
}
}
Серверная Админа | Zeroday | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤2
Привет, сетевой друг!
Давай расскажу про IP SLA с Object Tracking - как роутер сам принимает решения на основе качества канала, а не просто факта его наличия.ip sla 1
udp-jitter 8.8.8.8 5000 num-packets 20 interval 20
frequency 30
threshold 100
ip sla schedule 1 life forever start-time now
track 1 ip sla 1 reachability
track 2 ip sla 1 state
delay down 10 up 30
delay down 10 up 30 - переключение происходит только если состояние не изменилось 10 секунд вниз или 30 секунд вверх. Убирает флаппинг при нестабильном канале.
ip route 0.0.0.0 0.0.0.0 10.0.0.1 track 1
ip route 0.0.0.0 0.0.0.0 10.0.0.2 10
Основной маршрут живёт пока track 1 зелёный. Резервный с distance 10 поднимается автоматически при деградации основного канала.
interface GigabitEthernet0/1
ip address 10.0.0.1 255.255.255.252
shutdown track 1
show ip sla statistics 1
show track 1
show track brief
show ip sla statistics покажет RTT, jitter, процент потерь и количество превышений threshold за последний период.
Серверная Админа | Zeroday | #IPSLA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤7
Привет, сетевой друг!Сегодня расскажу про момент, когда компьютерные сети перестали быть чисто про вычисления, и внезапно стали тем, чем мы пользуемся каждый день - системой общения и обмена данными.Серверная Админа | Бункер Хакера | #история
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Привет, сетевой друг!
Сегодня разберём ещё 5 полезных фишек для Cisco IOS, которые реально экономят время и нервы.
tc qdisc show dev eth0
# fq_codel с явным ECN
tc qdisc replace dev eth0 root fq_codel ecn
# Или fq для BBR
tc qdisc replace dev eth0 root fq flow_limit 200 ecn
# Статистика дропов и ECN-меток
tc -s qdisc show dev eth0
fq_codel меряет latency очереди и маркирует пакеты ECN до того как начинает дропать. В отличие от глобального tcp_ecn=1 работает на уровне конкретного интерфейса и не зависит от поддержки на промежуточном оборудовании.
nproc
# Включаем RPS на интерфейсе для всех CPU (4-core = f)
echo f > /sys/class/net/eth0/queues/rx-0/rps_cpus
# RFS — направляем пакеты на тот CPU где живёт приложение
sysctl -w net.core.rps_sock_flow_entries=32768
echo 2048 > /sys/class/net/eth0/queues/rx-0/rps_flow_cnt
На однопоточном NIC без аппаратного multiqueue весь входящий трафик обрабатывается одним CPU. RPS разносит нагрузку программно.
sysctl -w net.ipv4.tcp_notsent_lowat=16384
Без этого при медленном получателе send buffer забивается и приложение блокируется на write() даже когда реально может отправить данные. Критично для HTTP/2 серверов с приоритизацией потоков.
ethtool -k eth0 | grep generic-receive
ethtool -K eth0 gro off
ethtool -K eth0 tso off gso off
GRO объединяет входящие пакеты в большие chunks перед передачей в стек - хорошо для throughput, плохо для латентности. На торговых системах и VoIP это принципиально.
sysctl -w net.ipv4.ip_local_port_range="1024 65535"
sysctl -w net.ipv4.ip_local_reserved_ports="8080,8443,9090-9100"
Без резервирования при высоком RPS эфемерное соединение может занять порт на котором должен подняться сервис, и сервис не стартует с EADDRINUSE.
Серверная Админа | Zeroday | #Cisco
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3👎1🔥1
OSPF маршруты есть, но трафик идёт через более длинный путь:
Anonymous Quiz
10%
Таймеры не совпадают
29%
SPF не пересчитался
24%
Неверный area type
37%
Другой протокол с меньшим AD
🤔8👌3
Как я сделал сканер под iOS и Android для диагностики Wi-Fi-сети
Статья про то, как автор сделал мобильный Wi-Fi-сканер для iOS и Android, превращающий смартфон в инструмент для радиообследования сетей. На Android основная инженерная часть связана с обходом ограничений сканирования и throttling, а также организацией непрерывного режима измерений. На iOS данные приходится собирать через системные обходные механизмы вроде Shortcuts и App Intents из-за закрытых Wi-Fi API.
Серверная Админа | Zeroday | #Статья
Статья про то, как автор сделал мобильный Wi-Fi-сканер для iOS и Android, превращающий смартфон в инструмент для радиообследования сетей. На Android основная инженерная часть связана с обходом ограничений сканирования и throttling, а также организацией непрерывного режима измерений. На iOS данные приходится собирать через системные обходные механизмы вроде Shortcuts и App Intents из-за закрытых Wi-Fi API.
Серверная Админа | Zeroday | #Статья
👍11❤2
Привет, сетевой друг!
Сегодня про OSV.dev - открытую базу уязвимостей и сервис, который проверяет зависимости проекта на известные security-проблемы в open-source.# установка
curl -sSfL https://raw.githubusercontent.com/google/osv-scanner/main/install.sh | sh
# проверка проекта
osv-scanner scan .
# проверка Docker-образа
osv-scanner scan --docker nginx:latest
# проверка SBOM (CycloneDX / SPDX)
osv-scanner scan --sbom sbom.json
# быстрый просмотр конкретной уязвимости
osv-scanner query osv.dev/PYSEC-2023-15
Серверная Админа | Zeroday | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👾3
Сегодня про базовую боль L2-сетей - петли, которые ломают сеть быстрее, чем любая “сложная” атака.• сеть сначала ведёт себя как обычный граф
• потом выбирается точка опоры (root)
• из всех возможных путей остаётся один
• всё остальное “замораживается”, пока не случится обрыв
Серверная Админа | Zeroday | #Spannkingtree
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤1
👋 Привет, сетевой друг!
Сегодня расскажу, что такое API, зачем нужен и почему его сейчас используют вообще везде.Пример запроса к устройству:
curl -X GET https://router/api/interfaces \
-H "Authorization: Bearer TOKEN"
Ответ:
{
"interface": "Gi0/1",
"status": "up",
"traffic": "124 Mbps"
}
GET - получить данные
POST - создать объект
PUT - изменить объект
DELETE - удалить объект
По такой схеме работают Cisco DNA Center, NetBox, Zabbix, Grafana, облачные платформы и сотни других систем.Пример создания VLAN через API:
curl -X POST https://switch/api/vlans \
-H "Authorization: Bearer TOKEN" \
-d '{"id":100,"name":"USERS"}'
# Проверить доступность API
curl https://device/api
# Красиво вывести JSON
curl https://device/api/interfaces | jq
# Посмотреть HTTP-заголовки
curl -I https://device/api
Если сегодня сеть управляется кодом, то API - это тот самый язык, на котором разговаривают маршрутизаторы, контроллеры, системы мониторинга и автоматизация.Серверная Админа | Zeroday | #API
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🤔3❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Привет, сетевой друг! Расскажу еще о 3 способах прокачать защиту Mikrotik./interface bridge
set bridge1 igmp-snooping=yes multicast-querier=yes
/interface bridge mdb
Особенно критично в сетях с IPTV или промышленными протоколами — без snooping мультикаст-поток на 20 Мбит/с убивает весь сегмент.
/ip firewall nat
add chain=srcnat \
src-address=192.168.1.0/24 \
dst-address=1.2.3.4 \
protocol=tcp \
dst-port=80 \
action=masquerade \
comment="Hairpin NAT"
add chain=dstnat \
dst-address=1.2.3.4 \
protocol=tcp \
dst-port=80 \
action=dst-nat \
to-addresses=192.168.1.10 \
comment="Forward to internal server"
Запрос изнутри на внешний IP роутер разворачивает на внутренний сервер и маскарадит источник - сервер отвечает правильно.
/tool sniffer
set filter-interface=ether1 \
filter-ip-protocol=tcp \
filter-port=80,443 \
streaming-enabled=yes \
streaming-server=192.168.1.100 \
memory-limit=10
/tool sniffer start
На стороне Wireshark просто слушаем UDP 37008 - весь отфильтрованный трафик приходит в реальном времени. Флеш роутера не трогается, нагрузка минимальная.
Серверная Админа | Бункер Хакера | #Mikrotik
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍6👎1
Игра в имитацию: как современные решения делают Wireguard невидимым для DPI
Статья про то, как WireGuard сначала научились легко узнавать и резать по характерному хендшейку и структуре пакетов, потом начали прятать за шумом и обфускацией, а дальше дошли до более хитрой схемы, где трафик уже не просто «ломает сигнатуру», а пытается выглядеть как QUIC, DNS, STUN или SIP - с прокси, который отвечает как настоящий сервис и поддерживает эту маску с обеих сторон, из-за чего блокировать становится сложнее не технически, а по рискам и побочным эффектам.
Серверная Админа | Zeroday | #Статья
Статья про то, как WireGuard сначала научились легко узнавать и резать по характерному хендшейку и структуре пакетов, потом начали прятать за шумом и обфускацией, а дальше дошли до более хитрой схемы, где трафик уже не просто «ломает сигнатуру», а пытается выглядеть как QUIC, DNS, STUN или SIP - с прокси, который отвечает как настоящий сервис и поддерживает эту маску с обеих сторон, из-за чего блокировать становится сложнее не технически, а по рискам и побочным эффектам.
Серверная Админа | Zeroday | #Статья
👍21❤1
Привет, сетевой друг!
Расскажу про универсальный тул для сетевой разведки и диагностики - Hawkgit clone https://github.com/medpaf/hawk.git
cd hawk
sudo sh setup.sh
sudo python3 hawk.py
# поиск устройств в локальной сети
-scanlan
# TCP/SYN-сканирование хоста
-scan -host 192.168.1.10
# определение версии сервиса
-grab -host 192.168.1.10 -p 22,80,443
# DNS-проверка
-ns example.com
# WHOIS
-whois example.com
-autoscan example.com
Он запускает несколько этапов сбора информации подряд и помогает быстро получить базовую картину по цели без ручного запуска каждого модуля.Серверная Админа | Zeroday | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤1👾1
Привет, сетевой друг!
Сегодня разберу QUIC, который фактически заменил связку TCP+TLS в современном вебе и убрал одну из самых неприятных проблем классического транспорта - блокировку потоков при потерях.обычное соединение (1-RTT)
client → Initial + crypto
server → Handshake + data
client → encrypted data
повторное соединение (0-RTT)
client → сразу encrypted request (если есть ключи сессии)
QUIC почти всегда UDP 443
tcpdump -i eth0 udp port 443 -nn
точечно по хосту
tcpdump -i eth0 host 1.1.1.1 -nn
curl –http3 https://cloudflare.com
curl –http3 -I https://google.com
Если есть fallback - значит клиент/сервер не договорились о QUIC и ушли в HTTP/2.
openssl s_client -alpn h3 -connect example.com:443
Если в ответе есть
h3 - это HTTP/3 поверх QUIC.udp.port == 443
quic
tls && udp
Но важно: большая часть QUIC внутри зашифрована, включая транспортные метаданные, поэтому анализ становится гораздо более “слепым”, чем в TCP.
ss -u -a | grep 443
netstat -uapn | grep 443
lsof -i UDP:443
Серверная Админа | Zeroday | #QUIC
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍4❤2
Привет, сетевой друг!
Сегодня поговорим о Ван Якобсоне - человеке который спас интернет от коллапса в конце 80-х.Серверная Админа | Zeroday | #история
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤2
Привет, сетевой друг!
Разберём Flexible NetFlow - как собирать именно те метрики которые нужны, а не всё подряд.flow record QOS_ANALYSIS
match ipv4 source address
match ipv4 destination address
match ipv4 dscp
match transport source-port
match transport destination-port
collect counter bytes
collect counter packets
collect transport tcp flags
collect ipv4 ttl minimum
collect ipv4 ttl maximum
TTL minimum и maximum в одном потоке - сразу видно асимметричную маршрутизацию когда пакеты туда и обратно идут разными путями.flow exporter COLLECTOR
destination 10.0.0.100
transport udp 2055
export-protocol netflow-v9
template data timeout 60
flow monitor QOS_MONITOR
record QOS_ANALYSIS
exporter COLLECTOR
cache timeout active 60
cache timeout inactive 15
interface GigabitEthernet0/1
ip flow monitor QOS_MONITOR input
ip flow monitor QOS_MONITOR output
flow record PORT_SCAN_DETECT
match ipv4 source address
match ipv4 destination address
match transport destination-port
collect counter packets
collect timestamp sys-uptime first
collect timestamp sys-uptime last
Если один источник генерирует тысячи flow с разными dst-портами за короткое время - сканирование.show flow monitor QOS_MONITOR cache
show flow monitor QOS_MONITOR cache aggregate ipv4 source address
show flow monitor QOS_MONITOR statistics
aggregate позволяет группировать прямо в CLI - супер для быстрой диагностики без поднятия внешнего коллектора.Серверная Админа | Zeroday | #Netflow
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
QoS shaping настроен на выходе, но burst трафика всё равно вызывает потери:
Anonymous Quiz
21%
Неверная очередь
18%
ACL ошибка
25%
Bc/Be параметры выставлены неверно
36%
Полисер вместо шейпера
❤3