V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Lpl
V2EX  ›  问与答

无公网 IP,如何通过外网访问内网?

  •  
  •   Lpl · Mar 6, 2017 · 4508 views
    This topic created in 3340 days ago, the information mentioned may be changed or developed.

    描述:现有内网 ServerA ,没有公网 IP 。有一客户端 ClientA ,在外网中。

    目的:ClientA 能够通过 ssh 链接 ServerA 里边的任意一台机器。

    问题:如何使得 ClientA 能够访问 ServerA ?

    设想的方案:

    昨天借用搜索引擎查了下,有如下解决方案:

    1. 在公网租一台服务器作为 VPN ;
    2. 让 ServerA 的路由器连接 VPN ;
    3. 让 ClientA 连接 VPN
    4. 此时, ServerA 和 ClientA 就算是打通了,然后配置路由表

    不知道上边的方案是否可行..如果可行的话,有没有稍微具体一点的细节?

    我对计算机网络的知识欠缺的有点多,如果有能指教的,不胜感激

    23 replies    2017-03-08 10:22:14 +08:00
    jacy
        1
    jacy  
       Mar 6, 2017
    用一台 vps , ssh 反向隧道
    DuckJK
        2
    DuckJK  
       Mar 6, 2017
    serverA : ssh -R 8000:serverA:80 sshserver -CNfg

    然后 clientA 访问 sshserver:8000
    Lpl
        3
    Lpl  
    OP
       Mar 6, 2017
    @jacy ClientA 有很多个,并且一般情况下是在局域网中。我想着是, Client 通过连接 VPN ,然后打通内网 ServerA 。我查了下,貌似反向隧道不能实现这种情况吧?
    okboom
        4
    okboom  
       Mar 6, 2017
    ngork
    okboom
        5
    okboom  
       Mar 6, 2017
    额,是 ngrok
    xiaoz
        6
    xiaoz  
       Mar 6, 2017
    ngrok 是比较好的,若不想折腾可以用花生壳内网版。
    Lpl
        7
    Lpl  
    OP
       Mar 6, 2017
    @DuckJK 没公网的情况下是没有 80 端口的吧..另外,想请问一下,我在 ServerA 的路由表配置下一跳的地址是 VPN Server ,然后 ClientA 链接 VPN Server ,那么 ClientA 的 ip 地址是不是就是 VPN 的局域网地址了?
    Lpl
        8
    Lpl  
    OP
       Mar 6, 2017
    @tookbra
    @xiaoz 花生壳估计是不行..我先了解下 ngrok 看看
    changwei
        9
    changwei  
       Mar 6, 2017 via Android
    @Lpl 为什么花生壳不行?花生壳内网版亲测有用,只是流量有限制。
    chztv
        10
    chztv  
       Mar 6, 2017
    ngrok 方案不错,花生壳内网版有流量及速度限制,这点钱自己租个 VPS ,日本 2.5 刀或者 5 刀的,速度基本上可以接受了。
    当然阿里云是速度最好的方案。
    benjaminliangcom
        11
    benjaminliangcom  
       Mar 6, 2017 via Android
    ngrok 感觉比花生壳好用
    truecho
        12
    truecho  
       Mar 6, 2017 via iPhone
    ngrok
    acrisliu
        13
    acrisliu  
       Mar 6, 2017
    ShylockGou
        14
    ShylockGou  
       Mar 6, 2017
    1.ssh -L
    2.n2n
    anubu
        15
    anubu  
       Mar 6, 2017   ❤️ 2
    最近也在找此类工具,收集了几个关键词楼主可以参考, ssh 、 n2n 、 frp 、 ngrok
    基本上应该都需要一个公网节点来交换信息
    比较关注是否夸平台、是否方便部署、是否支持 udp 打洞(即是否所有流量都要经过中心节点,当然这个更受网络环境影响)
    似乎没有此类工具的详细讨论,自己玩的话,一个一个试试看了
    yuhaaitao
        16
    yuhaaitao  
       Mar 6, 2017 via Android
    @anubu frp 好用不?啥时候做个评测?
    Lpl
        17
    Lpl  
    OP
       Mar 6, 2017
    @acrisliu
    @anubu
    @truecho
    @chztv 我先简单了解下 ngrok 和 frp ,看看怎么用
    JiaFeiX
        18
    JiaFeiX  
       Mar 6, 2017
    natapp 搜索这个
    hanqi7012
        19
    hanqi7012  
       Mar 6, 2017 via Android
    昨天看了 frp 感觉挺强力的唉
    ngork 新版不是不开源了么?
    geeklian
        20
    geeklian  
       Mar 6, 2017 via Android
    买个 vps ,部署 openvpn
    vps 做 vpn server
    server 和 vps 之间做 openvpn site to site...
    client 和 vps 之间就是普通的 vpn 连接。
    client 和 server 各自所在内网的子网不一样,就 ok 啦。
    client 可以访问 server 所在内网任何机器。
    jininij
        21
    jininij  
       Mar 6, 2017 via Android
    如果是家庭路由器有公网 IP ,推荐关键词:
    内外穿透, upnp , udp/tcp 打洞

    如果是运营商给你的就是内网 IP ,推荐关键词:
    site:v2ex.com 公网 IP
    xmoiduts
        22
    xmoiduts  
       Mar 6, 2017 via Android
    ssh -NfR 好上手 可以套 ss 使用,但公网服务器必须承载全部流量且可能被认证。
    flynaj
        23
    flynaj  
       Mar 8, 2017 via Android
    用 softether ,两边装桥架一下就行
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4470 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 167ms · UTC 10:11 · PVG 18:11 · LAX 03:11 · JFK 06:11
    ♥ Do have faith in what you're doing.