Conecte o Linux a duas redes simultaneamente

10

Desejo conectar-me a duas redes simultaneamente usando a Ethernet e o WiFi incorporado ou a duas redes WiFi instalando um adaptador WiFi adicional.

Minha exigência: tenho dois conjuntos de dispositivos (grupo A e grupo B) que precisam se comunicar, mas não diretamente. Não há internet no local. Os dispositivos do grupo A estão conectados ao roteador WiFi A e os dispositivos do grupo B ao roteador WiFi B (é necessário que eles não estejam conectados ao mesmo roteador). Quero que o dispositivo Linux se conecte ao roteador A e ao roteador B e atue como um intermediário entre os dois grupos. O dispositivo Linux deve receber mensagens do Grupo A (através do roteador A), processar as informações e enviar notificação do resultado ao Grupo B (através do roteador B) e vice-versa.

Questões:

  1. Como configuro o Linux para conectar-se a duas redes simultaneamente?
  2. Como identificar de qual rede é uma mensagem e lidar com essa mensagem de acordo?
  3. Como faço para especificar a rede de destino para minha notificação e enviá-la para essa rede?
Sivakumar Natarajan
fonte

Respostas:

1

Certifique-se de que cada rede tenha seu próprio alcance, por exemplo, wlan0é 192.168.0.0/24e wlan1é 192.168.1.0/24. Isso responde às suas perguntas (2) e (3): verifique o endereço de origem da "mensagem" (qual formato é a mensagem? Pacote UDP? Como você está lendo a mensagem?) Para identificar de que rede a mensagem veio e você segmentar uma rede por meio do endereço IP para o qual você está enviando. Este é o roteamento de rede básico ...

Ative o encaminhamento de IP ( echo 1 > /proc/sys/net/ipv4/ip_forward) para permitir que os dispositivos em uma rede se conectem diretamente aos dispositivos na outra rede; configure o sistema Linux como o gateway (padrão) nesses dispositivos.

Sobre como configurar o Linux para conectar-se a duas redes simultaneamente: isso depende da sua distribuição e de quais ferramentas você está usando. Com o Debian sem networkmanagerrodar, você precisa configurar /etc/network/interfacesapropriadamente; com o Red Hat, você precisa configurar os arquivos em /etc/sysconfig/networking/.

EDIT: Desative o servidor DHCP nos roteadores Wi-Fi, atribua à interface da LAN um IP fixo na rede correta, conforme descrito acima (um em 192.168.0.0/24, por exemplo, 192.168.0.2 e em 192.168.1.0/24, por exemplo, 192.168 .1.2). Dê a cada roteador seu próprio ID sem fio (e, é claro, cada um com seu próprio código de acesso).

Forneça as interfaces no endereço correspondente do Linux, mas depois termine em .1. (Como você solicitou um novo sistema para Linux, verifique se ele tem duas interfaces, pode ser necessário solicitar uma placa de interface de rede extra (NIC) para fazer isso.) Conecte o sistema Linux aos roteadores Wi-Fi por meio de uma porta LAN; não use a porta WAN, ou seja, o roteador Wi-Fi é usado apenas como um ponto de acesso, não encaminha nada. Deixamos o roteamento para o Linux. (Não deve ser necessário usar, iptablespois, por padrão, tudo é permitido e não há necessidade de NAT aqui. No entanto, pode ser útil usá iptables-lo posteriormente para limitar o tráfego permitido.)

Instale um servidor DHCP no Linux e configure-o para distribuir endereços nas duas interfaces (há muita documentação sobre como fazer isso). Configure o servidor DHCP para fornecer o IP do sistema Linux como o gateway padrão.

Wurtel
fonte
Obrigado @wurtel. Eu sou novo em redes e tenho um conhecimento prático do Linux. Mas estou disposto a tentar o que for necessário para fazer isso funcionar. Estou nesse projeto há 6 meses e a conexão em rede dos dispositivos, conforme descrito na minha postagem original, é minha próxima etapa (obrigatória). Se você pudesse me dar dicas, eu trabalharei com elas. Eu pedi um PC Linux para trabalhar e ele será entregue até o final do mês. Posso tentar suas sugestões para a etapa 1 depois disso. Em relação a 2 e 3, eu precisaria configurar um servidor? Eu codigo em Python e Java, mas posso aprender qualquer outra coisa, se ele conseguir fazer o trabalho.
Sivakumar Natarajan 15/01
Ainda tenho que descobrir como os dispositivos do grupo A e B se comunicarão com o dispositivo Linux. Os dispositivos do grupo A e B são tablets (iOS e Android). O grupo A são estudantes e o grupo B são funcionários. Os dispositivos se comunicam dentro do grupo, mas fazem interface através do dispositivo Linux para interagir com o outro grupo.
Sivakumar Natarajan 15/01
Se o comentário acima é o comportamento que você deseja, sua melhor aposta seria fazer o dispositivo linux funcionar como uma ponte.
precisa saber é o seguinte
Também requer configuração do iptables
sandyp
Editou minha resposta. A configuração de interfaces de rede vai além do escopo desta pergunta, eu acho (muitas informações podem ser encontradas sobre o assunto), mas você ainda não disse o que Linux está usando. Se você ainda não decidiu, eu recomendo o Debian :-)
wurtel