wsl2, docker desktop, etc踩坑小记
markdown
在 [VMware 技术预览版](http://bit.ly/getworkstation-tp)的诱惑下,我果断地投入了Windows insider的怀抱,开始我曾经梦想的wsl2+docker windows+VMware的生活。
然后炸了我一脸,幸好因为疫情暂时没啥锅要背。
## wsl2
### 错误 0xffffffff
刚装上之后总是转不过去wsl2,看到[一篇issue](https://github.com/microsoft/WSL/issues/4364#issuecomment-520742839)中说到53端口的问题,看了一下发现确实有个(以前搞的没啥卵用的)服务在占用53端口,关闭并重启就ok了
## docker desktop
### 神秘端口占用
常用的端口全被他给日了,一旦启动docker desktop就会被占用。
看到[这篇博文](https://blog.miniasp.com/post/2019/03/31/Ports-blocked-by-Windows-10-for-unknown-reason)意识到又是`excludedportrange`的锅(如果你有在win10 1803更新后打不开ss,提示1080被占用,怎么找都找不到端口占用的话,那就是这个了)
#### before
忘截图了,总之就是只有几个条目的样子
#### after

#### solution
因为忘了截图,所以上面的after其实是我解决之后的截图。
docker desktop会占下一批的端口留待动态分配,看到上面那个博文中「每次占用的端口都有变化」之后,如果你还没有意识到他是在从系统整动态端口的话就说不过去了。
通过`netsh int ipv4 show dynamicport tcp`检查自己的动态端口分配规则发现:tmd竟然是从1000开始的?
使用`netsh int ipv4 set dynamicport tcp startport=40000 numberofports=20000`将tcp动态端口的范围设置为「40000-60000」,当然你愿意严格按照IANA那个标准的port range设置的话那你自己去查。
执行后重启,然后docker desktop占用的端口范围就会上图所见一样,变到40000之后了。顺便1080端口被占的情况也消失了(然而我早就不用ss了
## 合影

KVM/QEMU用户也不言语
回复删除