Мне нужно подобрать две PPP-сессии на одном интерфейсе с разными MAC-адресами (на каком-то устройстве с openWrt).
Решил проверить маквланы. Я создал интерфейс с другим MAC-адресом.
ip link add link eth0 address 00:cc:cc:cc:11:33 eth0mac2 type macvlan
ip link set eth0mac2 up
Интерфейс работает, и у меня есть связь с другими машинами (если я назначу какой-то ip-адрес). MAC-адрес в пакетах - от этого псевдоинтерфейса.
PPP-сессия тоже настраивается правильно (не две сессии, только одна; это просто тест), и я могу отправлять некоторые пакеты (например, ICMP-запрос), но я не могу принимать входящие пакеты.
Я вижу входящие пакеты на eth0mac2 по tcpdump:
00:07:12.168929 00:18:f3:0a:d1:4c > 00:cc:cc:cc:11:33, ethertype PPPoE S (0x8864), length 15: truncated-pppoe 1
00:07:13.176963 00:18:f3:0a:d1:4c > 00:cc:cc:cc:11:33, ethertype PPPoE S (0x8864), length 15: truncated-pppoe 1
Но я не вижу пакетов на ppp0 (хотя пакеты должны быть).
На eth0 все нормально работает.
У кого-нибудь есть идеи?
Конкретный драйвер для аппаратного NAT создал эту проблему.
Получил новую версию этого драйвера, и проблема исчезла