Ich habe einen HAProxy-Knoten Version 1.5.3 auf Ubuntu 14.04 eingerichtet. Der Ubuntu-Server hat 1 Netzwerkkarte. Die Netzwerkkarte hat eine IPv6-Adresse und eine IPv4-Adresse. Die IPv6-Adresse lauscht auf Port 80 auf eingehende Internetverbindungen. Der Webserver ist auf einer separaten Windows IIS-Maschine im selben VLAN mit einer IPv4-Adresse installiert. Keine Firewall. Vom Internet aus kann ich über Port 80 eine Verbindung zur IPV6-Adresse herstellen, also ist das gut. Die HAProxy-Statistiken zeigen, dass der Backend-Webserver in Ordnung ist. Aber ich kann die Website auf dem IPv4-Server immer noch nicht über HAPRoxy durchsuchen. Wenn ich meinen Webbrowser öffne, erhalte ich im IE eine Fehlermeldung: „HTTP 400 Bad Request“. Ich habe Ubuntu neu installiert, hat nicht geholfen. Ich reiße mir die Haare aus. Kann mir bitte jemand helfen?
Hier ist meine Konfiguration:
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
Antwort1
Auch wenn das ein super altes Thema ist. Aber vielleicht landen die Leute ja hier.
Im Moment verwende ich eine Instanz von ha-Proxy 1.8.*. Ich weiß, dass es sich um eine Instanz von 1.5.3 handelt. Aber wahrscheinlich werden die meisten Leute heute 1.8 oder höher verwenden.
Damit IPv6 funktioniert, binden Sie Ihr Frontend an:
bind :80 v4v6
bind :::80 v6only
Sie können auch Folgendes verwenden:
bind :::80 v4v6
Aber in diesem letzten Fall wird die "weitergeleitete" IP des Clients, der sich damit verbindet, ::ffff:123.123.123.123 statt 123.123.123.123 sein.