不要乱配置Anycast

Anycast是什么

你可以把它简单理解成多台服务器共用一个IP地址,然后根据离谁近,就访问哪台服务器

出什么事了

边缘节点掉线

对于我来说,节点掉线倒是正常,甚至我为了快速恢复还专门做了一个脚本,以快速检测问题所在

我第一时间ssh上服务器,然后使用curl请求主控服务器的快速恢复脚本,结果超时了?

anycastbug

但我当时只以为是因为ipv6又连不上网了,所以我使用了curl -4,结果又超时了,我就急了,我ping 1.0.0.1,还是不通

anycastbug

我的大脑飞速运转,我第一时间想到是不是断网了,我后面一想不对,我都可以SSH上来了,怎么会没网呢,后来想起来:我草我网卡上挂着anycast地址

anycastbug

然后我火速SSH回到Homelab的服务器上调查Log,果然,服务器上挂了200 OK,说明请求收到了并回复了,这下问题很明显了

anycastbug

我发出去的请求因为anycast原因被路由到了另一个节点,这个故事告诉我们不要把Anycast设置成default