usando ethernet ipv4 como barramento interno enquanto permite a faixa completa de endereços ipv4 para a interface externa

1

Projetamos um dispositivo para ser usado como um dispositivo, mas usando o ethernet ipv4 para nos comunicarmos com periféricos internos que não falam Linux e baseados em linux, como o que poderíamos fazer usando pci ou usb, por exemplo. Agora vem o problema que a interface de rede externa deve ser capaz de aceitar qualquer endereço ipv4. Como devemos atribuir endereços IP à interface interna e periféricos? Há um processo que deve ser capaz de se comunicar tanto com os periféricos internos quanto com o mundo externo, falando assim para ambas as redes.

Já tentamos vincular o soquete a nossos periféricos a uma interface específica usando SO_BINDTODEVICE, enquanto usamos a faixa 169.254.0.0 para os periféricos internos, mas assim que nossa interface externa também tem um endereço nesse intervalo (com o zeroconf protocolo), não recebemos mais os pacotes de nossos periféricos.

Já pensei em métodos alternativos, usando namespaces de rede linux ou restringindo o intervalo de endereços da interface de loopback para poder usar uma parte da rede 127.0.0.0 para nossos periféricos internos, mas estou confuso. Há alguma armadilha com esses métodos, que ainda não tentamos?

    
por Philippe De Muyter 21.08.2016 / 23:14

2 respostas

3

Você pode considerar o uso do IPv6. O IPv6 tem endereços locais de ligação que são perfeitos para o seu caso de uso. Eles têm escopo para um determinado link, portanto, não há problema se dois hosts em links diferentes usarem o mesmo endereço local de link IPv6.

    
por 22.10.2016 / 22:22
-1

Parece que o intervalo de endereços 100.64.0.0/10 está reservado para o uso de que preciso (desde que meu produto não seja usado em cenários NAT de classe de operadora). De wikipedia : "Este bloco de endereços [100.64.0.0/10] não deve ser usado em redes privadas ou na Internet pública: destina-se apenas ao uso dentro das operações internas das redes de operadoras. "

    
por 24.08.2016 / 18:13