Ive implemented this before. I use sprint for a phone provider and found the IP address ranges that are used in my area. I then added common locations (work/family/etc.) and rarely ran into an issue.
This really just reduces noise in firewall logs (when looking at connections that actually made it through) and doesn’t increase security. A strong password and 2FA are still needed.