roteamento entre interfaces e nat (aliasing de IP)

roteamento entre interfaces e nat (aliasing de IP)

Tenho 2 servidores, ambos conectados por switch0 (sem vlan) server1 tem 2 NICS

eth0 --> switch0
ppp0 --> modem --> internet
cat /proc/sys/net/ipv4/ip_forward 1

192.168.1.0/24
192.168.1.212 netmask 255.255.255.0

rota:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0
10.10.10.0      10.10.10.1      255.255.255.0   UG    0      0        0 tun0
10.10.10.1      0.0.0.0         255.255.255.255 UH    0      0        0 tun0
151.7.202.72    0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
172.16.212.0    0.0.0.0         255.255.255.0   U     0      0        0 vmnet1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.116.0   0.0.0.0         255.255.255.0   U     0      0        0 vmnet8

servidor2 é:

192.168.1.0/24
192.168.1.252 netmask 255.255.255.0 --> switch0

com 3 LANs, 3 NICS:

192.168.1.0/24 netmask 255.255.255.0 --> switch0
192.168.2.0/24 netmask 255.255.255.0 --> switch1
193.168.3.0/24 netmask 255.255.255.0 --> switch2

rota:

Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.168.1.212      UGS         0   168553   bge0
10.10.10.0/24      10.10.10.1         UGS         0        0   tun0
10.10.10.1         link#12            UH          0        0   tun0
10.10.10.2         link#12            UHS         0        0    lo0
127.0.0.1          link#10            UH          0     1897    lo0
192.168.1.0/24     link#1             U           0    42375   bge0
192.168.1.252      link#1             UHS         0        4    lo0
192.168.2.0/24     link#7             U           0   117807    rl0
192.168.2.252      link#7             UHS         0        0    lo0
192.168.3.0/24     link#8             U           0   161828    rl1
192.168.3.252      link#8             UHS         0        0    lo0

Preciso criar um roteamento de 192.168.1.0/24 para todas as outras LANs.

Devo usar o alias de IP no server2?

Responder1

Na verdade, é muito fácil.

No servidor 2: edite (como sudo) o arquivo /etc/sysctl.conf, localize esta linha

  #net.ipv4.ip_forward=1

e descomentar,

  net.ipv4.ip_forward=1

Salve o arquivo, emita o comando:

  sudo sysctl -p

Isso simplesmente diz ao seu kernel para permitir que pacotes passem de uma NIC para outra.

Além disso, precisamos configurar o NAT nele, para que os pacotes de retorno possam ser roteados corretamente através do servidor2. Emita isto:

  sudo iptables -t nat  -A POSTROUTING -o rl0 -j MASQUERADE
  sudo iptables -t nat  -A POSTROUTING -o rl1 -j MASQUERADE

Isso pressupõe que todas as suas políticas iptables padrão sejam ACCEPT. Se isso não estiver correto, teremos que fazer mais alguns furos no seu firewall.

Agora para o servidor 1. Emita os seguintes comandos:

  sudo route add -net 192.168.2.0/24 default gw 192.168.1.252
  sudo route add -net 192.168.3.0/24 default gw 192.168.1.252

Esses dois comandos estão simplesmente instruindo o servidor1 que, caso encontre um pacote destinado a 192.168.2.0/24 ou 192.168.3.0/24, o pacote deverá ser roteado para o servidor2, que cuidará disso.

Você não especificou se deseja que os clientes em 192.168.2.0/24 ou 192.168.3.0/24 possam acessar 192.168.1.0 por meio do servidor2. Se você fizer isso, adicione

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

ao seu firewall.

Por último, espero sinceramente que as sub-redes 192.168.2.0/24 e 192.168.3.0/24 sejamnãoconectado ao Servidor1 por uma rota diferente, pois isso implicaria que existem loops fechados em sua configuração, o que requer alguns instrumentos avançados para lidar com isso adequadamente.

informação relacionada