configuração complexa de roteamento dd-wrt - é possível?

3

Eu tenho acesso à VPN da minha universidade através do OpenVPN e gostaria de estendê-la a todos os dispositivos em casa. Eu tenho internet a cabo, um roteador DD-WRT, um monte de clientes (principalmente Windows) e um RHEL-derivative, dois-NIC, sempre no PC. Neste momento, o roteador Linux é intermediário no tráfego, com uma configuração é o modem < - > Roteador semelhante ao RHEL < - > Dispositivo DD-WRT < - > clientes. Geralmente, o tráfego é mascarado diretamente, mas o roteador Linux conecta-se automaticamente à VPN da uni e, para vários jornais, um script configura tráfego intermediado por VPN: ip route add table main 123.45.67.89 dev tun0 .

Gostaria de substituir o computador do RHEL por um único computador NIC. A configuração que estou pensando é modem < - > Dispositivo DD-WRT < - > {clientes, novo roteador RHEL}. O roteador RHEL se conectará à internet através do dispositivo DD-WRT. Ele também irá se conectar à VPN. Quando os outros clientes desejarem acessar a Internet, o DD-WRT deverá rotea-los através do RHEL, que por sua vez decidirá rotear diretamente ou, se uma conexão para 123.45.67.89 for desejada, através de tun0.

Isso é possível? Como você faria isso?

    
por Nick Alexander 23.11.2013 / 20:11

1 resposta

0

Você precisa colocar seu roteador DD-WRT e todos os seus computadores cliente em sub-redes diferentes para que eles não falem diretamente, mas somente através do roteador RHEL. Para isso, você deve atribuir 2 endereços IP de diferentes sub-redes à mesma NIC do roteador RHEL.

Eu construí meu laboratório para testar a configuração nas máquinas do CentOS 7. Eu também mantive o NetworkManager distante ( NM_CONTROLLED=no em todos os arquivos ifcfg).

  1. No roteador RHEL, adicione outro endereço à mesma NIC copiando a configuração atual da NIC e alterando as diretivas DEVICE e IP:

    cd /etc/sysconfig/network-scripts/
    cp ifcfg-eth0 ifcfg-eth0:1
    vim ifcfg-eth0:1
    
    ##### After editing mine ifcfg-eth0:1 looks like this:
    DEVICE=eth0:1
    ONBOOT=yes
    NM_CONTROLLED=no
    BOOTPROTO=static
    IPADDR=10.0.0.10
    PREFIX=24
    
  2. Configure as rotas no roteador RHEL para enviar tráfego pelo túnel VPN se a conexão for para a sub-rede da universidade e a conexão padrão pelo roteador DD-WRT, por exemplo:

    route add default via $dd-wrt-ip-address dev eth0
    route add $univ-subnet-ip dev tun0
    
  3. Habilite o ip-masquerading no roteador RHEL. Na minha máquina eu usei o firewalld para isso

    firewall-cmd --add-rich-rule 'rule family=ipv4 masquerade'
    
  4. Coloque as máquinas clientes da sua casa na sub-rede 10.0.0.0/24 e faça com que elas usem 10.0.0.10 (roteador RHEL) como gateway padrão.

por 25.12.2014 / 18:54

Tags