mirror of
https://github.com/fatedier/frp.git
synced 2026-05-16 00:25:49 -06:00
[GH-ISSUE #244] 特权模式下同一内网下不同机器疑似不能同时建立连接? #169
Labels
No labels
In Progress
WIP
WaitingForInfo
bug
doc
duplicate
easy
enhancement
future
help wanted
invalid
lifecycle/stale
need-issue-template
need-usage-help
no plan
proposal
pull-request
question
todo
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/frp#169
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @hijiangtao on GitHub (Feb 3, 2017).
Original GitHub issue: https://github.com/fatedier/frp/issues/244
简单描述一下问题所在环境,由于本人所在环境处于局域网,对外无公有 IP,所以利用云服务器建立了 frp 特权模式的连接,在只有一个 frpc 对应连接的情况下能够正常连接通信(假设局域网下该机器命名为 local-A)。
与此同时我利用另一个局域网下的机器 local-B 采用同样的特权 token 建立连接(listen-port 已经修改为不同于local-A的设置),此时在机器 local-B 第一次执行
./frpc -c ./frpc_min.ini时会报错显示 proxy 已经在工作之后,我再一次在 local-B 上执行
./frpc -c ./frpc_min.ini时会报错 连接拒绝经查看 frps 所在云服务器的 log 显示:第一次 local-B 的连接使得 frps 异常退出,第二次 local-B 的连接 connection refused 的原因则为云服务器上的 frp 进程已不存在、所以无法建立连接。
其中, frps.ini 配置为
frpc.ini配置为 (local-A 和 local-B 的 remote_port 设置为不同的编号)
由此,我认为存在的原因会不会是同一局域网下两个机器的 frp 同时启动会存在冲突,以致于以上失败情况?谢谢。
@yovanc commented on GitHub (Feb 3, 2017):
可以看看进程是否有frp.exe,如果有结束掉,之后再次尝试启动。另外我之前也遇到过你这种问题,重新去另一台机器上复制了一份配置 文件就可以用,你看看修改配置的时候尽量用编辑器去修改。
如果还不行,先关闭云服务器防火墙,看看是不是防火墙拦截端口。
@hijiangtao commented on GitHub (Feb 3, 2017):
谢谢。 @yovanc
@yovanc commented on GitHub (Feb 3, 2017):
我之前还遇到过server端明明启动状态,但client死活都无法连接的情况。linux直接重置了系统,结果再次部署好又可以用了,而windows则等到第二天自动恢复。另外建议你检查你的server上subdomian是否设置?
另外我建议可以去http://diannaobos.com/frp/下载他们的配置文件,看看是否client是否配置错误。
由于我对这块不太懂,所以都是通过不断尝试才搭建完成。
@fatedier commented on GitHub (Feb 3, 2017):
@hijiangtao commented on GitHub (Feb 3, 2017):
@yovanc 谢谢,我认为我的情况应该不属于 client 配置错误,在单连接情况是成功的,双连接情况下的报错信息也比较明显;另外,我看到 subdomain 的信息是指方便多人访问的有关二级域名的相关配置,我直接通过 IP 访问,似乎是不需要 domain 来进行转发(或类似功能)的,所以 server 上不设置 domain 相关操作应该没有影响?
UPDATE: 在不使用特权模式的情况下(即普通添加两个 ssh 配置的模式),我的两台机器均能够成功建立连接通信。所以我在想,以上说到的情况会不会只在局域网两台机器下均使用特权模式建立连接的情况下重现,希望以上信息有所帮助。
@hijiangtao commented on GitHub (Feb 3, 2017):
@fatedier frps 版本为 0.9.1
谢谢,由于特权模式部分未强调不同连接的 ProxyName 唯一性,导致错误;修改 ProxyName 不同机器上 ssh 别名后问题解决 :-)
@yovanc commented on GitHub (Feb 3, 2017):
@fatedier迫切需要文档中提供FAQ,哈哈!非常适合快速排查问题。如果连接时Proxy Name遇相同名称可以自动添加一些前缀名称实现自动区分就方便多了,有时候我明知道要改不同名称,还是会忘记,导致连接失败。
@fatedier commented on GitHub (Feb 3, 2017):
@yovanc 提议很好,FAQ 会有的。 同名的问题在考虑怎么改进。
@applepearq commented on GitHub (Apr 7, 2017):
@hijiangtao 你这样写服务端 dashboard 怎么查看?好简单的服务端啊
@hijiangtao commented on GitHub (Apr 8, 2017):
@applepearq 没太清楚你的意思? 目前为止, 我在使用过程中没有过多关注 dashboard 的访问.