como posso criar conexões entre três máquinas baseadas em linux?

0

No que diz respeito à configuração de hardware, existe uma conexão baseada em ethernet entre meu desktop linux (Ubuntu 14.04) e o jetson tx1 (Ubuntu 16.04). O raspberry pi 3 é conectado à placa jetson através do adaptador USB-3.0 para Ethernet (AX11789).

Após a configuração do hardware, a configuração do software é concluída. No início, o arquivo /etc/network/interface na minha área de trabalho é editado da seguinte forma:

auto eth0
iface eth0 iface static
address 192.168.1.42
netmask 255.255.255.0
gateway 192.168.1.26

Então no meu jetson,

auto eth0
iface eth0 inet static
address 192.168.1.26
netmask 255.255.255.0

Como parece correto que o jetson esteja configurado como um gateway (roteador), o endereço IP do jetson deve ser usado como um endereço de gateway na área de trabalho e no pi board. Então no pi board,

auto eth0
iface eth0 inet static
address 192.168.1.102
netmask 255.255.255.0
gateway 192.168.1.26

Depois disso, as solicitações ping entre a área de trabalho e o jetson, bem como entre o jetson e o pi, funcionam perfeitamente, mas a solicitação de ping entre a área de trabalho e o pi board não funciona, informando Ping from 192.168.1.102: Destination host unreachable . / p>

Existe alguma informação crítica ou etapa que estou faltando neste caso? Provavelmente, isso se deve à configuração com o adaptador Ethernet-para-USB, mas não tenho 100% de certeza sobre isso.

    
por user2585578 23.10.2017 / 19:33

1 resposta

1

É importante entender o que significa a configuração "máscara de sub-rede": ela define quais endereços estão no mesmo segmento de Ethernet e, portanto, alcançáveis sem um gateway.

Por exemplo, se o endereço da sua área de trabalho for 192.168.1.42/255.255.255.0 e você solicitar que ele atinja o Rpi em 192.168.1.102 , ele verá que os dois endereços estão na mesma sub-rede e por definição não usará o gateway para alcançá-lo. (Em vez disso, ele tentará enviar imediatamente consultas ARP para esse endereço.)

Um roteador / gateway geralmente não funciona dessa maneira. (Um roteador fica entre sub-redes, e a suposição é que todas as portas do roteador pertencem a uma sub-rede diferente.) Portanto, se você quiser que duas portas Ethernet pertençam à mesma sub-rede, é o oposto do que você precisa.

Para conseguir um link como o descrito, você precisa configurar o Jetson como uma ponte . (Uma ponte só encaminha com base no endereço MAC de destino. Os switches Ethernet são apenas pontes aceleradas por hardware.)

A configuração para isso é diferente: você precisa adicionar uma interface "bridge" virtual br0 e, em seguida, configurar ambas as portas Ethernet como seus membros:

iface br0 inet static
    address 192.168.1.26/24
    bridge_ports eth0 usb0

(As interfaces "porta" individuais permanecem sem endereço.)

Alternativamente, se você quiser que o Jetson atue como um roteador, ambas as interfaces precisarão pertencer a sub-redes diferentes (como G-Man, como descrito em um comentário). Por exemplo:

iface eth0 inet static
    address 192.168.1.26/24

iface usb0 inet static
    address 192.168.2.26/24

Como o Raspberry Pi está conectado ao usb0 do roteador, ele pertence à rede 192.168.2.* e usa o endereço do gateway correspondente.

    
por 23.10.2017 / 20:28