It wasn't actually strictly at night, but just exactly 24h after the connection was established. But the problem was that even if you reconnected manually at a convenient time, every now and then you'd have a connection issue at a random time, and then it would keep happening at that exact time until you manually changed it again.
I'm not aware of an authoritative source for why this was the case, but most likely there must've been a technical reason like accounting, and then they just kept it around. Mind you, this only affected DSL, which at first was (apart from small regional exceptions) offered by the Telekom exclusively, and later on when resellers appeard, they had no influence on this behavior as it happened on a level where they had no access to. After a while you got consumer routers which let you choose an exact time where it would force a reconnect, so you'd at least be sure when it happened.
Ironically, when the Telekom introduced VoIP, they finally got rid of the dreaded daily disconnect, but some of the resellers kept it, like the one I'm on (cause it's cheap and otherwise rock solid). I just set it to 6 in the morning and scheduled all my backup scripts with this in mind.
While I'd have given an arm and a leg in the days of edonkey2000 for a static IP, nowadays I see the changing address as a privacy feature.