环境为win11+wsl2+docker desktop+frp镜像
发生背景:wsl配置文件中我设置了
networkingMode=mirrored
所以一般情况下wsl2和主机ip一致,可互通
原始配置文件为
#frpc.toml配置文件端口映射部分
[text]
type = tcp#模式
local_ip =127.0.0.1#本机ip
local_port =1234#本机端口
remote_port =12345#远程端口
按照设想,本机ip与wsl一致,不会出错,可是出现错误如下:
由于远程服务器设置无误,防火墙也放开了端口所以主要研究本机,更改为0.0.0.0或192.168.x.x后都无效,可在我使用windows版本的frp中,可以正常转发,所以基本可以确定不是防火墙的问题,在主要确定可以是ip地址问题后,我在一篇文章https://blog.csdn.net/gaohongfeng1/article/details/138509578
中发现
把地址改为这个以后可以正常使用,通过询问copilot后,得出了如下解释:
127.0.0.1
定义:127.0.0.1 是一个环回地址(loopback address),用于指向本地计算机。
用途:在本地计算机上运行的程序可以通过 127.0.0.1 访问同一台计算机上的服务。
限制:只能在本地计算机上使用,不能用于访问 Docker 容器中的服务。
host.docker.internal
定义:host.docker.internal 是 Docker 提供的一个特殊 DNS 名称,用于在 Docker 容器中访问宿主机。
用途:在 Docker 容器中运行的程序可以通过 host.docker.internal 访问宿主机上的服务。
限制:只能在 Docker 容器中使用,不能在宿主机或其他环境中使用。
在修改端口配置为
#frpc.toml配置文件端口映射部分
[text]
type = tcp #模式
local_ip =host.docker.internal #DockerDNS
local_port =1234 #本机端口
remote_port =12345 #远程端口
后,可以正常使用frp
``
标签:dial,127.0,0.1,ip,frp,docker,内网,Docker From: https://www.cnblogs.com/bxy0128/p/18324358