Como eu colocaria esse roteamento para funcionar entre as duas sub-redes? Não tenho certeza se estou complicando demais a minha rede

1

Estou tentando operar duas sub-redes, a primeira sub-rede no intervalo 192.168.0.0/24 está livre para acessar o que quiser, incluindo máquinas na segunda sub-rede. a segunda sub-rede no intervalo 10.0.0.0/24 é restrita a somente poder acessar o mundo externo. Eu não quero que máquinas com uma fonte dentro de 10.0.0.0/24 consigam acessar máquinas no intervalo 192.168.0.0/24 , mas eu quero que ele seja capaz de ir para fora.

Além disso, no intervalo 192.168.0.0/24 eu também quero 2 gateways, sendo o primeiro o gateway padrão (atualmente na forma de uma VM Ubuntu) que roteia o tráfego via vpn, seu endereço é 192.168.0.250 e o segundo gateway (que é o roteador sem fio TP-Link voltado para a Internet) em 192.168.0.1 (também o servidor DHCP e DNS para o intervalo 192.168.0.0/24 )

Eu também tenho um terceiro gateway para fazer a ponte entre as duas sub-redes, outra VM do Ubuntu com 2 NICS, sendo a primeira 192.168.0.251 e a segunda 10.0.0.1

Agora que expliquei a rede que quero, aqui está minha configuração e o que estou experimentando:

Ubuntu VM em 192.168.0.250

a tabela de rotas em 192.168.0.250 tem esta aparência:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.8.0.1        128.0.0.0       UG    0      0        0 tun0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
10.0.0.0        192.168.0.251   255.255.255.0   UG    0      0        0 eth0
10.8.0.0        *               255.255.0.0     U     0      0        0 tun0
128.0.0.0       10.8.0.1        128.0.0.0       UG    0      0        0 tun0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
.               192.168.0.1     255.255.255.255 UGH   0      0        0 eth0

Eu adiciono as rotas via

 ip rule add from 192.168.0.0/24 table default
 ip route add 10.0.0.0/24 via 192.168.0.251
 ip rule add from 10.0.0.0/24 table sandboxgateway
 ip route add default via 192.168.0.1 dev eth0 table sandboxgateway

Se eu remover as duas linhas sandboxgateway , posso acessar 10.0.0.1 , mas qualquer coisa na faixa 10.0.0.X está acessando a internet através da VPN, que não é o que eu quero. e seu iptable se parece com isso:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Ubuntu VM em 192.168.0.251/10.0.0.1

a tabela de rotas em 192.168.0.251(eth0)/10.0.0.1(eth1) tem esta aparência:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.0.1     255.255.255.255 UGH   0      0        0 eth0
default         192.168.0.250   0.0.0.0         UG    0      0        0 eth0
10.0.0.0        *               255.255.255.0   U     0      0        0 eth1
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0

e o seu iptable é assim:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
DROP       all  --  10.0.0.0/24          192.168.0.0/24

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

O problema

O problema que estou tendo é que enquanto minha máquina em 192.168.0.2 pode acessar o mundo externo por meio de 192.168.0.1 ou 192.168.0.250 como seu gateway, assim como minha máquina em 10.0.0.10 acessa o mundo externo sem acessar nada em 192.168.0.X , minha máquina em 192.168.0.2 não pode acessar 10.0.0.1 ou 10.0.0.10 , e tracert do prompt de comando do windows resulta em

Rastrear rota para 10.0.0.1 em um máximo de 30 saltos

  1    <1 ms    <1 ms    <1 ms  192.168.0.250
  2     *        *        *     Request timed out.
  3     *        *        *     Request timed out.

Por que 192.168.0.250 não está roteando para 192.168.0.251 ??

Desculpas se incluímos demasiada ou pouca informação, por favor pergunte se é necessário algum detalhe adicional para responder a esta pergunta.

    
por James Trotter 12.04.2016 / 14:54

1 resposta

0

O pacote de pacotes iptables descarta as respostas dos 10.0.0.0/8 ips para os 192.168.0.0/8 IPs. Adicione uma regra para permitir pacotes de 10.0 a 192.168 que já estão estabelecidos, antes da regra DROP:

-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Isso deve fazer o truque. Caso contrário, remova a regra DROP para verificar se essa é realmente a origem do problema. Nesse caso, talvez você precise criar um conjunto de regras mais sofisticado.

    
por 12.04.2016 / 15:35