frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。[更多信息]

TeamViewer 是一个能在任何防火墙和NAT代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案。[TeamViewer官网]

必要条件需要一个拥有互联网公网IP的服务器作为中转。此服务器可以是自己的一台电脑、路由器或者是物联网开发设备(例如树莓派)等。也可以购买云服务器,例如阿里云、腾讯云、百度云等。


  1. 首先下载frp:点这里进入下载页面  当前最新版本为:v0.29.0
    根据自己的机器所使用的操作系统下载对应的frp压缩包。此次中转服务器为linux系统,客户端所在机器的操作系统为windows,均为64位系统,因此我们分别需要下载frp_0.29.0_linux_amd64.tar.gz 以及 frp_0.29.0_windows_amd64.zip

  2. 对上面已下载的压缩包进行解压。解压后的文件夹中均包含服务端文件frps及客户端文件frpc,在服务端和客户端只需使用对应的文件即可。在使用之前需配置对应的frps.ini及frpc.ini文件:

    # frps.ini
    [common]
    bind_port = 7000
    token = abc123
    

    服务端frps.ini配置如上↑↑↑。 7000 为服务端监听端口,可根据你的服务器情况自行修改,此配置项bind_port必须填写;abc123 为身份验证token参数,如服务端配置了此参数,则客户端也要配置相同的token参数才能通过验证连接上服务端。此token项非必填项,但为了确保安全连接,建议加上此参数;—更多服务端配置文件frps.ini参数详见:frps完整的示例配置文件

    # frpc.ini
    [common]
    server_addr = 111.11.1.0
    server_port = 7000
    token = abc123
     
    [teamviewer]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 5938
    remote_port = 5938
    

    客户端frpc.ini配置如上↑↑↑。[common]的部分与服务端配置内容一致,同时还需配置参数server_addr = 111.11.1.0,指明服务端所在的公网IP地址。并添加一个配置项目[teamviewer],其中type为连接类型;local_ip设置为本地ip默认127.0.0.1;由于TeamViewer通过端口5938进行对外的TCP和UDP连接,因此local_port及remote_port均设置为5938。当此配置文件下的客户端frpc成功连接上服务端时,服务端会开启5938端口进行监听,因此请确保服务端的防火墙放行之前已配置的7000端口及5938端口,否则会无法连接frpc客户端及TeamViewer的远程连接。—更多客户端配置文件frpc.ini参数详见:frpc完整的示例配置文件

  3. 开启服务端(Linux系统下):
    ./frps -c ./frps.ini
    Linux系统仍可使用nohup开启服务端:
    nohup ./frps -c ./frps.ini >/dev/null 2>&1 &
    Windows系统下,进入cmd窗口下,cd到文件夹目录,输入如下命令回车即可:
    frps -c frps.ini

  4. 开启客户端(Windows系统下):
    Windows系统下,进入cmd窗口下,cd到文件夹目录,输入如下命令回车即可:
    frpc -c frpc.ini
    为了便捷开启客户端,可编写批处理文件执行:

    cd C:\frp_0.29.0_windows_amd64
    frpc -c frpc.ini
    

    或者编写vbs脚本执行:

    set ws=WScript.CreateObject("WScript.Shell")
    ws.Run "C:\frp_0.29.0_windows_amd64\frpc.exe -c C:\frp_0.29.0_windows_amd64\frpc.ini",0
    
  5. 开启客户端中的TeamViewer的LAN传入连接:
    进入TeamViewer顶部菜单栏:其它 —> 选项—> 常规 —> 呼入的LAN连接 —> 更改为 接受 或 仅接受。

    提示: 如果您选择 仅接受, TeamViewer 将与互联网断开连接,这意味着将无法用 TeamViewer ID 建立或接收连接,并且计算机 & 联系人列表将不再可用。

    当选择—> 仅接受 时, TeamViewer 将在应用程序的主窗口中显示您计算机的内部 IP 地址:

  6. 使用已联网的TeamViewer进行连接:
    最后打开任意一个已联网的TeamViewer,在伙伴ID处填写服务端的IP地址,点击 连接 即可。

  7. 总结
    为什么需要使用TeamViewer的LAN连接?因为TeamViewer会对部分侦测判定为商业行为的连接进行限制,在使用时往往被断开连接或限制使用时间。而使用LAN连接则不会有任何限制。我们只需使用一台拥有公网IP的服务器作为中转,使用frp内网穿透功能,即可在外网连接使用了LAN连接功能的内网TeamViewer,同时在一定程度上加快连接速率(不用绕道TeamViewer的国外服务器),带来更加稳定的使用体验。




End. Have Fun!twemoji-1f199


0 条评论 latest

暂无评论.