[pve-devel] [PATCH v3 common 1/3] daemon: listen also on ipv6

Fabian Ebner f.ebner at proxmox.com
Wed Mar 24 12:00:26 CET 2021


Am 24.03.21 um 11:38 schrieb Oguz Bektas:
> On Wed, Mar 24, 2021 at 09:37:03AM +0100, Fabian Ebner wrote:
>> Note that for pmgproxy this is still called this with (8006, undef,
>> $family). Did you ensure that this is backwards-compatible? Otherwise this
>> needs versioned breaks and the call for pmgproxy needs to be adapted too.
> 
> it seems to be backwards compatible
> 
> i did the following now to test:
> 
> 1. update pmg to latest
> 2. install .deb of libpve-common-perl with my change
> 3. systemctl restart pmgproxy
> 
> and it worked still as expected (with no behavior change).
> 

Great, just wanted to make sure.

As a follow-up (or in case there's another version), please remove the 
now unused $family parameter, and it probably also makes sense to adapt 
pmgproxy to use the new LISTEN_IP if defined in its config.

> 
> 
>>
>> Am 22.03.21 um 15:00 schrieb Oguz Bektas:
>>> see [0]
>>> when we set 'Domain' to PF_INET6 by default, it will prefer IPv6. since
>>> we don't set 'V6Only' it will also listen on IPv4 interfaces.
>>>
>>> 'Family' parameter isn't needed anymore.
>>>
>>> this change depends on the changes in pve-manager and pve-http-server to
>>> work correctly.
>>>
>>> [0]:
>>> https://perldoc.perl.org/IO::Socket::IP#REPLACING-IO::Socket-DEFAULT-BEHAVIOUR
>>>
>>> Signed-off-by: Oguz Bektas <o.bektas at proxmox.com>
>>> ---
>>>    src/PVE/Daemon.pm | 4 ++--
>>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/src/PVE/Daemon.pm b/src/PVE/Daemon.pm
>>> index 64f8126..76601d5 100644
>>> --- a/src/PVE/Daemon.pm
>>> +++ b/src/PVE/Daemon.pm
>>> @@ -820,10 +820,10 @@ sub create_reusable_socket {
>>>        } else {
>>>    	$socket = IO::Socket::IP->new(
>>> -	    LocalAddr => $host,
>>> +	    Domain => PF_INET6,
>>> +	    LocalHost => $host,
>>>    	    LocalPort => $port,
>>>    	    Listen => SOMAXCONN,
>>> -	    Family => $family,
>>>    	    Proto  => 'tcp',
>>>    	    GetAddrInfoFlags => 0,
>>>    	    ReuseAddr => 1) ||
>>>





More information about the pve-devel mailing list