У меня интересная проблема. Наш интернет-провайдер начал предоставлять собственный IPv6 в своей сети. Они предоставили нам префикс / 56 и связывающий сегмент / 126 (:: 1 - их конечная точка, а :: 2 - наша). Однако DSLAM провайдера не поддерживает обнаружение соседей, поэтому они попросили нас предоставить MAC-адрес нашего маршрутизатора, чтобы вручную ввести в их таблицу соседей, и предоставили нам свой.
Мы используем RouterOS 5.2 от Mikrotik на нашем маршрутизаторе, и мы не смогли понять, как это можно сделать. Для IPv4 это просто, мы можем создать сопоставление под /ip arp
, но для IPv6 список соседей (/ip neighbor
) похоже только для чтения.
Мы попытались обойти это, установив адрес fe80 :: link-local с MAC-адресом маршрутизатора интернет-провайдера, закодированным в EUI-64, но когда мы отправляли пакеты в это место назначения, RouterOS, тем не менее, пыталась разрешить адрес с помощью ND.
Я спрашиваю, есть ли способ создать статический сопоставленный IPv6-адрес -> MAC-адрес или создать маршрут непосредственно к MAC-адресу и интерфейсу, чтобы мы могли прекратить использование туннелей для наших нужд IPv6.
Служба поддержки Mikrotik подтвердила, что это невозможно сделать с версии 5.18. На самом деле нет никаких обходных путей, поэтому нам придется подождать, пока Mikrotik реализует это.
Правильный способ сделать это в Linux - использовать указанную вами команду "ip neigh ...". Вполне возможно, что в подсистеме ipv6 были лишены некоторые функциональные возможности, чтобы сделать ОС более компактной, хотя я не могу комментировать, поскольку я специально не запускал RouterOS.
Так же, как проверка работоспособности, пользователь, который вошел в систему, имеет возможность выполнять другие команды, для которых потребуется root-доступ, верно?