Closed w1r0x closed 9 years ago
You can change it, but then you need to change the kernel as well.
I've compiled linux kernel with this changes in "include/uapi/linux/mroute.h":
As I know there is no other places when I need to change that constant. So I change pimd sources MAXVIFS constant too in "include/linux/netinet/mroute.h" But its not working. I have these errors:
warning - Failed adding MFC entry src 10.215.1.3 grp 225.26.189.128:(error 22): Invalid argument
and
warning - Failed reading kernel count (SIOCGETSGCNT) for (S,G) on (10.215.1.3, 225.26.189.128):(error 99): Cannot assign requested address Deleting MFC entry for source 10.215.1.3 and group 225.26.189.128 warning - Failed removing MFC entry src 10.215.1.3, grp 225.26.189.128:(error 22): Invalid argument
You can see more detailed log at http://pastebin.com/4xWkeDEt
I have no idea why it happens, I tried to use pimd version without changes with patched kernel, but got the same errors. It only works with default kernel. Can you please help to understand why it happens?
I've never tried setting such a high value before. I guess the maximum it could be set to, with the data types used, is 254, 255 seems to be used by the kernel as 'inactive'.
Maybe you could use multiple multicast routing tables to get to 1024 interfaces? 32 tables with 32 in each ... support for multiple multicast routing tables is pending merge to master as the pim-ssm branch.
Support for multiple routing tables have now been merged to master for the upcoming pimd v2.3.0 release. Still pending testing on FreeBSD before release. (Linux, NetBSD and OpenBSD working already, so soon now.)
I'm closing this issue now.
The new command line option --table-id=ID
to pimd
as well as the new ./configure --with-max-vifs=MAXVIFS
is as far as we in the pimd project can go to help solve this problem.
define MAXVIFS 32
Why it is only 32? I have about 500 vpn vifs, where I want to use igmp.
Can I increase that?