Вопрос или проблема
У меня есть несколько локальных компьютеров в простой домашней сети, все интерфейсы настроены с помощью systemd-networkd (версия системы systemd 252), все работают на Debian Bookworm (12.7).
Каждый компьютер имеет wifi-данный адаптер для подключения к локальной сети и либо встроенный wifi, либо ethernet для подключения к DSL-роутеру (который является точкой доступа для не локальной wifi-сети).
Я хочу, чтобы локальная сеть использовала исключительно адресацию ipv6 link-local и не проходила через DSL-роутер.
Настроить не локальную сеть легко, используется служба dhcp systemd и wpa-supplicant-nl80211@интерфейс.service.
Может кто-нибудь подсказать, как написать файл local.network? Так, чтобы один локальный компьютер, общаясь с другим, был простым соединением точка-точка через сеть ibss.
Ответ или решение
Как настроить локальный трафик через сеть IBSS (Ad-Hoc) и обеспечить доступ к интернету через управляемую сеть
Введение
В данной статье мы рассмотрим, как настроить локальный трафик через беспроводную сеть IBSS, а также обеспечить доступ к интернету через управляемую сеть, используя конфигурацию на базе systemd-networkd
в ОС Debian Bookworm. Цель состоит в том, чтобы ваши локальные компьютеры могли взаимодействовать друг с другом, используя исключительно IPv6-адресацию, без маршрутизации через DSL маршрутизатор.
Шаги по настройке сети
1. Настройка сети IBSS
Для начала, создадим конфигурационный файл сети, который будет управлять вашим локальным IBSS-соединением. В systemd-networkd
для каждой сети создаются отдельные файлы в директории /etc/systemd/network/
.
-
Создайте файл конфигурации для IBSS:
Создайте файл, например
local.network
, с помощью вашего любимого текстового редактора:sudo nano /etc/systemd/network/local.network
-
Заполните файл следующими строками:
[Match] Name=wlan0 # Замените на имя вашего интерфейса Wi-Fi [Network] DHCP=no IPv6AcceptRA=true LinkLocalAddressing=yes [Address] Address=fe80::1/64 # Пример IPv6 link-local адреса для первой машины [Route] Destination=fe80::/64
Примечания:
- Убедитесь, что вы используете правильное имя интерфейса Wi-Fi. Для просмотра доступных интерфейсов используйте команду
ip link
. - Указанный IPv6 адрес будет иметь значение только на одной из машин; другие машины должны иметь свои уникальные link-local адреса.
- Убедитесь, что вы используете правильное имя интерфейса Wi-Fi. Для просмотра доступных интерфейсов используйте команду
2. Настройка маршрутизации и локального трафика
После определения конфигурации сети IBSS, необходимо убедиться, что трафик между локальными компьютерами не идет через маршрутизатор. Используйте команды для настройки маршрутизации.
-
Отключите маршрутизацию через DSL-маршрутизатор:
Убедитесь, что возвратные пути не маршрутизируются через интернет-канал.
sudo ip route add fe80::/64 dev wlan0
Это гарантирует, что пакеты, предназначенные для локального адресации, будут направляться напрямую к другому компьютеру в локальной сети.
3. Проверка связи
После настройки всех машин перезагрузите systemd-networkd
, чтобы применить новые конфигурации:
sudo systemctl restart systemd-networkd
Проверьте статус службы:
sudo systemctl status systemd-networkd
Для проверки связи между локальными компьютерами используйте команду ping
для IPv6:
ping6 fe80::2%wlan0 # Замените на адрес другого компьютера в локальной сети
Заключение
В результате данных шагов вы сможете настроить локальный обмен данными между компьютерами через сеть IBSS с использованием IPv6 link-local адресации. Вы полностью исключите возможность маршрутизации через DSL маршрутизатор.
Такая конфигурация обеспечит удобное и быстрое взаимодействие между устройствами в вашей локальной сети. Настроив DHCP для интернет-трафика через другую сеть (систему управления), вы гарантируете стабильный доступ к интернету без беспокойства о локальных соединениях.