I2C in a Nutshell | Interrupt

You can’t really connect 127 devices. There are a number of reserved adresses, general call addresses and backward compatibility locations for CBUS. Not only that, but the bus load for such a number of devices would be too big. You would have to use bus extenders to overcome the capacitive load ( it can be done. Many telecom and server racks use i2c for rack management such as bay temperature voltage and adressing ). You can extend a single bus beyong that number by using adressable i2c multiplexers. They basically create ‘subnets’ on the bus.
I2C has many more modes like Fast mode and Fast mode plus that go beyond 4Mbit/s.
There are active terminators ( active pull-ups) that contain switchable current sources. Linear technologies makes those.
A stuck bus can be cleared by giving clockpulses until SDA goes high , then pulling SDA low , raising SCL followed by raising SDA ( effectively clocking until the data line goes high and then forcing a STOP operation. The bus arbitration mechanism of the I2C standard guarantees this behavior. Even in a multimaster system this procedure is valid.

Shameless plug: I wrote this a while ago https://www.elektor.com/mastering-the-i2c-bus-e-book ,
which is based on the original work i did back in the late mid 90’s by writing The I2C FAQ on sci.electronics.faq