iptables转发流量到kubernetes

集群是架在阿里云VPC上. 电脑通过连接位于网关(172.16.10.1)上面的openvpn进入到内网

k8s(calico)集群在同一个网段上, 所在的机器的ip可以被访问到

现在我想在内网内其他机器 通过 10.42.x.x ip来访问k8s里面的服务, 在k8s集群的节点上是没有问题的. 但是在其他机器上却没有办法(有添加如下iptable rules)

在网关节点上 iptables -t nat -A POSTROUTING -d 10.42.0.0/16 -j SNAT --to 172.16.10.21 其中 172.16.10.21 是某个节点的ip. iptables -t nat -A PREROUTING -d 10.42.0.0/16 -j DNAT --to 172.16.10.21 也试过不行.

然后在节点上 iptables -t nat -A POSTROUTING -s 172.16.10.0/24 -j MASQUERADE

不知道是哪一步做得不对呢?

阅读 2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题