iptables-restore 在 GKE 中失败并出现错误:iptables-restore v1.6.0:错误的 IP 地址“”

iptables-restore 在 GKE 中失败并出现错误:iptables-restore v1.6.0:错误的 IP 地址“”

GKE 集群:进入一个 pod(kubectl exec -ti ha-77lgb bash)。

root@gke-ha-pool-1-10438716-b5wj:/home# iptables-save > /tmp/iptables-save.txt
root@gke-ha-pool-1-10438716-b5wj:/home# iptables-restore < /tmp/iptables-save.txt
iptables-restore v1.6.0: Bad IP address ""

Error occurred at line: 49
Try `iptables-restore -h' or 'iptables-restore --help' for more information.

为什么会出现上述错误?我没有做任何事情,只是保存并恢复。

请参阅下面第 49 行:

 47 -A KUBE-POSTROUTING -m comment --comment "kubernetes service traffic requiring SNAT" -j MASQUERADE
 48 -A KUBE-SEP-3XFQPLLWSOLEEI2B -s 172.30.192.5/32 -m comment --comment "default/my-nginx2" -j KUBE-MARK-MASQ
 49 -A KUBE-SEP-3XFQPLLWSOLEEI2B -p tcp -m comment --comment "default/my-nginx2" -m tcp -j DNAT --to-destination  --random     --persistent --to-destination  --random --persistent --to-destination
 50 -A KUBE-SEP-42YCR4PCVHTERQ6H -s 172.30.192.2/32 -m comment --comment "default/my-nginx2" -j KUBE-MARK-MASQ
 51 -A KUBE-SEP-42YCR4PCVHTERQ6H -p tcp -j DNAT --to-destination 172.30.0.16:80

其他信息如下:

  • 使用以下命令在 pod 中安装 iptables:

    RUN apt install -y iptables
    
  • 在docker文件中包括以下内容:

    FROM ubuntu:16.04
    
  • 在主机(Ubuntu 16.04)上构建 docker 镜像并将镜像推送到 GKE 集群。

    主机详细信息:

    cat  /etc/issue
    Ubuntu 16.04.6 LTS \n \l
    
    root@gke-ha-pool-1-10438716-b5wj:/home# iptables --version
    iptables v1.6.0
    root@gke-ha-pool-1-10438716-b5wj:/home# cat /etc/issue
    Ubuntu 16.04.7 LTS \n \l
    
    root@gke-ha-pool-1-10438716-b5wj:/home# uname -a
    Linux gke-ha-pool-1-10438716-b5wj 5.4.89+ #1 SMP Sat Feb 13 19:45:14 PST 2021 x86_64 x86_64 x86_64 GNU/Linux
    

有时,我们还会收到以下错误:

iptables-restore v1.6.0: Port `0' not valid
Error occurred at line: 106

任何帮助都将不胜感激。

谢谢-Nagendra

相关内容