1) O problema com o usb é que é um protocolo mestre / escravo. PCs são mestres, e você não pode conectar dois mestres diretamente juntos, então um cabo mudo direto não funcionará.
Você pode usar algo como link , mas você pode Bem, apenas use ethernet. Qualquer outra solução de hardware será semelhante:
pc <--usb--> usb slave ic/microcontroller <--common protocol--> usb slave ic/microcontroller <--usb--> pc
2) Para algo como o adaptador de rede usb acima, ele já deve ter um driver de kernel que irá configurar um dispositivo de rede com o qual você pode interagir da mesma maneira que você faz com eth0 ou wlan0, mas pode ter um nome diferente.
Um ic projetado adequadamente (como o do dispositivo mencionado acima) que funciona com o módulo de kernel embutido não se importará se o dispositivo na outra extremidade estiver pronto, será apenas como se o cabo Ethernet estivesse desconectado.
3) O dispositivo deve ser exposto como qualquer outro adaptador de rede, ip addr
ou ifconfig
deve listá-lo uma vez conectado.
4) Você deve esperar um dispositivo de rede como qualquer outro dispositivo, você pode tratá-lo como um cabo ethernet diretamente de um computador para outro.
Você não pode usar um raspberry pi para isso, é um dispositivo host como os PCs.
O Arduino pode funcionar, mas você precisará de dois. O leonardo é melhor é construído em suporte usb assim lhe dará melhor velocidade. Mas o arduino não tem software para suportar redes usb, então você terá que escrever isso sozinho (não é trivial). O mesmo vai ser verdade para muitos microcontroladores. A melhor aposta é encontrar um com suporte de rede escravo, acho que o mbed pode fazer isso, mas você ainda precisará escrever código para unir os dois microcontroladores.
Mas a maneira mais fácil e mais barata é usar duas coisas como link . Em seguida, remova o revestimento, desolda os cabeçalhos e solde um cabo ethernet diretamente nas portas. Mas isso não dará muita vantagem sobre o uso de um cabo ethernet, se algo o tornar uma solução um pouco menos flexível (embora talvez menos volumosa). Você poderia criar sua própria placa com os ICs e conectá-los em um único PCB, mas isso será um pouco mais trabalhoso sem nenhum benefício real.