1
German - Deutsch / Re: HAproxy startet nicht nach Interfacewechsel
« on: March 10, 2018, 12:18:31 am »
Also HAproxy ist eigentlich egal, wie die Interfaces heißen etc. Es kommt HAproxy drauf an, auf welcher Adresse der Socket auf Verbindungen hört.
Der Public Service (bzw. die mehreren), die vorher z. B. auf *:80 und *:443 gehört haben, funktionieren weiterhin nun eben mit dem anderen Interface.
Angenommen dein WAN (em0) hatte die IP 172.16.0.1 und dein Public Service im HAproxy hörte bei der "Listen Address" auf 172.16.0.1:80, und dein neuer WAN (re0) hat jetzt auch 172.16.0.1 statt dem alten em0, was jetzt z. B. 192.168.0.1 hat, dann passt der HAproxy Public Service automatisch(!) nun zum neuen WAN (re0) ohne dass was getan werden musste.
Kurz: Hat sich die WAN-Adresse nicht geändert, hat sich dein HAproxy auch nicht geändert und geht weiterhin.
Jetzt ist das natürlich nicht dein Problem, denn du hast ja nen DHCP auf WAN und bekommst irgendeine Adresse, weißt aber nicht welche. In so einem Fall ist es besser, wenn du bei HAproxy als Listen Address bei den Public Services einfach den * nimmst statt der IP, dadurch hört er im Hintergrund auf allen Interfaces (wie 0.0.0.0 bei anderen Linux Systemen). D. h. du kannst ihn dann von überall intern wie extern aufrufen, sofern die Firewall die Verbindung durchlässt.
Irgendwie hab ich das Gefühl, dass es an dieser Listening Address bei den Public Services bei dir liegen muss, evtl. ist da noch ne alte IP von nem früheren DHCP-Lease eingetragen. Der Punkt ist nämlich der: In der haproxy.conf Datei (unter /usr/local/etc/haproxy.conf) steht kein einziger(!) Interfacebezeichner drin. Was auch immer du im syslog gesehen hast, muss einen anderen Zusammenhang gehabt haben...
Also mein Tipp: Auf * hören (wobei eine Domain theoretisch auch geht, also z. B. www.example.org:80), per Firewall überall blockieren wo unerwünscht und extern auf dem WAN Interface per Firewall den Port eben zulassen.
Der Public Service (bzw. die mehreren), die vorher z. B. auf *:80 und *:443 gehört haben, funktionieren weiterhin nun eben mit dem anderen Interface.
Angenommen dein WAN (em0) hatte die IP 172.16.0.1 und dein Public Service im HAproxy hörte bei der "Listen Address" auf 172.16.0.1:80, und dein neuer WAN (re0) hat jetzt auch 172.16.0.1 statt dem alten em0, was jetzt z. B. 192.168.0.1 hat, dann passt der HAproxy Public Service automatisch(!) nun zum neuen WAN (re0) ohne dass was getan werden musste.
Kurz: Hat sich die WAN-Adresse nicht geändert, hat sich dein HAproxy auch nicht geändert und geht weiterhin.
Jetzt ist das natürlich nicht dein Problem, denn du hast ja nen DHCP auf WAN und bekommst irgendeine Adresse, weißt aber nicht welche. In so einem Fall ist es besser, wenn du bei HAproxy als Listen Address bei den Public Services einfach den * nimmst statt der IP, dadurch hört er im Hintergrund auf allen Interfaces (wie 0.0.0.0 bei anderen Linux Systemen). D. h. du kannst ihn dann von überall intern wie extern aufrufen, sofern die Firewall die Verbindung durchlässt.
Irgendwie hab ich das Gefühl, dass es an dieser Listening Address bei den Public Services bei dir liegen muss, evtl. ist da noch ne alte IP von nem früheren DHCP-Lease eingetragen. Der Punkt ist nämlich der: In der haproxy.conf Datei (unter /usr/local/etc/haproxy.conf) steht kein einziger(!) Interfacebezeichner drin. Was auch immer du im syslog gesehen hast, muss einen anderen Zusammenhang gehabt haben...
Also mein Tipp: Auf * hören (wobei eine Domain theoretisch auch geht, also z. B. www.example.org:80), per Firewall überall blockieren wo unerwünscht und extern auf dem WAN Interface per Firewall den Port eben zulassen.