Патчкорд
2.45K subscribers
210 photos
18 videos
60 files
3.03K links
Блог сетевого инженера. Новости телеком, IT и около IT. Связь - @UrgentPirate
Download Telegram
Помимо Starlink есть ещё OneWeb и им тоже можно пользоваться, хотя спутников поменьше, а задержки пляшут, но в целом заявленная ширина канала выдерживается.
👍5
replay.bgphelp.com - просмотр выбранных автономок и префиксов в исторической перспективе, есть данные ROA, отчёты по самым флапающим и префиксам сменившим автономки.
👍6
Тут конечно много поют дифирамбов Arista AVD, но если работает, почему не похвалить, тем более что про ИИ не вспомнили. Снести дом и построить такой же заново, ради смены паркета в одной из комнат - теперь и в сетях. Помним только, что на чём-то это всё же должно держаться.
Как обстоят дела с ECN в Интернете - никак, его исчезающе мало, все надеются только на себя.
Связь - стратегическая штука и всегда ей была. И государства, перестав относиться к Интернету как к маргинальному явлению для гиков, со всей своей неотвратимостью и неспешностью закатают Интернет туда же где находится сейчас остальная связь. Автор рассказывает про архитектурную и юридическую ущербность попыток государств вмешаться в шифрованный Интернет канал, но это не такая вещь которая государства волнует. Упоминаемая в статье телефония, где всё что надо государству исполняется, тому пример, и автор это признаёт. Скоро везде. Выход, в общем, тоже есть - стать маргинальной, никому не нужной группой гиков обратно.
👍7
Фрагментация корень всех зол, наверное, хотели как лучше. В любом случае, в мире где мы живём и есть IPID существуют разные способы его задавать, в ответ на атаки, использующие способы, которые были использованы до этого. И всё это так и движется по кругу возвращаясь к самому началу, когда простой последовательный глобальный счётчик не так уж и плох, если у вас много трафика.
👍1
Мама плохого не посоветует. (корпоративно ИБшное)
Forwarded from ntwrk memes
👍16
Если вам совсем-совсем не нужен IPv6 в Linux. GRUB - сила, а с остальным всё понятно, находим галочку, кнопочку, строчечку в своих настройках сети и переключаем туда куда надо. Это имеет всё смысл там где IPv6 нет и не предвидится, таких мест ещё много. Главное не забыть где это было сделано, чтобы потом когда IPv6 понадобится, включить всё обратно.
👍5👎5
Как правильно готовить RPKI на текущий момент из накопленного опыта. Используйте RPKI инфраструктуру RIR, подписывайте ровно то что и анонсируйте, проверяйте себя, чтобы не отфильтровать лишнего.
👍4
Интересный инструмент который ищет взаимосвязи между номером автономной системы и организацией -asint.netsecurelab.org, с отправной точкой номером автономной системы, и результатом всеми автономными системами хоть как-то связанными с этой организацией. Попадаются, конечно, совпадения чисто по написанию, но тоже полезно узнать, что существует компания с подобным тебе именем владеющая AS. Краткий обзор в блоге APNIC.
👍3
Продолжение про то как строить сети - ещё несколько вариантов и примеров с конфигурациями. Стоит напомнить, что у Cisco есть варианты проектирования сетей по разным направлениям, у Juniper тоже есть, и Eltex не отстаёт. Даже если нет для вашего любимого вендора, возьмите нелюбимого и переделайте под себя, главное - стройте сети правильно.
👍14
Видно ли в BGP проблемы с обрывами подводных кабелей? Видно. Но масштаб должен быть соответвующий, да и понять в каком месте, скорее не получится, чем получится.
👍4
История которая привела к созданию библиотеки go-tcpinfo. На что только не пойдёшь, чтобы доказать что это не сеть виновата. Забираем на Github.
👍5
Нюансы работы компилятора, стандартных библиотек, ядра ОС, процессора в простом примере реализации функции ожидания, которая не должна беспокоить систему слишком часто. Volatile - рулит. Но самый красивый и даже логичный, последний пример, хотя автор и называет его сложным, симбиоз низкоуровневого и высокоровнего подходов, когда без goto никак.
👍6
Задача: на виртульной машине с Ubuntu 24 изолировать два сетевых интерфейса между собой.

Мы боролись с ассиметрией в виртуальной среде NSX-T, где distributed firewall к ней совсем нетерпим, необходимо было разнести маршруты 0/0 и 10/8 по разным интерфейсам, при это было важно, чтобы они не были в одной таблице маршрутизации.

И когда сетевик слышит, что нужно что-то «изолировать» - он идет натягивать VRF. По официальной документации netplan поддерживает VRF - то, что надо, берем.

Адаптируем под себя:

network:
version: 2
renderer: networkd
ethernets:
eth0: # -> vrf-mgmt
addresses:
- 10.10.8.101/23
routes:
- to: 10.0.0.0/8
via: 10.10.8.1
routing-policy:
- from: 10.10.8.101/23
eth1: # -> main
addresses:
- 10.11.8.3/29
gateway4: 10.11.8.1
vrfs:
vrf-mgmt:
table: 101
interfaces: [eth0]


Интерфейсы разнесены по VRF, всё выглядит корректно:

# ip route
default via 10.11.8.1 dev eth1 proto static
10.11.8.0/29 dev eth1 proto kernel scope link src 10.11.8.3

# ip route show vrf vrf-mgmt
10.0.0.0/8 via 10.10.8.1 dev eth0 proto static
10.10.8.0/23 dev eth0 proto kernel scope link src 10.10.8.101


Проверяем доступ извне до IP-адреса внутри VRF - ping работает! А для сетевика полученный ICMP-ответ - это как документ с печатью, подтверждающий наличие доступа. Проверяем SSH, получаем «connection refused», перезагружаем VM(на всякий), доступа нет, интересно. Отключаем iptables(в любой непонятной ситуации), но и это не помогает. Любые дальнейшие эксперименты показывают, что и другие сервисы, привязанные к IP-адресу eth0 (который внутри VRF) также недоступны 🤷

Я не знал, что все сервисы работают в контексте VRF по умолчанию, т.е. процессы используют таблицу маршрутизации по умолчанию и имеют доступ к прослушиваемым IP-адресам только в этом дефолтном VRF, если не указано иное.

Если для ping внутри VRF мы можем использовать опцию -I, которая указывает src-интерфейс внутри VRF и ping начинает работать, то сервису SSH необходимо явно указать - используй контекст vrf-mgmt! Это будет касаться и других сервисов, которые должны работать с IP-адресами внутри VRF.

Решение для SSH: в systemd для юнита sshd изменить ExecStart с указанием использования VRF. Пока идет отладка изменим сразу /lib/systemd/system/ssh.service. (Напрямую лучше не изменять системные файлы, потому что любое обновление перезатрет изменения, нужно использовать override)


Было
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS

Стало
ExecStart=/bin/ip vrf exec vrf-mgmt /usr/sbin/sshd -D $SSHD_OPTS

Команда ip vrf exec запускает процесс sshd в контексте vrf-mgmt.

После изменения файла службы нужно перезагрузить конфигурацию systemd и службу SSH, чтобы изменения вступили в силу:

systemctl daemon-reload
systemctl restart ssh

Проверяем SSH извне на IP внутри VRF - доступ есть!

Если цель вынести только управление VM в отдельный VRF, то в принципе, на этом можно остановиться. Но в нашем случае были и другие сервисы, которым нужен доступ к VRF.

Идем дальше.

Есть решение, в котором все сервисы будут работать со всеми VRF в системе - L3 Master Device, известный как l3mdev:
Official reference
Enables child sockets to inherit the L3 master device index. Enabling this option allows a “global” listen socket to work across L3 master domains (e.g.,VRFs) with connected sockets derived from the listen socket to be bound to the L3 domain in which the packets originated. Only valid when the kernel was compiled with CONFIG_NET_L3_MASTER_DEV


Проверим наличие модуля CONFIG_NET_L3_MASTER_DEV в конфигурационном файле ядра:

grep CONFIG_NET_L3_MASTER_DEV /boot/config-$(uname -r)

Если видим CONFIG_NET_L3_MASTER_DEV=y, значит модуль встроен в ядро.

Включаем для tcp/udp:

sysctl -w net.ipv4.tcp_l3mdev_accept=1
sysctl -w net.ipv4.udp_l3mdev_accept=1


Проверяем, убеждаемся что все сервисы начинают работать внутри VRF. Успех 😮‍💨

По документации, l3mdev ухудшает производительность на 2-3%. Попробую разобраться как он работает.

#Задача
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
Будни сетевика
Задача: на виртульной машине с Ubuntu 24 изолировать два сетевых интерфейса между собой. Мы боролись с ассиметрией в виртуальной среде NSX-T, где distributed firewall к ней совсем нетерпим, необходимо было разнести маршруты 0/0 и 10/8 по разным интерфейсам…
Стоит напомнить, спасибо за подсказку нашему подписчику, что когда сетевик слышит про сетевую изоляцию он думает про VRF, а когда линуксоид про неё слышит, то он думает про NETNS. Имейте ввиду эту опцию то же, там изоляция поизолированней.
👍11