У меня есть три устройства, каждый - ведущее устройство, которое будет говорить с ведомым устройством и Device3, но это только физически подключено к Device3. Ведомое устройство будет говорить только с ведущим устройством (также через Device3). Третье устройство предназначено, чтобы быть шлюзом между ведущим устройством и ведомым устройством, но также и получить команды от ведущего устройства.
Они - все в той же сети. Позволяет предположите:
Ведущее устройство - 192.168.0.1 (eth0)
Ведомое устройство - 192.168.0.2 (eth0)
Device3 - 192.168.0.3 (eth0) и 192.168.0.4 (eth1)
Как я могу сделать эту работу? ОС Device3 является Linux. Я предполагаю, что должен буду установить фильтр ARP и маршруты и к eth0 и к eth1, правильно?
Как правило, сети на основе TCP / IP предполагают, что все машины в одной подсети будут доступны напрямую. Вы нарушаете это правило в своей настройке.
Настройте две подсети, 192.168.0.x для ведущего устройства и 192.168.1.x для ведомого устройства, настройте device3 для пересылки пакетов (функция маршрутизатора) и сообщите об этом мастеру, чтобы достигните 192.168.1.x, используйте device3 в качестве шлюза и сообщите ведомому устройству, что для достижения 192.168.0.x используйте device3 в качестве шлюза.