制作另一个服务器网络跃点

Making another server network hop

基本上,我正在尝试将我的服务器配置为 "filter point"。

如果我对我的服务器执行 traceroute,我会得到:

我想把我自己的服务器放在我的后端之前,是否可以不联系数据中心或接触 BGP 或类似的东西?所以它会是这样的:

我基本上想在后端之前通过此服务器路由我的所有流量。

如果您不(或不能)在网络级别操纵您的基础设施,您将无法更改跟踪路由的结果。

但是,您仍然可以使用 proxy software.

设置一个配置,使前往目的地的流量通过中间服务器。

一个流行的例子是nginx

例如,我在家里设置了一个代理服务器,它有助于为跨不同机器的多个服务提供一个单一的登录页面。从外部世界,所有流量都绑定到代理,代理流量根据 URL 模式匹配转发到适当的服务器。

基本上,设置如下:

+---------+
|         |
| Client  |
|         |
+---+-----+
    |
    v

+----------+
|          |
| Internet |
|          |
+---+------+
    |                                      +----------+
    v                                      |          |
                                  +----->  | Server A |
+-------+                         |        |          |
|       +-----> home.url/servicea +        +----------+
| Proxy |
|       +-----> home.url/serviceb +        +----------+
+-------+                         |        |          |
                                  +----->  | Server B |
                                           |          |
                                           +----------+

nginx 代理检查 URL 客户端提供并根据匹配规则转发到正确的服务器。

配置的简单近似为:

server {
    location /servera {
        proxy_pass http://servera:80;
    }

    location /serverb {
        proxy_pass http://serverb:80;
    }
}