Настройка Ubuntu 22.04 для статической генерации интерфейсной части IPv6

У меня есть следующий сценарий: используя старый компьютер с маршрутизатором Fritzbox, я хотел настроить несколько небольших сервисов с помощью Docker. Fritzbox требует, чтобы мой компьютер имел статический адрес интерфейса для работы переадресации портов. Но всякий раз, когда я перезагружаю указанный компьютер, часть интерфейса ipv6, кажется, чередуется между двумя отдельными интерфейсами. Один из них — это xxxx:xxxx:f6d1:cbfa (который уже был стандартным интерфейсом внутри fritz-box), а другой — это часть xxxx:xxxx:fe08:f24 (которая, похоже, является своего рода локальным IP-адресом). внутри сети на основе fe80-адресов).
Теперь мой конкретный вопрос: как заставить Ubuntu 22.04 вести себя как хорошая система и всегда использовать xxxx:xxxx:f6d1:cbfa в качестве части IP-интерфейса? Есть ли какой-то файл конфигурации?
Заранее спасибо.

1 ответ

В IPv6 есть несколько вариантов создания стабильных IP-адресов. Определение статического идентификатора интерфейса на хосте. DHCPv6, где сохраняются резервирования. И значение, которое можно вычислить на основе известных значений, например EUI-64, на основе адреса уровня 2. Предполагая, что вам нужны статические идентификаторы хостов.

Токенизированные идентификаторы IPv6 — это предоставляемые пользователем младшие 64 бита, прикрепленные к существующему префиксу /64. Должно упростить изменение префикса. Linux iproute имеет реализацию,man ip token. Но в Linux все слишком сложно, и есть конкурирующие сетевые менеджеры, из которых можно выбирать, чтобы сделать использование этих функций разумным.

В netplan это свойство устройства.ipv6-address-token

        ethernets:
    eth0:
      ipv6-address-token: "::f6d1:cbfa"

systemd-networkd имеет формуToken=static::f6d1:cbfa

NetworkManager будет устанавливатьipv6.tokenк::f6d1:cbfa

И просто так, на Gentoo можно было бы поставитьip token set ::f6d1:cbfa dev eth0в хуке postup().


xxxx:xxxx:fe08:f24 (это похоже на какой-то локальный IP-адрес внутри сети, основанный на адресах fe80).

fe80::/10 — это локальная ссылка. Другими словами, когда старшие цифры — fe8.

Последовательность цифр «fe» может и будет присутствовать в остальной части адреса, но для этого не требуется, чтобы адрес имел какое-либо отношение к локальной ссылке. Например, 2001:db8::fe80:f24 — это глобальная одноадресная рассылка.

Другие вопросы по тегам