k8s双栈协议无法访问集群外ipv6服务(解决) 即时焦点

腾讯云   2023-04-22 15:45:55

问题背景

k8s集群升级了双协议栈后,从集群内无法访问外部ipv6服务,已经确认部署了Endpoint和Service。而同样采用ipv4是没问题的。

1 部署Endpoint和Service

apiVersion: v1kind: Servicemetadata:  name: myep  namespace: default  labels:    app: myepspec:  ports:  - name: http-8080    port: 8080    protocol: TCP    targetPort: 8080  ipFamilies:  - IPv6---apiVersion: v1kind: EndpointsapiVersion: v1metadata:  name: myep  #此名字需与 Service 中的 metadata.name 的值一致  namespace: default  labels:    app: myepsubsets:  - addresses:      - ip: 1002:003B:456C:678D:890E:0012:234F:56G7   ## 集群外Ip    ports:      - port: 8080        name: http-8080

然后在集群的Pod中访问myep:8080不通。

分析

通过tcpdump在1002:003B:456C:678D:890E:0012:234F:56G7这台机器山上抓包:
tcpdump -i eth0 host 1002:003B:456C:678D:890E:0012:234F:56G7 tcp -vv

发现可以收到发来的请求,但是并没有回包。


【资料图】

同样用tcpdump抓ipv4的包,是有回包的。分析ipv4和ipv6的差异:ipv4的SrcIP是Pod所在宿主机的ip,而ipv6的SrcIP是2000:100:100:100:9a7e:bead:f22c:9640,而2000:100:100:100::/64是集群内部的ipv6网段,可以确定ipv6的请求从Pod所在宿主机出来时没有进行SNAT转换。

2 增加SNAT的iptables策略

这里采用了一种比较简单的解决方案,最终方案应该通过集群的cni配置解决。

为所有的宿主机添加iptables策略:

ip6tables -t nat -A POSTROUTING -s 2000:100:100:100::/64 -o eth0 -j SNAT --to-source FC00:0:130F::9C0:876A:130B

参数

说明

-s

要处理的源IP段

-o

规则绑定的接口

--to-source

替换的IP(本机IP)

增加iptables策略后服务就可以访问了。

一些弯路

最初在服务所在主机上通过增加静态路由的方式也可以临时性达到目的:

ip -6 route add 2000:100:100:100::/64 via FC00:0:130F::9C0:876A:130B

相当于把Pod所在宿主机作为Pod内部网段的网关,这样可以临时解决问题,当时由于Pod会在集群的Node上漂移,所以这不是一个好的方法。

相关新闻

猜你喜欢

k8s双栈协议无法访问集群外ipv6服务(解决) 即时焦点

2023-04-22

天天热点!宣传部简介文案_宣传部简介

2023-04-22

乔任梁 惨(乔任梁自杀)-天天热闻

2023-04-22

吕梁市人大常委会重点督办的四届人大三次会议代表建议

2023-04-22

今日热文:高速轮轨粘着机理与控制研究_关于高速轮轨粘着机理与控制研究简述

2023-04-22

刘欢岳父母精神焕发气质优雅,女儿五官不像爸,长得漂亮清秀温婉 环球最新

2023-04-22

多国报告XBB.1.16变异株!国家疾控局回应 最新资讯

2023-04-22

听说你还回忆我简介_听说你还回忆我 全球热消息

2023-04-22

34+6+6!快船担心的出现了,空接之城到双超巨,本赛季结局已定

2023-04-22

如何下载歌曲到u盘上

2023-04-22

大奉打更人好玩吗 大奉打更人玩法简介_全球消息

2023-04-22

【南北组】嘘,别出声(2)(怪盗绫x警察依)

2023-04-22

艾尔登法环修改器_环球快消息

2023-04-22

天天热点评!浙江美大今年一季度净利润约1.01亿元

2023-04-22

清东陵和清西陵的区别为什么父子不能站一起_清东陵和清西陵的区别

2023-04-22

全球时讯:黄河流域九省(区)首届农民篮球邀请赛 将于4月28日开赛

2023-04-22

焦点热讯:谷雨闲情话未央

2023-04-22

股价暴跌后 特斯拉(TSLA.US)美版Model S和Model X涨价2500美元

2023-04-22

【全球速看料】华油能源(01251)拟折让1.96%配售最多1亿股配售股份 净筹2462万港元

2023-04-22

2023青岛海军节活动精彩看点有哪些? 全球热讯

2023-04-22

冲牙器有必要买2个吗?_每日讯息

2023-04-22

四川今年一季度GDP为13374.7亿元 同比增3.8%_全球球精选

2023-04-22

懵圈妹妹Missey_懵圈

2023-04-22

字字千金句句精辟引人深思_字字千金:5年级 环球实时

2023-04-22

辽宁丹东森林火灾明火已扑灭 起火原因正在调查|天天热闻

2023-04-22

精彩图集