Atribuindo intervalos IP exclusivos para vários dispositivos Ethernet USB em um único host

0

Atualmente, estou desenvolvendo um dispositivo embarcado com Linux, que permite estar conectado a um host do Windows usando USB. Para conseguir isso, estou usando com sucesso o driver de dispositivo Ethernet USB neste dispositivo, e meu host do Windows 7 o reconhece como um adaptador Ethernet USB, envia uma solicitação DHCP, que é respondida pelo udhcpd no dispositivo e conexões IP podem ser estabelecidas .

Isso funciona bem quando apenas um único dispositivo incorporado está conectado ao host do Windows. Ao conectar vários dispositivos, cada udhcpd em cada dispositivo fornecerá o mesmo intervalo de IP e endereço para o host do Windows, o que impossibilitará o roteamento para esses diferentes dispositivos.

Existe uma maneira de ter diferentes udhcpds em diferentes dispositivos incorporados distribuindo diferentes intervalos sem aplicar o udhcpd.conf com algum tempo de execução aleatório?

    
por Robert 23.09.2015 / 16:50

1 resposta

0

Você realmente tentou isso? Deve funcionar. Não há necessidade de usar o udhcpd.conf especial. RFC2131 endereço desde o início a situação de vários servidores DHCP para evitar esse tipo de conflito. Isso é responsabilidade do servidor e do cliente.

3.1 Client-server interaction - allocating a network address

...

  1. Each server may respond with a DHCPOFFER [...] When allocating a new address, servers SHOULD check that the offered network address is not already in use; e.g., the server may probe the offered address with an ICMP Echo Request.

...

  1. The client receives the DHCPACK message with configuration parameters. The client SHOULD perform a final check on the parameters (e.g., ARP for allocated network address), and notes the duration of the lease specified in the DHCPACK message. At this point, the client is configured. If the client detects that the address is already in use (e.g., through the use of ARP), the client MUST send a DHCPDECLINE message to the server and restarts the configuration process.

link

E, de fato, é isso que o udhcpd faz, usando ARP (e uma nota "TODO" que deve usar o ICMP):

link

link

... no lado do cliente, o udhcpc também pode fazer essa verificação:

link

Eu não sei se é o caso do cliente DHCP do Windows, mas como o RFC especifica, DEVE.

    
por 26.09.2015 / 17:05