frp如何不经服务器传输

worktile 其他 106

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要实现frp不经过服务器传输,可以采用P2P(点对点)直连的方式进行通信。下面我将详细介绍如何设置。

    首先,在配置frp客户端和服务端时,需要使用相同的token用于认证。token相当于一个密码,用于验证客户端和服务端的合法性。

    在frp的配置文件中,可以通过设置bind_addr参数指定客户端和服务端绑定的IP地址。

    在客户端配置文件中,需要设置server_addr参数指定服务端IP地址以及server_port参数指定服务端监听的端口号。

    在服务端配置文件中,需要设置bind_port参数指定服务端的监听端口号。

    接下来,需要在路由器上进行端口映射。将服务端所使用的bind_port映射到外网,这样客户端才能够直接连接到服务端。

    在路由器上进行端口映射时,需要将服务端所在的局域网IP地址和端口号映射到外网的某个端口上。

    例如:将服务端的bind_port映射到路由器的80端口上,外网访问路由器的公网IP地址的80端口时,就会转发到服务端。

    最后,在frp客户端中,设置server_addr为路由器的公网IP地址,server_port为映射到的端口号。

    这样,客户端就可以直接连接到服务端,通过P2P直连的方式进行通信,而无需经过服务器传输。

    需要注意的是,使用P2P直连的方式可能会受到网络环境、设备设置等多种因素的影响,可能导致连接不稳定或无法建立连接。所以在实际使用中,需要根据具体情况进行调试和优化。

    1年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    Frp是一种用于实现内网穿透的工具,它能够将内网服务器暴露在公网上,让外部网络可以访问内网服务器资源。通常情况下,Frp需要通过服务器中转数据来实现内网穿透,但是也可以通过编写配置文件,使Frp不经过服务器传输数据。下面是实现不经服务器传输的一种配置方式:

    1. 配置服务器端

    首先,在服务器上安装Frp,并创建配置文件frps.ini。在该配置文件中,设置服务端口,以及指定用于通信的token:

    [common]
    bind_port = 7000
    token = your_token
    
    1. 配置客户端

    在客户端上安装Frp,并创建配置文件frpc.ini。在该配置文件中,指定连接服务器的目标地址和端口,并添加一个反向代理的配置:

    [common]
    server_addr = your_server_ip
    server_port = 7000
    token = your_token
    
    [web]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 8080
    remote_port = 8080
    
    1. 启动服务器端和客户端

    在服务器上启动frps:

    ./frps -c frps.ini
    

    在客户端上启动frpc:

    ./frpc -c frpc.ini
    
    1. 验证结果

    通过以上配置,客户端的8080端口将会被映射到服务器上的8080端口。现在,可以通过访问 your_server_ip:8080 来访问客户端上的本地web服务。同时,数据将直接从客户端传输到服务器,而不经由第三方服务器中转。

    需要注意的是,这种方式需要确保服务器和客户端之间的网络能够直接通信,且服务器的端口被客户端可以访问。此外,还需要确保服务器和客户端的防火墙规则允许frp的通信。

    总结:通过以上配置,可以实现不经服务器传输的内网穿透。这种方式能够提高数据传输的效率和安全性,但需要确保服务器和客户端之间的网络能够直接通信,并且需配置正确的防火墙规则。

    1年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    要使frp不经过服务器传输,可以使用frp的端对端模式(P2P模式)。使用端对端模式时,frp客户端之间直接建立连接,无需经过服务器中转。

    具体操作流程如下:

    1. 下载和安装frp客户端,根据操作系统下载相应的版本。

    2. 配置frp客户端。在客户端的配置文件(frpc.ini)中,进行以下配置:

    • 设置通信协议为tcp或udp。例如:
    protocol = tcp
    
    • 配置本地服务的端口号和类型。例如:
    [web]
    type = http
    local_port = 80
    
    1. 配置frp服务器。在服务器的配置文件(frps.ini)中,进行以下配置:
    • 设置通信协议为tcp或udp。例如:
    protocol = tcp
    
    • 配置客户端之间直接建立连接的端口号。例如:
    [common]
    bind_port = 9000
    
    1. 启动frp服务器和客户端。分别运行以下命令启动frp服务器和客户端:
    ./frps -c ./frps.ini
    ./frpc -c ./frpc.ini
    
    1. 现在,frp客户端之间可以直接建立连接,实现端对端通信,无需经过服务器传输。

    需要注意的是,使用端对端模式时需要确保客户端之间能够直接通信。如果存在防火墙或者路由器的限制,需要做相应的配置来允许客户端之间的连接。

    此外,端对端模式下的连接是直接的点对点连接,没有经过服务器的安全认证与加密,所以需要在可信环境下使用。如需要加密连接,请参考frp的其他配置选项,例如设置tls证书进行加密通信。

    1年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部