Sinal Wi-Fi "Pipe" através do cabo Ethernet

8

Atualmente, as portas Ethernet no prédio em que estou trabalhando estão inativas, mas o Wi-Fi funciona. Eu tenho um laptop habilitado para Wi-Fi ( Ubuntu 14.04 LTS (Trusty Tahr)) e um workstaion não habilitado para Wi-Fi ( Debian 8 (Jessie)) com apenas um plugue Ethernet.

É possível conectar os dois através de um cabo Ethernet e conseguir conectividade de rede na estação de trabalho?

    
por mbiokyle 12.02.2016 / 19:42

3 respostas

9

Sim, você pode fazer isso e nem é tão difícil. Eu tenho um laptop com uma placa sem fio e uma porta ethernet. Eu pluguei um RapberryPi rodando o Arch Linux nele, através de um cabo ethernet "crossover". Essa é uma coisa especial que você pode precisar - nem todas as placas ethernet podem fazer uma conexão direta de máquina para máquina.

A outra parte complicada é o endereçamento IP. É melhor ilustrar isso. Aqui está o meu pequeno script de configuração. Novamente, enp9s0 é a porta ethernet do laptop, e wlp12s0 é o dispositivo sem fio do laptop.

#!/bin/bash
/usr/bin/ip link set dev enp9s0 up
/usr/bin/ip addr add 172.16.1.1/24 dev enp9s0
sleep 10

modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j MASQUERADE
iptables -A FORWARD -o enp9s0 -i wlp12s0 -s 172.16.1.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

dhcpd -cf /etc/dhcpd.enp9s0.conf enp9s0

O script define um endereço IP estático para a placa ethernet, 172.16.1.1, e depois configura o NAT carregando um módulo do kernel. Ele ativa o roteamento IP (no laptop) e, em seguida, faz alguns iptables semi-magic para obter pacotes roteados da placa wireless para fora da ethernet e vice-versa.

Eu tenho dhcpd em execução na porta ethernet para fornecer endereços IP porque é isso que o Raspberry Pi quer, mas você poderia fazer um endereço estático em sua estação de trabalho, juntamente com roteamento estático, servidor DNS e servidor NTP. / p>

O arquivo /etc/dhcpd.enp9s0.conf se parece com isso, caso você vá por esse caminho:

option domain-name "subnet";
option domain-name-servers 10.0.0.3;
option routers 172.16.1.1;
option ntp-servers 10.0.0.3;
default-lease-time 14440;
ddns-update-style none;
deny bootp;
shared-network intranet {
        subnet 172.16.1.0 netmask 255.255.255.0 {
                option subnet-mask 255.255.255.0;
                pool { range 172.16.1.50 172.16.1.200; }
        }
}

A escolha do endereço IP é bastante crítica. Eu usei 172.16.1.0/24 para o cabo ethernet que sai do laptop. A placa sem fio no laptop acaba com um 192.161.1.0/24. Você precisa verificar o endereço IP que o laptop tem e escolher outra sub-rede para a placa ethernet. Além disso, você precisa escolher uma das redes "bogon" ou "non-routable". No meu exemplo, 172.16.1.0/24 é dos intervalos oficiais não-roteáveis de endereços IP, como é 192.168.1.0/24, e assim é o endereço 10.0.0.3 dhcpd.enp9s0.conf dá para um servidor DNS e servidor NTP. Você terá que usar sua cabeça para descobrir o que é apropriado para sua configuração.

    
por 12.02.2016 / 21:15
0

É possível? Absolutamente. Tudo o que você precisa fazer é configurar o encaminhamento de IP, o roteamento ou alguma outra maneira (simples) de mover pacotes da porta Ethernet do laptop para o WiFi no laptop e vice-versa. É uma boa ideia? Provavelmente não - seus administradores de rede podem ficar um pouco chateados com você.

    
por 12.02.2016 / 19:58
0

Por wikipedia, se uma das portas ethernet for gigabit, o cabo comum funcionará, não há necessidade de cross, tenho gigabits em ambos os lados e trabalhos comuns em cabos.

A pergunta é feita em 2016, então eu suponho que o gerenciador de rede esteja rodando em ambas as máquinas Linux, você pode usar sua GUI para configurar ip-s, se não você provavelmente configurou e sabe como configurar o ip a partir do comando prompt, então omito esses detalhes.

Após conectar-se ao cabo, você obterá nomes de interfaces de rede na GUI relacionados à Ethernet no laptop e na estação de trabalho.

Supondo que você não se preocupa em conectar a estação de trabalho (e / ou laptop por ethernet) periodicamente a outro equipamento de rede, você pode configurar o IP estático em ambas as interfaces ethernet.

Defina a mesma sub-rede do seu IP estático que o wi-fi, por ex. se o wi-fi for 192.168.1.0/16, definido para 192.168.2.1 e 192.168.2.2, a máscara de sub-rede será 255.255.255.0, pois apenas o último 'número' de IP é diferente, o DNS na estação de trabalho deve ser definido para o mesmo DNS IP que para wi -fi no laptop para poder usar DNS (sites abertos por nome, não apenas IP) na estação de trabalho.

Você precisa ativar o encaminhamento de IP no laptop:

sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

Como muito provavelmente o seu gerenciador de rede no laptop considera a Ethernet de melhor qualidade que o wi-fi, ele tentará enviar tudo para ele por padrão e você perderá a internet depois de configurar a Ethernet. Para voltar a usar o wi-fi, no laptop você precisa na seção [ipv4] do arquivo relacionado à conexão ethernet (nome que você vê na GUI do gerenciador de rede para ethernet) no local /etc/NetworkManager/ add line

never-default=true

(se a sua GUI tem algo como "Use apenas para recursos nesta conexão" checkbox para ethernet - no meu é na seção ip4 das propriedades da conexão, você pode usar isso em seu lugar).

E finalmente, presumindo que as regras de tabelas IP permaneçam por padrão ACCEPT, seus pacotes da estação de trabalho irão para a internet, mas não encontrarão o caminho de volta apenas para laptop até que você configure a regra NAT no laptop por um comando (onde eth0 deve ser o nome da sua conexão wi-fi, você pode descobrir o nome por sudo ifconfig ):

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Se não funcionar depois disso, tente reiniciar o gerenciador de rede:

sudo service network-manager restart

Você deve estar pronto.

    
por 22.03.2018 / 19:50