Como rotear vários IPs públicos para sub-redes internas

1

Recebi um bloco de / 29 ips para um servidor dedicado que aluguei. Eu quero ser capaz de manter um desses IPs para gerenciar o próprio servidor e encaminhar cada um dos demais para sua própria sub-rede interna, para que vários contêineres do OpenVZ possam compartilhar IPs públicos.

Por exemplo, posso ter dois servidores da web e dois servidores de arquivos em quatro contêineres. Não são os serviços reais que serão executados, mas, para facilitar, vou usá-los. Quero que um dos meus IPs públicos (XX.XX.XX.2) aponte para os dois contêineres na sub-rede 192.168.2.0/24 e o outro IP público (XX.XX.XX.3) para apontar para os contêineres na sub-rede 192.158.3.0/24. A comunicação entre as sub-redes não é necessária, mas cada contêiner deve poder acessar a web.

Eu tentei usar roteamento baseado em fontes como descrito aqui e NAT conforme descrito no OpenVZ wiki aqui sem sucesso. O host está executando o Centos 6, e cada VM está executando o Debian 7, se isso faz diferença.

    
por Adam Dodman 16.06.2015 / 13:38

1 resposta

0

  1. Configure seus contêineres openvz para usar a interligação em rede ( usando as interfaces veth ).

  2. Crie uma ponte para cada uma das redes internas às quais você deseja conectar seus containers (no seu caso, 2 pontes, uma para 192.168.2.0/24 e outra para 192.168.3.0/24. Vamos chamá-las de br2 e br3).

  3. Conceda a cada bridge um endereço IP na rede correta (por exemplo, br2 poderia ser 192.168.2.1 e br3 192.168.3.1)

  4. Configure os containers conectando-os às suas respectivas pontes.

    Por exemplo, conecte a br2 os containers que devem residir na rede 192.168.2.0/24 (digamos que eles são CT1 e CT2) e br3 os que você deseja em 192.168.3.0/24 (digamos que eles sejam CT3 e CT4).

  5. Conceda a cada contêiner um endereço IP na mesma rede da ponte à qual eles estão conectados. Defina o endereço IP do anúncio de bridge como o gateway padrão.

    Por exemplo: CT1 e CT2 com IP 192.168.2.101 e 192.168.2.102. Seu gateway será 192.168.2.1 (endereço IP da br2)

  6. Ativar o encaminhamento de ip no host físico

  7. Configure todos os IPs públicos na interface do host físico conectado à Internet (digamos que seja eth0), com a máscara de sub-rede correta.

  8. Configure o NAT para seus CTs da seguinte forma:

    iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j SNAT --to first.pulic.ip.address
    iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth0 -j SNAT --to second.pulic.ip.address
    
por 17.06.2015 / 14:39