Encaminhamento de IP lento/morto

Encaminhamento de IP lento/morto

Eu tenho 2 VMs configuradas no qemu. 1 das VM's (VM1) possui link para internet e link para a outra VM (VM2). Na VM1 obtenho bons resultados no desempenho da rede (para wan):

Connecting to host iperf.xxx, port 5201
[  5] local xxx port 40826 connected to xxx port 5201
[  7] local xxx port 40828 connected to xxx port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-10.00  sec   353 MBytes   296 Mbits/sec  337   93.3 KBytes       
[  7]   0.00-10.00  sec   359 MBytes   301 Mbits/sec  339    122 KBytes       
[SUM]   0.00-10.00  sec   712 MBytes   597 Mbits/sec  676             
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   353 MBytes   296 Mbits/sec  337             sender
[  5]   0.00-10.00  sec   353 MBytes   296 Mbits/sec                  receiver
[  7]   0.00-10.00  sec   359 MBytes   301 Mbits/sec  339             sender
[  7]   0.00-10.00  sec   358 MBytes   300 Mbits/sec                  receiver
[SUM]   0.00-10.00  sec   712 MBytes   597 Mbits/sec  676             sender
[SUM]   0.00-10.00  sec   711 MBytes   596 Mbits/sec                  receiver

Na VM1, tenho o IpForward habilitado no Sysctl e a VM2 tem uma rota padrão para a VM1. Mas ao executar o mesmo teste iperf na VM2, obtenho o seguinte resultado:

Connecting to host iperf.xxx, port 5201
[  5] local 10.5.5.2 port 53188 connected to xxx port 5201
[  7] local 10.5.5.2 port 53190 connected to xxx port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-10.01  sec   631 KBytes   516 Kbits/sec    6   1.41 KBytes       
[  7]   0.00-10.01  sec   731 KBytes   598 Kbits/sec   20   1.41 KBytes       
[SUM]   0.00-10.01  sec  1.33 MBytes  1.11 Mbits/sec   26             
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.01  sec   631 KBytes   516 Kbits/sec    6             sender
[  5]   0.00-10.01  sec   281 KBytes   230 Kbits/sec                  receiver
[  7]   0.00-10.01  sec   731 KBytes   598 Kbits/sec   20             sender
[  7]   0.00-10.01  sec   431 KBytes   353 Kbits/sec                  receiver
[SUM]   0.00-10.01  sec  1.33 MBytes  1.11 Mbits/sec   26             sender
[SUM]   0.00-10.01  sec   713 KBytes   583 Kbits/sec                  receiver

Como você pode ver, essa é uma diferença muito grande. Como reação natural, iniciei um iperf entre VM1 (servidor) e VM2 (cliente), com o seguinte resultado:

Connecting to host 10.5.5.1, port 5201
[  5] local 10.5.5.2 port 49408 connected to 10.5.5.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  1.01 MBytes  8.46 Mbits/sec   31   1.41 KBytes       
[  5]   1.00-2.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes       
[  5]   2.00-3.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   3.00-4.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes       
[  5]   4.00-5.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   5.00-6.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   6.00-7.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes       
[  5]   7.00-8.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   8.00-9.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
[  5]   9.00-10.00  sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.01 MBytes   847 Kbits/sec   34             sender
[  5]   0.00-10.00  sec   523 KBytes   429 Kbits/sec                  receiver

Parece que os pacotes são descartados após serem estabelecidos (?), Porque o primeiro segundo. está tudo bem, mas depois a conexão parece estar morta.

Atualmente estou sem opções e até aceitei todo o tráfego no firewall da VM1. Saída iptables -nvL --line-numbersda VM1:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1     602K   34M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           
2    2428K  275M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
3        1    84 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
4        6   360 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5201
5        0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 8 ctstate NEW
6        5   308 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22 flags:0x17/0x02 ctstate NEW
7        3   140 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8080 flags:0x17/0x02 ctstate NEW
8      132  5288 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
9      593 24128 REJECT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp reject-with tcp-reset
10      81 24010 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable
11       0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5201
12       0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:5201

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1     137K  298M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           
2     1758  106K ACCEPT     tcp  --  *      *       0.0.0.0/0            10.5.5.2             tcp dpt:22
3    97425  322M ACCEPT     all  --  *      enp1s5  0.0.0.0/0            10.5.5.0/24          ctstate RELATED,ESTABLISHED
4    41400 6022K ACCEPT     all  --  enp1s5 *       10.5.5.0/24          0.0.0.0/0           
5        0     0 ACCEPT     all  --  enp1s5 enp1s5  0.0.0.0/0            0.0.0.0/0           
6        0     0 REJECT     all  --  enp1s5 *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable
7        0     0 REJECT     all  --  *      enp1s5  0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1     383K 2483M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0          

E a tabela nat iptables -t nat -nvL --line-numbers:

Chain PREROUTING (policy ACCEPT 2246 packets, 141K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DNAT       tcp  --  *      *       0.0.0.0/0            xxx       tcp dpt:2243 to:10.5.5.2:22
2        1    64 DNAT       tcp  --  *      *       0.0.0.0/0            xxx       tcp dpt:2246 to:10.5.5.2:22

Chain INPUT (policy ACCEPT 1330 packets, 77280 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 355 packets, 18693 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 949 packets, 42477 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 RETURN     all  --  *      *       10.5.5.0/24          224.0.0.0/24        
2        0     0 RETURN     all  --  *      *       10.5.5.0/24          255.255.255.255     
3      242 15138 MASQUERADE  all  --  *      *       10.5.5.0/24         !10.5.5.0/24   

(Isso ocorre com 2 encaminhamentos de porta habilitados em vm1 para a porta 22 em vm2 aliás)

Como disse, estou sem opções. Você tem alguma sugestão sobre como continuar com a solução de problemas?

informação relacionada