HAProxy IPv6 到 IPv4 问题

HAProxy IPv6 到 IPv4 问题

我在 Ubuntu 14.04 上设置了一个 HAProxy 节点版本 1.5.3。Ubuntu 服务器有 1 个网卡。网卡有一个 IPv6 地址和一个 IPv4 地址。IPv6 在端口 80 上监听传入的互联网连接。Web 服务器安装在同一个 VLAN 中具有 IPv4 地址的单独 Windows IIS 计算机上。没有防火墙。从互联网上,我可以通过端口 80 连接到 IPV6 地址,所以这很好。HAProxy 统计数据显示后端 Web 服务器正常,但我仍然无法通过 HAPRoxy 浏览 IPv4 服务器上的网站。当我打开 Web 浏览器时,IE 中出现错误:“HTTP 400 错误请求”我重新安装了 Ubuntu,但没有帮助。我为此抓狂不已。请有人帮帮我。

这是我的配置:

global
        log /dev/log    local0
        log /dev/log    local1 notice
        chroot /var/lib/haproxy
        stats socket /run/haproxy/admin.sock mode 660 level admin
        stats timeout 30s
        user haproxy
        group haproxy
        daemon

        # Default SSL material locations
        ca-base /etc/ssl/certs
        crt-base /etc/ssl/private

        # Default ciphers to use on SSL-enabled listening sockets.
        # For more information, see ciphers(1SSL).
       #  ssl-default-bind-ciphers kEECDH+aRSA+AES:kRSA+AES:+AES256:RC4-SHA:!kEDH:!LOW:!EXP:!MD5:!aNULL:!eNULL

defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        timeout connect 5000
        timeout client  50000
        timeout server  50000
        errorfile 400 /etc/haproxy/errors/400.http
        errorfile 403 /etc/haproxy/errors/403.http
        errorfile 408 /etc/haproxy/errors/408.http
        errorfile 500 /etc/haproxy/errors/500.http
        errorfile 502 /etc/haproxy/errors/502.http
        errorfile 503 /etc/haproxy/errors/503.http
        errorfile 504 /etc/haproxy/errors/504.http

frontend localnodes
    bind 0::0:80
    mode http
    default_backend nodes

backend nodes
    mode http
    balance roundrobin
    # option forwardfor
    # http-request set-header X-Forwarded-Port %[dst_port]
    # http-request add-header X-Forwarded-Proto https if { ssl_fc }
    # option httpchk HEAD / HTTP/1.1\r\nHost:localhost
    server web01 192.168.40.100:80 check

listen stats *:1936
    stats enable
    stats uri /
    stats hide-version
    stats auth someuser:password

答案1

尽管这是一个非常古老的话题。但也许人们最终会来到这里。

现在我正在运行 ha proxy 1.8 的一个实例。*我知道这是一个 1.5.3 实例。但可能现在大多数人都会使用 1.8 或更高版本。

为了使 ipv6 工作,请将您的前端绑定到:

bind :80 v4v6
bind :::80 v6only

您还可以使用:

bind :::80 v4v6

但在最后一种情况下,连接到它的客户端的“转发” IP 将是 ::ffff:123.123.123.123 而不是 123.123.123.123

相关内容