O cliente obtém o ip da LAN, mas não tem internet

1

Eu me deparei com um problema bastante específico e não tenho conhecimento para resolvê-lo sozinho. Eu configurei um servidor Ubuntu (16.04.2) que funcionará como um roteador. Até agora configurei duas interfaces de rede, WAN e LAN. O DNS funciona também, o cliente obtém o endereço IP local, mas não tem acesso à Internet, talvez devido a regras de firewall configuradas incorretamente. Nota: o encaminhamento de porta também é ativado em.

Ifconfig

enp0s3    Link encap:Ethernet  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:28 errors:0 dropped:0 overruns:0 frame:0
          TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 

enp0s8    Link encap:Ethernet
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2190 errors:0 dropped:0 overruns:0 frame:0
          TX packets:41 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 

Interfaces

#WAN
auto enp0s3
iface enp0s3 inet dhcp

#LAN
auto enp0s8
iface enp0s8 inet static
    address 192.168.0.1
    network 192.168.0.0
    netmask 255.255.255.0
    broadcast 192.168.0.255

Roteamento

Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     0      0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 enp0s8

Iptables -L -v & amp; Iptables -t nat -L -v

Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out    source   destination
    0     0 ACCEPT     all  --  lo     any    anywhere anywhere
    3   704 ACCEPT     all  --  enp0s8 any    anywhere anywhere
   12   997 ACCEPT     all  --  enp0s3 any    anywhere anywhere    ctstate RELATED,ESTABLISHED

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out    source   destination
    0   0   ACCEPT     all  --  enp0s8 enp0s3 anywhere anywhere
    0   0   ACCEPT     all  --  enp0s3 enp0s8 anywhere anywhere     ctstate RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT 12 packets, 904 bytes)
 pkts bytes target     prot opt in     out    source   destination

Chain POSTROUTING (policy ACCEPT 1 packets, 48 bytes)
 pkts bytes target     prot opt in     out    source   destination
    7   520 MASQUERADE  all --  any    enp0s3 anywhere anywhere

rc.local

Eu uso um arquivo rc.local para usar essas linhas após a inicialização.

iptables -P INPUT DROP
iptables -P FORWARD DROP

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i enp0s8 -j ACCEPT

iptables -A INPUT -i enp0s3 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
iptables -A FORWARD -i enp0s3 -o enp0s8 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE

Client ifconfig

enp0s3    flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
          inet 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255
          RX packets 8
          RX errors 0 dropped 0 overruns 0 frame 0
          TX packets 221
          TX errors 0 dropped 0 overrunes 0 carrier 0 collisions 0

Alguém por favor pode me explicar o que estou perdendo? Tinha que digitar tudo de um par de terminais para que os erros pudessem estar lá. Eu continuarei a fazer correções se for necessário.

Obrigado em relação a isso!

    
por Jens Kuipers 13.06.2017 / 00:58

1 resposta

0

Você parece ter vários erros de digitação. Ou, se não forem erros de digitação, eles são erros em sua configuração que explicariam parcialmente porque as coisas não estão funcionando corretamente para você. Para obter ajuda significativa, seria muito melhor se você copiasse e colasse o conteúdo do arquivo ou os resultados do comando, em vez de tentar apenas digitá-lo em sua pergunta.

Acho que seu problema básico é que você não está configurando a máquina corretamente para operar como um roteador. Para funcionar como um "roteador" NIC, o gateway padrão para todo o tráfego em sua LAN precisa ir para o IP da WAN, que parece ser o enp0s3 no seu caso.

Observe também que os endereços IP 10.x.x.x (e 192.168.0.0/16) são, por definição, irrecuperáveis. Eu esperaria que a sub-rede da Internet de um roteador tivesse um endereço IP registrado, a menos que o tráfego esteja em uma sub-rede onde todo o tráfego vai para outro modem ou roteador.

Assumindo que os erros que estou vendo no que você postou são de fato erros de digitação e não erros de configuração, o que você criou parece ser mais um encaminhador de ponte / pacote do que um roteador. A WAN que você configurou se parece mais com outra sub-rede da LAN, então não me surpreendo que o tráfego não esteja chegando à Internet.

Como você não instalou nenhum software de roteador e, como os roteadores normalmente têm pelo menos três interfaces neles (sem incluir a DMZ), você estaria controlando todo o roteamento em sua configuração por meio da tabela de roteamento. Você adicionaria rotas com o comando

route add

Simples o suficiente para usar e se você cometer um erro, você pode remover uma rota com o comando

route del 

A página man deste comando é relativamente autoexplicativa. Sem saber como seu computador está realmente conectado à Internet, não posso fornecer um exemplo de configuração que funcione.

Esta é uma simplificação excessiva, mas basicamente, enp0s3 seria um endereço IP de classe C que é acessível pela Internet. enp0s8 seria uma sub-rede de sua própria invenção (por exemplo, 192.168.0.1/24), em que o endereço IP atribuído a enp0s3 é o gateway padrão.

Sua tabela de roteamento pode ser verificada digitando

route -n
    
por jones0610 13.06.2017 / 01:37