Problema de HAProxy IPv6 a IPv4

Problema de HAProxy IPv6 a IPv4

Configuré un nodo HAProxy versión 1.5.3 en Ubuntu 14.04. El servidor Ubuntu tiene 1 NIC. La nic tiene una dirección IPv6 y una dirección IPv4. El IPv6 escucha en el puerto 80 las conexiones entrantes a Internet. El servidor web se instala en una máquina Windows IIS separada en la misma VLAN con una dirección IPv4. Sin cortafuegos. Desde Internet puedo conectarme al puerto 80 a la dirección IPV6, así que está bien. Las estadísticas de HAProxy muestran que el servidor web backend está bien. Pero aún no puedo navegar por el sitio web en el servidor IPv4 a través de HAPRoxy. Cuando abro mi navegador web aparece un error en IE: "Solicitud incorrecta HTTP 400". Reinstalé Ubuntu, no ayudó. Me estoy arrancando el pelo con esto. Alguien por favor ayuda.

Aquí está mi configuración:

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

Respuesta1

Aunque este es un tema súper antiguo. Pero tal vez la gente termine aquí.

En este momento estoy ejecutando una instancia de ha proxy 1.8.* Sé que se trata de una instancia 1.5.3. Pero probablemente la mayoría de la gente hoy en día utilizará 1.8 o superior.

Para que ipv6 funcione, vincule su interfaz a:

bind :80 v4v6
bind :::80 v6only

También puedes usar:

bind :::80 v4v6

Pero en este último caso la ip "reenviada" del cliente que se conecta será ::ffff:123.123.123.123 en lugar de 123.123.123.123

información relacionada