IBM Cloud Docs
為何在公用 VLAN 上捨棄特定封包?

為何在公用 VLAN 上捨棄特定封包?

Virtual Private Cloud 標準基礎架構

您發現 IBM Cloud Kubernetes Service 工作者節點在具有專用來源位址的公用 VLAN 上捨棄某些無效封包或進入封包。 例如,您為叢集建立應用程式負載平衡器 (ALB),但無法連接至該叢集。 您會收到類似於 Unable to connect to <ALB> 的訊息。

對於某些自訂網路配置,例如,如果您將 VPN 配置為容許進入來自專用來源 IP 位址的公用 IKS LoadBalancer 的資料流量,則可能會發現您的自訂資料流量捨棄且不再可用。 此動作是由 Kubernetes 工作者節點 mangle iptable 中設定的「分散式阻斷服務 (DDOS)」規則所導致。

mangle iptable 包括下列規則。

 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 */

若要解決此問題,請 建立專用負載平衡器,以容許具有專用來源 IP 位址的此資料流量。 如果無法解決問題,或基於某些原因,您無法建立專用負載平衡器,請建立 daemonset 來移除導致問題的規則。