QWRT tailscale subnet路由填坑笔记
被tailscale subnet路由性能卡的要死的情况折腾了大半年,实在忍不了了而且春节也是闲的没事就尝试解决一下。
首先这感觉就是被运营商QoS到死,又因为自有国情在此,这两年运营商大搞网间限速,我甚至到昨天晚上找到rootcause是subnet路由之前都以为是运营商QoS限速导致的。而且这感觉上也是,我连另一个子网的路由,卡的连个html都要加载好几分钟。以至于在我心里运营商背了大半年的黑锅。最后发现其实是因为去年9月份从asuswrt的大螃蟹换到了qwrt的地表最有性价比的小米BE10000以后没仔细调过tailscale的转发,只是本着能跑就行的态度,给自己挖了个大坑。
直到最近tailscale实现了peer relay,我在测试的时候发现,强行relay到peer也卡,但是我pc上开就不卡,一过本地qwrt路由就完蛋。跟AI聊了一下AI一开始也猜是因为不同ipv6 地址策略不一样。结果一步一步排错下来,AI给了个意见说让perf测一下,我觉得有道理,结果一测,草,问题一目了然了。
太久没配网连这最基本的怎么排查问题的测试都忘了做了,实在是草
node A(perf服务端) node B(QWRT + tailscale) node C(PC没跑tailscale)
在C上跑rperf3-windows-x86_64.exe client 100.x.x.x –reverse -u
1 | [ 5] local 192.168.x.2 port 60660 connected to 100.x.x.x port 5201 |
速度就很正常,但是切到TCP就惨不忍睹了
1 | perf3-windows-x86_64.exe client 100.x.x.x --reverse |
但是如果在node B上面跑tcp和udp测试就都正常。
好了 rootcause缩小到TCP子网转发问题。