AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-352324

JonDoe297's questions

Martin Hope
JonDoe297
Asked: 2017-01-07 01:46:11 +0800 CST

如何设置反向代理以将 URL 动态映射到 TCP 端口?

  • 2

这是一个用例:我有一个服务器,它将有 Docker 容器,这些容器将根据需要创建和销毁。这个想法是能够配置反向代理并将 URL 与 Docker 容器的端口相关联。

Browser              <===>  Reverse Proxy  <===>  Docker server
http://proxy.cxx/id1                              http://server:9000
http://proxy.cxx/id2                              http://server:9015
http://proxy.cxx/id3                              http://server:9730

当然,这些关联不是静态的,而是会发生变化的。我将在 memcache 数据库中更新它们。

简而言之,是否可以动态配置反向代理和添加/删除规则?我对 HAProxy 有一些经验,但我不知道这是否可能。如果您提出不同的解决方案,我将不胜感激。

reverse-proxy haproxy
  • 1 个回答
  • 2974 Views
Martin Hope
JonDoe297
Asked: 2016-12-23 20:50:18 +0800 CST

HAProxy:如果我绑定到端口 32768-65535,计算机将无法访问其他服务器

  • -2

我需要像这样配置一个 HAProxy 前端:

frontend web-server
    option forwardfor       except 127.0.0.0/8

    bind :8080
    bind :32768-65535

    default_backend service

但是,该配置不允许我连接到内部或外部的其他服务器。

$ wget www.google.com
--2016-12-22 23:21:13--  http://www.google.com/
Resolving www.google.com (www.google.com)... 172.217.6.196, 2607:f8b0:4006:804::2004
Connecting to www.google.com (www.google.com)|172.217.6.196|:80... failed: Cannot assign requested address.
Connecting to www.google.com (www.google.com)|2607:f8b0:4006:804::2004|:80... failed: Network is unreachable.

如果我注释该行bind :32768_65535并重新启动 HAProxy,我可以再次连接到其他服务器。

我想我正在将 HAProxy 绑定到启动连接所需的端口,这就是该配置导致此问题的原因。

如何配置 HAProxy 以侦听这些端口,而不会出现连接问题?

编辑:

  • HAProxy 1.6
  • Ubuntu 16.04(全新安装)
haproxy
  • 1 个回答
  • 1172 Views
Martin Hope
JonDoe297
Asked: 2016-12-16 15:20:42 +0800 CST

让 BIND DNS 服务器查询第二个

  • 1

我使用 VPN 隧道连接了两个专用网络。两个网络之间的通信运行良好。

好吧,网络A和分别为域和B拥有自己的BIND DNS 服务器。network-a.mycompany.comnetwork-b.mycompany.com

现在,我需要网络 A 上的 DNS 服务器能够查询网络 B 上的 DNS 服务器,反之亦然。这个想法是让网络上的用户A,例如,询问他们自己的 DNS 并能够解析来自两个域的名称,而无需更改其计算机上的 DNS 配置。

我正在阅读 BIND 手册,但是因为这对我来说是新的,所以我不知道我在寻找什么样的配置。

我怎样才能做到这一点?

domain-name-system internal-dns bind
  • 1 个回答
  • 569 Views
Martin Hope
JonDoe297
Asked: 2016-12-14 16:53:58 +0800 CST

使用 Linux 机器通过 VPN 隧道进行路由

  • 0

我有两台通过 VPN 隧道连接的 Linux 机器:

VPN Client <-------> VPN Server
10.74.1.10/24         10.74.1.1/24 

每个人都有 NIC 来访问自己的网络:

---------> VPN Client <-------------------> VPN Server <------
10.37.0.205/24   10.74.1.10/24      10.74.1.1/24    10.74.0.1/24

当然,我在每个网络上都有不同的 Linux 计算机(Linux A、Linux B 等):

Linux A  <----> VPN Client <-----> VPN Server <----> Linux B

从VPN Client,我可以ping到VPN Server和电脑一样Linux B。

虽然,从Linux A,我可以 ping 到两台VPN Client机器的接口(10.32.0.205和10.74.1.10),但事实证明我无法 ping 到VPN Server地址10.74.1.1或网络 B 上的任何计算机。

我试图在 上添加一条新路线Linux A,但我得到了这个:

$ sudo ip route add 10.74.1.1 via 10.74.1.10 dev eth0
RTNETLINK answers: Network is unreachable

$ sudo ip route add 10.74.1.1 via 10.37.0.205 dev eth0
RTNETLINK answers: Network is unreachable

我怎样才能使它起作用?也许配置一些东西VPN Client?

编辑:

上的路由表VPN Client是这样的:

default via 10.37.0.1 dev eth0 
10.37.0.0/24 dev eth0  proto kernel  scope link  src 10.37.0.205 
10.74.0.0/16 via 10.74.1.9 dev tun0 
10.74.1.0/24 via 10.74.1.9 dev tun0 
10.74.1.9 dev tun0  proto kernel  scope link  src 10.74.1.10 
128.0.0.0/1 via 10.74.1.9 dev tun0 

上的路由表Linux A:

default via 10.37.1.1 dev eth0 
10.37.1.0/24 dev eth0  proto kernel  scope link  src 10.37.1.217 

另外,我激活了IP转发VPN Client

$ sudo sysctl -w net.ipv4.conf.all.forwarding=1

编辑2:

过滤数据包VPN Client:

$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
linux routing vpn-client
  • 3 个回答
  • 4621 Views
Martin Hope
JonDoe297
Asked: 2016-08-05 12:09:15 +0800 CST

HAProxy:多个前端,相同的绑定

  • 12

配置绑定到 HAProxy 上同一端口的多个前端是否可能/正确?

frontend A
    bind :80
    bind :2000-5000
    acl rule_about_A
    use_backend server_A if rule_about_A

frontend B
    bind :80
    acl rule_about_B
    use_backend server_B if rule_about_B

在这个用例中,前端 A 需要绑定到 80 和 2000-5000 的范围。对于前端 B,我不想将它绑定到所有这些端口,只绑定到 80。

我认为如果我以这种方式配置它看起来会很干净,而是使用单个前端并使用 ACL,但似乎该配置使 HAProxy 工作错误 - 有时应用正确的规则,有时则不是。

在将这些前端作为一个单独加入之前,是否可以使用绑定到相同端口的多个前端?

编辑:顺便说一句,我使用的是 HAProxy 1.5

haproxy
  • 1 个回答
  • 19524 Views
Martin Hope
JonDoe297
Asked: 2016-07-01 15:19:10 +0800 CST

在 EC2 实例上实现 Nginx 作为反向代理,用于 Eclipse Che 场

  • 0

寻找扩展Eclipse Che(一个云 IDE),我正在实现一个Che Farm。简而言之,一组 Eclipse Che 实例位于反向代理后面。

在此处输入图像描述

好的,我正在使用 Amazon Linux AMI 的 EC2 实例上使用 Nginx 实现反向代理,但我发现了这个问题:Eclipse Che 需要为客户端打开端口 8080,并为其工作区打开范围 32768-65535(更多信息在这里) .

所以,我修改了nginx.conf这样的文件:

server {
    listen 32768;
    listen 32769;
    listen 32770;
    listen 32771;
    [...]
    listen 65534;
    listen 65535;

    server_name  http://eclipse.company.cxx;

    location / {
        proxy_pass  http://eclipse.company.local:$server_port;
    }
}

重新启动 nginx 后,我收到以下消息:

$ sudo service nginx restart
nginx: [emerg] socket() 0.0.0.0:33786 failed (24: Too many open files)
nginx: configuration file /etc/nginx/nginx.conf test failed

请教两个问题:

  1. 这是在这种情况下实现反向代理的有效方法吗?
  2. 如果这是有效的,我该如何解决错误“打开的文件太多”?
amazon-ec2 nginx reverse-proxy
  • 1 个回答
  • 499 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve