On Tue, Apr 18, 2023 at 07:51:08PM +0000, Samuel Jayden wrote: > Hello, > I have one veb interface in OpenBSD 7.2 and 5 ethernet ports are paired > with this veb. As I understand from the ifconfig output, 4096 mac address > cache values can be kept in this veb interface . > > ifconfig veb10 > veb10: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> > index 12 llprio 3 > groups: veb > em3 flags=3<LEARNING,DISCOVER> > port 4 ifpriority 0 ifcost 0 > em0 flags=3<LEARNING,DISCOVER> > port 1 ifpriority 0 ifcost 0 > em1 flags=3<LEARNING,DISCOVER> > port 2 ifpriority 0 ifcost 0 > ix3 flags=3<LEARNING,DISCOVER> > port 8 ifpriority 0 ifcost 0 > ix2 flags=3<LEARNING,DISCOVER> > port 7 ifpriority 0 ifcost 0 > Addresses (max cache: 4096, timeout: 240): > 2c:f0:5d:73:f8:c4 em1 0 flags=0<> > .... > > When I tried to extend this limit value with the command "ifconfig veb10 > maxaddr 4097", I got the following error message: > "ifconfig: veb10: Invalid argument" > The maximum value I can give without this error message is 4096. Isn't this > value a bit narrow?
maybe. it seemed pretty high when i made it up. > I have tested that the mac addresses of the connected devices are not > recorded in the veb interface after exceeding the limit. > > I want to switch from Cisco device to OpenBSD in a place where there are > more than 8 thousand MAC addresses, but I need to exceed this max cache > size value. > How can I increase this max cache size value 8192 or higher value? you change 4096 to a bigger number in the code. Index: if_etherbridge.c =================================================================== RCS file: /cvs/src/sys/net/if_etherbridge.c,v retrieving revision 1.7 diff -u -p -r1.7 if_etherbridge.c --- if_etherbridge.c 5 Jul 2021 04:17:41 -0000 1.7 +++ if_etherbridge.c 19 Apr 2023 02:25:54 -0000 @@ -675,7 +676,7 @@ int etherbridge_set_max(struct etherbridge *eb, struct ifbrparam *bparam) { if (bparam->ifbrp_csize < 1 || - bparam->ifbrp_csize > 4096) /* XXX */ + bparam->ifbrp_csize > 16384) /* XXX */ return (EINVAL); /* commit */