Filtrando o tráfego entre o alias de IP

0

Tenho problemas ao filtrar tráfego com dois hosts e um firewall entre eles. Cada um desses três hosts tem apenas uma placa de rede na qual eles podem se comunicar em uma rede, digamos 10.10.0.0/16. Eu gostaria de adicionar outra rede, mas tenho uma restrição que não me permite adicionar outra placa de rede.

Minha ideia era trabalhar com o aliasing de ip. Então, para conseguir isso, configurei cada NIC de cada host para ter vários endereços assim:

host0 : eth0 = 10.10.0.1/16
               192.168.0.1/24

router : eth0 = 10.10.0.2/16
               192.168.0.254/24
               192.168.1.254/24

host1 : eth0 = 10.10.0.3/16
               192.168.1.1/24

Como as fotos geralmente falam melhor que palavras, eu tenho isso:

HOST0                 ROUTER                   HOST1
   |                    |                         |
   ------------------------------------------------
10.10.0.1           10.10.0.2                  10.10.0.3

E eu gostaria de simular isso (com apenas um NIC):

HOST0--------------------ROUTER------------------HOST1
192.168.0.1            0.254  1.254              1.1

Eu configurei cada host com o comando ip :

ip add dev eth0 192.168.0.*

adicione a rota com o ip route.

Meu problema é que um ping de host0 para host1 está indo bem mesmo se eu derrubar todos os pacotes em router com iptables , o que indica que o ping pode não passar pelo roteador, mas prefere ir diretamente. Eu peguei um tcpdump trace que mostra o ping do host0 indo direto para o host1.

Tenho a sensação de que não deveria funcionar assim, mas não consigo entender.

Aqui o traço tcpdump:

52:54:00:00:00:00 > 52:54:00:00:00:02, IPv4, length 98: 192.168.0.1 >     192.168.1.1: ICMP echo request, id 4309, seq 3, length 64
52:54:00:00:00:02 > 52:54:00:00:00:00, IPv4, length 98: 192.168.1.1 > 192.168.0.1: ICMP echo reply, id 4309, seq 3, length 64
52:54:00:00:00:00 > 52:54:00:00:00:02, IPv4, length 98: 192.168.0.1 > 192.168.1.1: ICMP echo request, id 4309, seq 4, length 64
52:54:00:00:00:02 > 52:54:00:00:00:00, IPv4, length 98: 192.168.1.1 > 192.168.0.1: ICMP echo reply, id 4309, seq 4, length 64
52:54:00:00:00:00 > 52:54:00:00:00:02, IPv4, length 98: 192.168.0.1 > 192.168.1.1: ICMP echo request, id 4309, seq 5, length 64
52:54:00:00:00:02 > 52:54:00:00:00:00, IPv4, length 98: 192.168.1.1 > 192.168.0.1: ICMP echo reply, id 4309, seq 5, length 64
    
por jehutyy 12.07.2017 / 09:59

0 respostas