如何用公网访问内网的局域网中的资源

@Ta 2022-03-31发布,2022-03-31修改 21167点击

画个图吧:

未命名文件.svg(5.85 KB)
小米MIX2s(白)

我有三个设备如图所示,绿色的是我自己的设备,可以操作和安装软件,请问 A 如何能通过 B 来访问 C。C 上有 svn 服务,并且最好是能够拉取和提交代码,通过正向代理的方式转发请求。端口是 4333。

网上找了很多内网穿透教程,都是针对 B 到 A 的,现在主要是需要访问 C,请教一下


目前想到的笨办法:A 使用 Microsoft Remote 连接到 B ,复制文件到 B,在 B 上进行拉取和提交

回复列表(43|隐藏机器人聊天)
  • @Ta / 2022-03-31 / /
    @水木易安,用frp映射端口就行了,首先搞台公网服务器配置好,在办公室电脑运行frpc客服端
    [svn]
    type = tcp
    local_ip = 10.2.15.3
    local_port = 4333    
    remote_port = 8888
    
    

    local_ip = 10.2.15.3这个是svn服务器的ip
    local_port = 4333 这个svn的端口    
    remote_port = 8888这个是映射到公网服务器的端口
  • @Ta / 2022-03-31 / /

    因为B和C是互通的,所以在做内网穿透的时候把服务搭建在B或者C中是一样的。例如如果目前在B上搭建的内网穿透服务:127.0.0.1:3389的服务暴露出去,只需要改为10.2.15.3:4333就行
    红米K30 Pro(变焦版)

  • @Ta / 2022-04-01 / /

    @Curtion,Windows 上有什么内网穿透的方法推荐吗
    小米MIX2s(白)

  • @Ta / 2022-04-01 / /

    @,是这个frp吗: https://github.com/fatedier/frp
    小米MIX2s(白)

  • @Ta / 2022-04-01 / /

    ssh 反向代理?

    电脑B上运行:

    ssh -CfNg -R 43330:10.2.15.3:4333 电脑A的用户名@电脑A公网IP
    

    然后就可以在电脑A上访问127.0.0.1:43330来访问服务器C4333端口的SVN服务了?

  • @Ta / 2022-04-01 / /

    n2n
    小米8(白)

  • @Ta / 2022-04-01 / /
    @水木易安,对的,具体使用自己百度吧,反正很简单
  • @Ta / 2022-04-01 / /
    最好使用stcp
  • @Ta / 2022-04-01 / /

    @水木易安,如果有服务器,可以使用frp,如果没有的话就用ZeroTier,但是我自己用ZeroTier很不稳定,最终我买了一个硬件:https://item.jd.com/56254535513.html
    红米K30 Pro(变焦版)

  • hik
    @Ta / 2022-04-01 / /
    是的,蒲公英便宜 https://cway.top
  • @Ta / 2022-04-01 / /

    @水木易安

    SSH隧道端口映射

    1. 在私人电脑上开DDNS(可以用花生壳的免费域名)和SSH服务器。

    2. 在办公电脑上运行以下命令:

      while true; do ssh -v -C -N -R 3690:10.2.15.3:3690 -p SSH端口 用户名@DDNS域名; sleep 1; date; done
      

      使用证书登录,避免输入密码。

      其中,-R 远程端口:本地主机:主机端口用于把本地网络中的端口映射到SSH服务器。

      -L 本地端口:远程主机:远程端口相反,用于把SSH服务器所在网络中的端口映射到本地。

      -D 端口则可以创建一个socks5代理。

    3. 在私人电脑上访问127.0.0.1:3690

  • @Ta / 2022-04-01 / /

    @老虎会游泳,忘了说了,办公电脑B是 Windows 的
    搞了个 git bash 转了一下
    小米MIX2s(白)

  • @Ta / 2022-04-01 / /

    @水木易安,哦对了,安装 git for windows 就可以得到 git bash 和 ssh 命令。

  • @Ta / 2022-04-01 / /
    首先你要把猫更换为桥接模式,现在很多猫都是安装人员远程操控的 我最近在也搞这个 前几天终于搞定了 网上的教程不一定适用于当地的,我是电信宽带,申请了公网ip,打安装的人员帮我猫设置桥接模式,docker安装了阿里云ddns的一个库,绑定域名设置阴性url 隐藏掉实际访问端口 可以不用电信的80端口
  • @Ta / 2022-04-01 / /
    可以试试访问速度 mb.jzxx.vip
  • @Ta / 2022-04-01 / /

    @水木易安

    SSH隧道socks5代理

    该方法是12楼方法的推广。

    推荐使用WSL:https://aka.ms/wsl
    或者cygwin:http://www.cygwin.com/

    1. 在办公电脑上开启SSH服务器,并允许私人电脑证书登录。

    2. 在私人电脑上开启SSH服务器,并允许办公电脑证书登录。

    3. 在办公电脑执行以下命令,把本地SSH端口映射到私人电脑上:

    while true; do ssh -v -C -N -R 2222:127.0.0.1:22 -p SSH端口 私人电脑用户名@私人电脑DDNS域名; sleep 1; date; done
    
    1. 在私人电脑执行以下命令,连接办公电脑SSH,并创建一个socks5代理:
    while true; do ssh -v -C -N -D 1080 -p 2222 办公电脑用户名@127.0.0.1; sleep 1; date; done
    
    1. 现在你就有了一个socks5代理服务器:127.0.0.1:1080,配置该代理后就可以通过办公电脑的网络上网。

    2. 可以结合proxifier等强制代理工具来使用。

  • @Ta / 2022-04-01 / /

    老虎的方法要求私有电脑网络有公网ip,实际上大部分都是大局域网,不能使用DDNS,所以要先确定一下是公网ip才能用
    红米K30 Pro(变焦版)

  • @Ta / 2022-04-01 / /

    嗯,如果两边都是内网,那就只能用内网穿透工具了。

添加新回复
回复需要登录