Rancher Desktop集群中Job执行telnet 127.0.0.1:6443连接被拒求助
Pod内无法连接Kubernetes控制平面127.0.0.1:6443的排查要点
核心问题
你在Pod里执行telnet 127.0.0.1 6443时,访问的是Pod自身的回环网络,而非宿主机上的K8s控制平面,这是连接被拒绝的根本原因。
具体解决思路
使用集群内部的控制平面服务地址
Kubernetes默认在default命名空间提供了名为kubernetes的Service,Pod可以直接通过集群域名访问:telnet kubernetes.default.svc.cluster.local 443这个地址是K8s集群内部的标准访问入口,所有正常运行的Pod都能直接解析并访问。
若需访问宿主机的控制平面端口
如果你一定要测试宿主机6443端口的连通性,需要用Pod所在网络能访问到的宿主机IP:- 在Rancher Desktop的WSL2/macOS环境中,可尝试使用
host.docker.internal这个特殊域名:telnet host.docker.internal 6443 - 或者手动查询宿主机在K8s集群网络中的实际IP:在宿主机执行
kubectl get nodes -o wide,找到节点的InternalIP字段,用该IP替换127.0.0.1。
- 在Rancher Desktop的WSL2/macOS环境中,可尝试使用
额外说明
宿主机的6443是HTTPS端口,telnet只能测试连通性(即使成功也看不到有效响应),但至少不会返回连接拒绝。另外,Pod默认会自动挂载ServiceAccount令牌,后续若要调用K8s API,无需额外配置认证。
内容的提问来源于stack exchange,提问作者devcodes
相关产品推荐
相关产品推荐

