httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan Kaluža <jkal...@redhat.com>
Subject Re: [PATCH] Add "FreeListen" to support IP_FREEBIND
Date Tue, 29 Mar 2016 05:26:06 GMT
On 03/28/2016 05:52 PM, Stefan Fritsch wrote:
> On Monday 07 March 2016 12:41:25, Jan Kaluža wrote:
>> This is needed for httpd startup with systemd when one wants to use
>> particular IP address to bind. There is no way how to start httpd
>> after the IP address has been configured in systemd and according
>> to systemd developers, the applications should become more robust
>> to handle network changes like that. The full reasoning is
>> explained here [1].
>
> This is wrong. We really want to be able to check the configuration
> for correctness at startup. If you switch to using freebind by
> default, you loose that sanity check. And using freebind for all
> systemd users is basically the same as making it the default.

I do not plan to enable that feature by default. I think 99% of the 
users use Listen without the particular public IP address, so there is 
no need to use it for them.

> Doesn't network-online.target do what you need? If no, why not?

It does, but it's not what systemd authors describe as a best solution. 
Also, as Yann said, we might want to use that API even for different 
socket options in near future.

You are right that from user perspective, it probably doesn't matter if 
the user enables network-online.target or adds freebind option to httpd 
- he has to change the configuration of the system anyway. I was just 
thinking that it would be nice to have a support for that even in httpd.

> I am not against the freebind feature as such, it's useful for
> failover solutions/VRRP/etc. But I am strictly against advertising
> this as a workaround for broken systemd design.

We do not advertise it publicly as a workaround for systemd issues. I 
was using systemd in my email just to show the use-case I'm personally 
interested in. In the httpd documentation for this config option in my 
patch, there is no mention of systemd.

I also personally think that systemd should handle this situation 
differently, but systemd developers think the opposite for a long time. 
I was discussing that with them and it's very unlikely that they would 
change something related to this problem.

Regards,
Jan Kaluza

>
>>
>> The patch needs latest APR-trunk currently, but it could be
>> rewritten to set IP_FREEBIND directly instead of using APR API (We
>> use that way for REUSEADDR socket option).
>>
>> Do you think FreeListen is good name for this feature, or would you
>> name/implement it differently?
>>
>> [1] https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
>


Mime
View raw message