There are 128 I2C addresses, some are reserved.
Any device can be a master or slave. Same 128 address limit.
Distance, depends on how strong the pullups are, and how much capacitance on the total bus.
With 100 devices, that would be a lot of capacitance, I'd imagine you'd want 4.7K or maybe a 3.3K pullup to 5V, or 2.7K pullup to 3.3V, and a few feet max of distance.
If you can observe the lines with a scope, you see how degraded your signal might be.
You may have to use 100K as a max clock rate, or slower even.