Por que certos pacotes são eliminados na VLAN pública?
Nuvem privada virtual Infraestrutura clássica
Você observou que os trabalhadores IBM Cloud Kubernetes Service estão descartando determinados pacotes inválidos ou pacotes de ingresso quando em uma VLAN pública com endereços de origem privada. Por exemplo, ao criar um balanceador de carga do
aplicativo (ALB) para o cluster, não é possível estabelecer uma conexão com ele. Você recebe uma mensagem semelhante a Unable to connect to <ALB>.
Para algumas configurações de rede customizadas, por exemplo, ao configurar um VPN para permitir o tráfego de ingresso para um LoadBalancer IKS público proveniente de endereços IP de origem privada, é possível que o tráfego customizado seja descartado, não ficando mais disponível. Essa ação é causada pelas regras de Ataque de negação de serviço (DDOS) configuradas na iptable de codificação de um nó do trabalhador do Kubernetes.
A iptable de codificação inclui as regras a seguir.
2488 214K DROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID /* DDOS: Blocks RST flood and TCP XMAS Flood (w and w/o data) */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x00 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x03/0x03 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x06 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x05/0x05 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x11/0x01 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x30/0x20 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x11/0x01 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x18/0x08 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x3F /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x00 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x29 /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x2B /* DDOS: Invalid packets */
0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x3F/0x37 /* DDOS: Invalid packets */
0 0 DROP all -- eth1 * 224.0.0.0/3 0.0.0.0/0 /* DDOS: Drop private source IPs */
21803 1744K DROP all -- eth1 * 169.254.0.0/16 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 172.16.0.0/12 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 192.0.2.0/24 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 0.0.0.0/8 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 240.0.0.0/5 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 10.0.0.0/8 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 DROP all -- eth1 * 192.168.0.0/16 0.0.0.0/0 /* DDOS: Drop private source IPs */
0 0 ACCEPT all -- vethlocal * 127.0.0.0/8 0.0.0.0/0 /* DDOS: Accept local LB traffic */
0 0 DROP all -- !lo * 127.0.0.0/8 0.0.0.0/0 /* DDOS: Drop private source IPs */
Para resolver esse problema, crie um balanceador de carga privado para permitir esse tráfego com os endereços IP de origem privada. Caso isso não resolva o problema ou se, por alguma razão, não for possível criar um balanceador de carga privado, crie um daemonset que remova as regras que estão causando o problema.