FreeWong

只有一个公网固定 IP,怎么向公网暴露两台服务器的服务

  •  
  •   FreeWong · May 21, 2021 · 5393 views
    This topic created in 1827 days ago, the information mentioned may be changed or developed.

    有一台运行在公司内部的服务器绑定了一个公网固定 IP,这台服务器向公网暴露出一些 TCP 以及 WWW 服务 但是企业只有这一个固定公网 IP,现在希望将企业内部的另一台计算机上的 TCP 以及 WWW 服务也暴露到公网上,请问下具体的做法

    目前能想到的是让直接接入公网的服务器通过操作系统的端口转发功能,将一些请求转发到另一台企业内部的计算机上 如当外部请求 http://公网 IP:9090 时,会将请求转发到内网 192.168.1.100:9090 上 这样的话,是不是需要这台直接接入公网的计算机有两块网卡?

    这方面没什么经验,感谢指点。

    26 replies    2021-05-29 18:27:43 +08:00
    xiaotianhu
        1
    xiaotianhu  
       May 21, 2021
    iptables 了解一下
    在路由上做更方便一点。
    bin456789
        2
    bin456789  
       May 21, 2021 via Android
    在暴露的那台电脑安装 nginx,http 反向代理第二台电脑的 www,用 stream 功能代理第二台电脑的 tcp 端口
    Puteulanus
        3
    Puteulanus  
       May 21, 2021
    啥系统的,Windows 的话有个叫 passport 的老软件还挺好用的

    Linux 的话,特别有 web 服务,如果想共用 80 端口,按域名转发的话,可以按 2L 说的用 Nginx,或者 SNIProxy
    yhxx
        4
    yhxx  
       May 21, 2021
    nginx proxy_pass 就行了吧
    FreeWong
        5
    FreeWong  
    OP
       May 21, 2021
    @xiaotianhu @bin456789 @Puteulanus @yhxx 感谢各位。。 是 Windows 系统,目前上面几位朋友提到的方法哪种方式实现比较容易些。。。
    Puteulanus
        6
    Puteulanus  
       May 21, 2021
    @FreeWong https://sourceforge.net/projects/pjs-passport/ 我们现在用的这个,支持 udp,图形界面操作,感觉还可以。虽然很久没更新了,Win10 也还能用,就是启动图形界面编辑的时候要自己记得右键管理员权限运行

    要朝内网转应该是得有两个网卡的,你运行这个的公网机器上得能访问到要转发到的内网机器
    cpstar
        7
    cpstar  
       May 21, 2021
    windows 系统的 netsh interface portporxy 试试
    https://blog.csdn.net/hx7013/article/details/79786407
    prondtoo
        8
    prondtoo  
       May 21, 2021
    socat, iptables
    yitingbai
        9
    yitingbai  
       May 21, 2021
    就是转发, 没别的办法, 但是实现转发的方法有很多, nginx 的反向代理目前用的比较多
    Tink
        10
    Tink  
    PRO
       May 21, 2021 via iPhone
    反代
    clf
        11
    clf  
       May 21, 2021
    反向代理相对来说方便,而且适合后面分别配置域名。
    bin456789
        12
    bin456789  
       May 21, 2021   ❤️ 1
    认真看了下
    ”公司内部的服务器绑定了一个公网固定 IP“
    如果是这样的话,大概要两块网卡了

    最简单的方法是
    添加一个路由器,路由器 wan 接外网,两电脑连接路由器 lan

    如果 www 对外不需要公共一个端口,路由器设置端口映射到各个电脑
    如果 www 对外要公用一个端口,路由器端口映射 www 到电脑 1 的端口,IIS 反向代理电脑 2
    rnav10
        13
    rnav10  
       May 21, 2021 via iPhone
    IIS 加上一个 application request routing 的扩展,配置反向代理
    kiracyan
        14
    kiracyan  
       May 21, 2021
    用户量不是特别大的话直接用 windows 版的 nginx 就行了
    herozzm
        15
    herozzm  
       May 21, 2021 via Android
    iptables 的 nat,或者 ssh 隧道也行
    cctv6
        16
    cctv6  
       May 21, 2021
    这种情况不应该弄个防火墙么?然后在防火墙上设置端口映射

    如果是公网 IP 的话,那么应该拉的是专线。如果这个专线和日常办公是同一个网络的话,肯定是会有防火墙或者路由器的,这样直接在防火墙或者路由器上设置端口映射就可以了。

    如果专线只是内部的一台服务器用,条件允许的话,建议把专线接入到办公网的防火墙上,再通过防火墙设置。(防火墙应该是支持多个 wan 口的)

    如果没有防火墙这种设备,专线是直接插在服务器上的,那我建议装个路由器,用路由器的端口映射功能设置。

    最后专线要是只能接在服务器上的话,那最好是做好防护,配好防火墙。然后按照楼上说的用 iptables 的 nat 或者 nginx 代理。
    ryd994
        17
    ryd994  
       May 21, 2021 via Android
    @kiracyan 千万别用 Windows Nginx
    用 iis 再不济用 Apache
    Windows Nginx 官方严肃反对任何生产环境使用。
    Windows 版基于 select 。和高性能一点不沾边。稳定性也很难说。
    no1xsyzy
        18
    no1xsyzy  
       May 22, 2021
    不是双网卡也有一些诡异的办法,但需要公网和内网在同一个 LAN 下,在同一个 link 上配置多个 addr

    (或者网卡和上联交换机支持一根网线上有多个 VLAN,那成本和可维护性还不如双网卡呢)
    keepeye
        19
    keepeye  
       May 22, 2021
    怎么绑定公网 ip 的,不在内网吗?那或许需要再加一块网卡让服务器加入内网,然后做个反向代理就行了。或者买个路由器,把 ip 绑定到路由器上,通过路由器做端口转发
    01802
        20
    01802  
       May 22, 2021 via Android
    两台都挂路由后面分端口就好
    datou
        21
    datou  
       May 24, 2021
    网关上转发端口就行
    10935336
        22
    10935336  
       May 25, 2021 via Android
    我现在用的是一台端口转发,一台 dmz
    当然两台都用端口转发也行
    cdh1075
        23
    cdh1075  
       May 27, 2021
    弄个路由器,wan 口接公网,lan 口们是子网,把两个服务器接 lan 口上,然后在路由器上弄四条端口转发就行了,单纯跑 nat 和端口转发负载很轻,200 块钱的路由器就绰绰有余(前提是你别买到坑爹货)
    cdh1075
        24
    cdh1075  
       May 27, 2021
    另外,有且路由器同时开启 dmz 和端口转发后行为怪异,所以你如果是新手的话,不如老老实实一条一条的写端口转发
    txydhr
        25
    txydhr  
       May 28, 2021 via iPhone
    家宽怎么搞就怎么搞
    xdzhang
        26
    xdzhang  
       May 29, 2021
    www 服务都要用 80 口 那就 nginx 反代
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 20:38 · PVG 04:38 · LAX 13:38 · JFK 16:38
    ♥ Do have faith in what you're doing.