Я пытаюсь создать сокет BSD для прослушивания сообщений с определенного адреса многоадресной рассылки IPv6. В настоящее время у меня нет проблем с созданием сокета, прослушивающего правильный адрес 0 :: 0.
Проблема в том, что я работаю на небольшом встроенном сервере Linux с несколькими сетевыми картами; здесь важно поле ipv6mr_interface в ipv6_mreq. Методом проб и ошибок я определил, что 0, 1 и 3 не работают, но 2 работает (это дает мне все многоадресные сообщения IPv6 на мой адрес ff05 :: 3, поступающие на правильный интерфейс).
Мой вопрос: как соотнести в linux мой интерфейс, чей адрес я знаю, с правильным номером интерфейса?