Subject: Re: [vserver] need to listen to many multicast addresses
From: Herbert Poetzl <herbert@13thfloor.at>
Date: Wed, 1 Aug 2012 13:21:46 +0200

On Wed, Aug 01, 2012 at 11:34:23AM +0200, Petar Hitij wrote:
> Hello,

> I need to listen to many multicast addresses in a vserver. 
> I can use max 16 ip numbers in /etc/vservers/vservername/interfaces/. 

> The host is running an older Debian kernel 2.6.18.

first you have to figure out _what_ Linux-VServer patch was
used in that kernel, because if it actually is a 2.6.18 with
unmodified patches it must be vs2.0, vs2.1 or vs2.2, which
all have a hardwired kernel limit of 16 IPs for the network
isolation context.

you can grep for NB_IPV4ROOT in the kernel source, this will
give you the limit if present.

> If possible without upgrade :).

you can always backport changes from vs2.3 or simply raise
the hardcoded limit to your requirements, but in any case
you need to rebuild the kernel.

HTH,
Herbert

> Regards
> Petar Hitij

> # vserver-info
> Versions:
>                    Kernel: 2.6.18-6-vserver-amd64
>                    VS-API: 0x00020002
>              util-vserver: 0.30.215; Jun 18 2010, 13:35:17
> 
> Features:
>                        CC: gcc, gcc (Debian 4.4.4-5) 4.4.4
>                       CXX: g++, g++ (Debian 4.4.4-5) 4.4.4
>                  CPPFLAGS: ''
>                    CFLAGS: '-Wall -g  -O2 -std=c99 -Wall -pedantic -W
> -funit-at-a-time'
>                  CXXFLAGS: '-g -O2 -ansi -Wall -pedantic -W
> -fmessage-length=0 -funit-at-a-time'
>                build/host: x86_64-pc-linux-gnu/x86_64-pc-linux-gnu
>              Use dietlibc: yes
>        Build C++ programs: yes
>        Build C99 programs: yes
>            Available APIs: v13,net,v21,v22,v23,netv2
>             ext2fs Source: e2fsprogs
>     syscall(2) invocation: alternative
>       vserver(2) syscall#: 236/glibc
>                crypto api: nss
>           python bindings: no
>    use library versioning: yes
> 
> Paths:
>                    prefix: /usr
>         sysconf-Directory: /etc
>             cfg-Directory: /etc/vservers
>          initrd-Directory: $(sysconfdir)/init.d
>        pkgstate-Directory: /var/run/vservers
>           vserver-Rootdir: /var/lib/vservers