Сервер
В предыдущей статье мы написали программу, которая возвращает ICMP Echo Reply с помощью XDP.
Мы реализовали программу, возвращающую ICMP Echo Reply, но оказалось, что контрольная сумма ICMP не была правильно рассчитана.
Быстрый способ изучения: Введение в XDP, Часть 3 (ICMP Echo Reply, часть 1) На этот раз я хотел бы описать, как правильно рассчитать контрольную сумму ICMP и вернуть её.
Пожалуйста, похвалите меня, потому что я смог написать статьи два дня подряд без лени.
…
В предыдущей статье мы использовали eBPF Map в XDP для обмена данными с пользовательским пространством.
Быстрый старт: Введение в XDP Часть 2 (eBPF Map) В статье перед предыдущей мы написали программу, которая блокирует все пакеты с помощью программы XDP.
Быстрый старт: Введение в XDP На этот раз мы напишем программу, которая будет отвечать на ICMP Echo Request с помощью ICMP Echo Reply.
Как ответить на ICMP Echo Reply Чтобы ответить на ICMP Echo Request, необходимо выполнить следующие шаги:
…
Периодически использую, но иногда забываю команды, хочу записать их.
Связанные с системой Обновление Ubuntu # apt update # apt upgrade # apt dist-upgrade # do-release-upgrade Установка do-release-upgrade # apt install update-manager-core update-alternatives Установка пути по умолчанию для Python # update-alternatives --install /usr/bin/python python /usr/bin/python3 1 Установка редактора по умолчанию # update-alternatives --config editor Настройка часового пояса Если используется systemd # timedatectl set-timezone Asia/Tokyo Если нужно настроить вручную # ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime Связанные с файловой системой Монтирование образа SD-карты или HDD Назначение устройства на loop # losetup -f --show -P sdcard.
…
Эта статья является 22-й статьей в Advent Calendar 2024 от Sakura Internet.
Введение Иногда возникает необходимость использовать FreeBSD с GitHub Actions.
На самом деле, поскольку я использую FreeBSD на Sakura Internet, мне это действительно необходимо.
В настоящее время я использую Jenkins и выполняю сборки по SSH в среде FreeBSD, что является довольно сложной задачей.
Если есть возможность делать это с помощью GitHub Actions, то я определенно хочу использовать именно его.
…
Введение Заметки о переходе с Ubuntu 22.04 на 24.04 и о переходе с LXD на Incus.
Обновление с Ubuntu 22.04 на 24.04 Сначала выполните обновление
# sudo apt update && sudo apt upgrade -y Обновление на 24.04
# sudo do-release-upgrade Если do-release-upgrade не найден, установите его с помощью следующей команды # sudo apt install ubuntu-release-upgrader-core Переход на Incus Установка Incus
# sudo apt install incus incus-tools Проверьте, работает ли incus и lxd
…
Введение В нашем доме не установлен сервер с BMC или IPMI, как у большинства обычных пользователей.
Тем не менее, иногда возникает необходимость удаленно управлять питанием или настраивать BIOS/UEFI.
(Когда-то давно я использовал ATEN CN6000, но он был очень дорогим)
Я знал о PiKVM на базе Raspberry Pi, но так как его использование подразумевало дополнительные затраты на оборудование, я отклонил эту идею.
Познакомьтесь с NanoKVM В этом контексте я наткнулся на продукт под названием NanoKVM на AliExpress.
…
Обзор В предыдущей статье мы написали программу, использующую программу XDP для DROPPING всех пакетов.
Легкое руководство по XDP Теперь давайте напишем программу, использующую eBPF Map, чтобы подсчитать количество DROPPED пакетов.
На этот раз мы также поговорим о том, как быстро ознакомиться с XDP и eBPF Map.
Поэтому я опущу подробные объяснения по eBPF и описания видов Map, которые не используются.
Настройка окружения Предполагается использование Ubuntu 22.04.
Рекомендуется попробовать реализовать это в виртуальной машине для управления сетевым интерфейсом с помощью XDP.
…
Что я сделал? Я внедрил OpenDKIM в заметках по добавлению OpenDKIM к Postfix + DMARC, но захотел добавить поддержку ARC подписей и переключился на arcmilter.
arcmilter — это milter для выполнения ARC подписей, но он также может выполнять DKIM подписания.
arcmilter написан на языке Go.
Он написан, или точнее, я его написал…?
arcmilter доступен в следующем репозитории.
github.com/masa23/arcmilter
rpm и deb пакеты находятся в разделе Release, так что вы можете использовать их или собрать из исходников.
…
Обзор Это статья о быстром знакомстве с XDP.
Поэтому я опущу подробные объяснения, такие как eBPF.
XDP — это фреймворк для обработки пакетов на самом раннем этапе сетевого стека ядра Linux, который позволяет непосредственно вставлять программы в NIC (сетевую карту) с помощью eBPF.
XDP позволяет обрабатывать пакеты быстрее, чем фильтры, такие как iptables, поскольку позволяет манипулировать пакетами на самом раннем этапе сетевого стека ядра Linux.
В целом, можно считать, что программу XDP можно прикрепить к интерфейсу NIC, используя eBPF.
…
В связи с определенными обстоятельствами мне было нужно воспроизвести ситуацию остановки I/O, поэтому я записал свои заметки о том, как использовать dmsetup для этой цели.
Воспроизведение остановки I/O с помощью dmsetup Проверка состояния dmsetup info Остановка I/O dmsetup suspend /dev/vol01/test Восстановление I/O dmsetup resume /dev/vol01/test Ссылки Команда dmsetup Red Hat Enterprise Linux 7 | Портал клиентов Red Hat
…