Кажется, что когда dhclient работает на eth0, я получаю IPv4-адрес от DHCP-сервера и Scope: Link IPv6-адрес, связанный с eth0:
inet6 addr: fe80::a00:27ff:fed0:4d41/64 Scope:Link
Но я не вижу из dhclient-script, как этот адрес добавляется. На другом интерфейсе со статическим IP-адресом я хотел бы добавить ссылку на локальный IPv6-адрес, и мне было интересно, есть ли общая команда для этого без знания Mac.
Редактировать:
Похоже, ядро назначает локальный адрес ссылки, когда вы делаете «ip link set dev ethX up» или «ifconfig ethX up». Тем не менее, в моем случае я подключил кабель к интерфейсу DHCP и ни один кабель не был подключен к интерфейсу, который я настраивал статически. Не могу проверить до понедельника, но я предполагаю, что ядро не назначает локальные адреса ссылки интерфейсу, если ссылки нет.
источник
Ответы:
Локальные адреса связи выводятся из MAC-адреса устройства. Они генерируются автоматически как часть создания интерфейса. Автоконфигурация включает процесс обнаружения, чтобы гарантировать, что адрес уникален в сети.
Аналогичный процесс используется для автоматической настройки маршрутизируемых адресов, когда доступно объявление маршрутизатора. Эти адреса могут периодически обновляться для обеспечения конфиденциальности.
RFC 4862 определяет процессы, которым необходимо следовать.
источник
Нашел это! Этой команды недостаточно:
Вместо этого я должен сделать:
Только последний восстанавливает локальный адрес канала IPv6 на eth0.
Другими словами, в моем дистрибутиве где-то скрыт какой-то код, который динамически меняется
net.ipv6.conf.eth0.disable_ipv6
каждый раз, когда его просят включить или отключить сеть. Ваш пробег может варьироваться.Я докопался до этого благодаря простому:
источник