OpenLTE is an open source implementation of the 3GPP LTE specifications.
In the current version, it includes an eNodeB with a built-in simple Evolved Packet Core, and some tools for scanning and recording LTE signals based on GNU Radio.
[1] [2] OpenLTE is used extensively in a variety of projects, from deployment of custom built 4G cellular networks, evaluating dynamic spectrum sharing for 5G NR and 4G LTE Coexistence to penetration testing of existing telecom networks.
[3] [4]