Ситуация совершенно гипотетическая. Допустим, есть два интерфейса eth0 и eth1 с полностью аналогичными сетевыми настройками, т.е. и там и там адрес 192.168.0.1, и там и там подсеть та же, даже мак адрес совпадает.

Во-первых, как это вообще настроить?

Во-вторых, допустим я хочу получать UDP пакет с конкретно eth0 интерфейса, в berkeley sockets я не вижу, как это можно было бы сделать. Функция recvfrom() и sendto() принимает структуру struct sockaddr_in в которой sin_addr указывает ip хоста, а конкретный интерфейс указать нельзя! С этим что-то можно сделать? Или только TCP/IP стек в ядре патчить?








 , , ,






URL записи